Free read-only tools for agents: agent-readiness audit, TLS/DNS/header checks, MCP search, utils.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Audit how ready a public website is for AI agents: checks agent card (A2A), llms.txt, MCP discovery, OpenAPI, robots.txt, agents.json, skills, x402 and sitemap. Returns a 0-100 score, per-check notes and an evidence hash. Read-only, free, not a security certification.
Domain or https URL, e.g. example.com
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http bursia-tools https://bursia-tools-production.up.railway.app/mcp
Audit how ready a public website is for AI agents: checks agent card (A2A), llms.txt, MCP discovery, OpenAPI, robots.txt, agents.json, skills, x402 and sitemap. Returns a 0-100 score, per-check notes and an evidence hash. Read-only, free, not a security certification.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL, e.g. example.com |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL, e.g. example.com"
}
},
"additionalProperties": false
}Encode text to base64 or decode base64 to text. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| mode | string | |
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"mode": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": false
}Convert text to camelCase, snake_case, kebab-case, PascalCase, UPPER or lower. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| to* | string | |
| text* | string |
{
"type": "object",
"required": [
"text",
"to"
],
"properties": {
"to": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: Ficha de agente A2A (/.well-known/agent-card.json or /.well-known/agent.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: Directorio de agentes (agents.json) (/.well-known/agents.json or /.well-known/agent-directory.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: llms.txt (/llms.txt). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: Descubrimiento MCP (/.well-known/mcp.json or /.well-known/mcp/server-card.json or /mcp.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: OpenAPI (/openapi.json or /.well-known/openapi.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: robots.txt para agentes (/robots.txt). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: sitemap.xml (/sitemap.xml). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: Habilidades (SKILL.md) (/.well-known/skills/index.json or /.well-known/agent-skills/index.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check one agent-readiness item on a public website: Pagos x402 (/.well-known/x402 or /.well-known/x402.json). Read-only, free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Network, broadcast, first/last host and size of an IPv4 CIDR block. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| cidr* | string |
{
"type": "object",
"required": [
"cidr"
],
"properties": {
"cidr": {
"type": "string"
}
},
"additionalProperties": false
}Convert a hex color to RGB and HSL, with relative luminance. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| hex* | string |
{
"type": "object",
"required": [
"hex"
],
"properties": {
"hex": {
"type": "string"
}
},
"additionalProperties": false
}WCAG contrast ratio between two hex colors, with AA/AAA pass flags. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| background* | string | |
| foreground* | string |
{
"type": "object",
"required": [
"foreground",
"background"
],
"properties": {
"background": {
"type": "string"
},
"foreground": {
"type": "string"
}
},
"additionalProperties": false
}Explain a 5-field cron expression in plain English and list the next 5 run times (UTC). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| expression* | string |
{
"type": "object",
"required": [
"expression"
],
"properties": {
"expression": {
"type": "string"
}
},
"additionalProperties": false
}Convert CSV (first row = headers) into JSON rows. Max 5,000 rows. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| csv* | string | |
| separator | string |
{
"type": "object",
"required": [
"csv"
],
"properties": {
"csv": {
"type": "string"
},
"separator": {
"type": "string"
}
},
"additionalProperties": false
}Difference between two dates in days, hours and minutes. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| to* | string | |
| from* | string |
{
"type": "object",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
}
},
"additionalProperties": false
}Look up public DNS records (A, AAAA, MX, TXT, NS, CAA) of a domain. Free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Check the syntax of an email address (no mailbox lookup, nothing is sent). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| email* | string |
{
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string"
}
},
"additionalProperties": false
}Hash a text with sha256, sha1, sha512 or md5 (hex). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| text* | string | |
| algorithm | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
},
"algorithm": {
"type": "string"
}
},
"additionalProperties": false
}Compute an HMAC (sha256 or sha512, hex) of a message with a key. Use test keys only; nothing is stored or logged. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| key* | string | |
| message* | string | |
| algorithm | string |
{
"type": "object",
"required": [
"message",
"key"
],
"properties": {
"key": {
"type": "string"
},
"message": {
"type": "string"
},
"algorithm": {
"type": "string"
}
},
"additionalProperties": false
}Escape or unescape HTML special characters. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| mode | string | |
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"mode": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": false
}Validate an IBAN checksum and report its country. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| iban* | string |
{
"type": "object",
"required": [
"iban"
],
"properties": {
"iban": {
"type": "string"
}
},
"additionalProperties": false
}Classify an IP address: version and whether it is public, private, loopback, link-local or reserved. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| ip* | string |
{
"type": "object",
"required": [
"ip"
],
"properties": {
"ip": {
"type": "string"
}
},
"additionalProperties": false
}Compare two JSON documents and list added, removed and changed paths (max 500). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| after* | string | |
| before* | string |
{
"type": "object",
"required": [
"before",
"after"
],
"properties": {
"after": {
"type": "string"
},
"before": {
"type": "string"
}
},
"additionalProperties": false
}Pretty-print or minify JSON. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| json* | string | |
| mode | string |
{
"type": "object",
"required": [
"json"
],
"properties": {
"json": {
"type": "string"
},
"mode": {
"type": "string"
}
},
"additionalProperties": false
}Read a value from JSON by a dot path like "a.b[0].c". Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| json* | string | |
| path* | string |
{
"type": "object",
"required": [
"json",
"path"
],
"properties": {
"json": {
"type": "string"
},
"path": {
"type": "string"
}
},
"additionalProperties": false
}Convert a JSON array of objects into CSV. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| json* | string |
{
"type": "object",
"required": [
"json"
],
"properties": {
"json": {
"type": "string"
}
},
"additionalProperties": false
}Check whether a text is valid JSON; returns the error position or the top-level type and size. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
}
},
"additionalProperties": false
}Decode a JWT header and payload WITHOUT verifying its signature. Do not paste live secrets. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| token* | string |
{
"type": "object",
"required": [
"token"
],
"properties": {
"token": {
"type": "string"
}
},
"additionalProperties": false
}Edit distance and similarity between two texts (max 2,000 chars each). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| a* | string | |
| b* | string |
{
"type": "object",
"required": [
"a",
"b"
],
"properties": {
"a": {
"type": "string"
},
"b": {
"type": "string"
}
},
"additionalProperties": false
}Validate a number with the Luhn checksum (cards, IMEI). Do not send real card numbers. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| number* | string |
{
"type": "object",
"required": [
"number"
],
"properties": {
"number": {
"type": "string"
}
},
"additionalProperties": false
}Search the official MCP Registry (registry.modelcontextprotocol.io) for servers matching a text. Returns names, descriptions and remote URLs. Free.
| Argument | Type | Description |
|---|---|---|
| query* | string | Search text |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search text"
}
},
"additionalProperties": false
}Generate a random password (8-128 chars) using a cryptographic generator. Nothing is stored. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| length | number |
{
"type": "object",
"required": [],
"properties": {
"length": {
"type": "number"
}
},
"additionalProperties": false
}Audit HTTP security headers of a public HTTPS page (HSTS, CSP, X-Content-Type-Options, frame protection, Referrer-Policy, Permissions-Policy). Read-only GET, no redirects followed. Free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Compare two semantic versions (returns -1, 0 or 1). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| a* | string | |
| b* | string |
{
"type": "object",
"required": [
"a",
"b"
],
"properties": {
"a": {
"type": "string"
},
"b": {
"type": "string"
}
},
"additionalProperties": false
}Turn a text into a URL-safe slug. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
}
},
"additionalProperties": false
}Count characters, words, lines and estimate tokens (~4 chars/token) of a text. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string"
}
},
"additionalProperties": false
}Convert between Unix seconds/milliseconds and ISO 8601 dates. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| value* | string |
{
"type": "object",
"required": [
"value"
],
"properties": {
"value": {
"type": "string"
}
},
"additionalProperties": false
}Show a date/time in another IANA time zone (e.g. America/Bogota). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| datetime* | string | |
| timeZone* | string |
{
"type": "object",
"required": [
"datetime",
"timeZone"
],
"properties": {
"datetime": {
"type": "string"
},
"timeZone": {
"type": "string"
}
},
"additionalProperties": false
}Read the TLS certificate of a public HTTPS host: issuer, subject, validity dates, days left, SANs and protocol. Connects to the verified public IP only. Free.
| Argument | Type | Description |
|---|---|---|
| url* | string | Domain or https URL |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Domain or https URL"
}
},
"additionalProperties": false
}Convert units of length, mass, volume, data size or temperature (c, f, k). Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| to* | string | |
| from* | string | |
| value* | number |
{
"type": "object",
"required": [
"value",
"from",
"to"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string"
},
"value": {
"type": "number"
}
},
"additionalProperties": false
}Percent-encode or decode a text for URLs. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| mode | string | |
| text* | string |
{
"type": "object",
"required": [
"text"
],
"properties": {
"mode": {
"type": "string"
},
"text": {
"type": "string"
}
},
"additionalProperties": false
}Split a URL into its parts and query parameters. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| url* | string |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string"
}
},
"additionalProperties": false
}Generate one or more random UUID v4 values. Pure computation, free.
| Argument | Type | Description |
|---|---|---|
| count | number |
{
"type": "object",
"required": [],
"properties": {
"count": {
"type": "number"
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Oct 30, 2026.
Takes a password, API key or token as an argument, so the secret passes through the model's context and chat logs.
Fix: Read credentials from the server's own configuration (environment, OAuth) instead of a tool argument.