{"data":{"name":"com.allthepossibles/toolbox","title":"Toolbox","description":"Small tools for agent builders: AI-writing tells, tools/list token cost, CLAUDE.md lint, and more.","version":"1.2.0","websiteUrl":"https://toolbox.allthepossibles.com","repositoryUrl":null,"remotes":[{"type":"streamable-http","url":"https://toolbox.allthepossibles.com/mcp","headers":[{"description":"Optional. Bearer tb_... for Pro; every tool works free with daily caps. Install steps per client: https://toolbox.allthepossibles.com/docs#install","isSecret":true,"name":"Authorization"}]}],"packages":[],"status":"active","isLatest":true,"publishedAt":"2026-10-29T23:39:03.609Z","updatedAt":"2026-10-29T23:39:03.609Z","source":"official-registry","verification":"official","confidence":100,"stars":null,"sources":[{"source":"official-registry","sourceId":"com.allthepossibles/toolbox","verification":"official","confidence":100,"stars":null,"updatedAt":"2026-10-29T23:39:03.609Z","title":"Toolbox","description":"Small tools for agent builders: AI-writing tells, tools/list token cost, CLAUDE.md lint, and more.","websiteUrl":"https://toolbox.allthepossibles.com","repositoryUrl":null}],"toolIndex":{"tools":[{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"check_ai_crawlers","title":null,"description":"Read a site's robots.txt and report which AI crawlers (GPTBot, ClaudeBot, Google-Extended, PerplexityBot, CCBot, Bytespider and more) are allowed, blocked or partially blocked; check for llms.txt and draft one from the site's metadata and sitemap.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Any URL on the site"}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"195932d48015882dff95639f3643d0f856f8f81d2901618d420aa4b56245c418","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"check_headers","title":null,"description":"Fetch a URL once and grade its response headers: HSTS, Content-Security-Policy, X-Content-Type-Options, frame control, Referrer-Policy, Permissions-Policy, Cache-Control, cookie Secure/HttpOnly/SameSite flags, and server version leaks. Returns a grade, a score and the exact header to add for each gap.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"The page to fetch"}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"8633abc23a2ab50e0c2f5b8f19eb6f70705a47ca2cd9df1b9cf0cbe208c6de08","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"check_page_meta","title":null,"description":"Fetch a URL and report what crawlers and link unfurlers see: title and meta description with lengths, canonical, lang, viewport, robots meta, h1s, Open Graph and Twitter card tags, favicon, JSON-LD types, the resulting preview card, and findings for anything missing or too long.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"The page to fetch"}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"45e20f30be056394966a272b2cfb7e5a039337e8872740fe465fea45c882d918","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"check_sitemap","title":null,"description":"Check a site's sitemaps: discovers them from robots.txt, /sitemap.xml and /sitemap_index.xml, reads index files one level deep (20 children max), counts URLs per file and per host, summarizes lastmod, and fetches a sample of URLs (HEAD, then GET) to count the ones that are not 200. Flags a missing sitemap, no robots.txt entry, over 50,000 URLs, other hosts, http URLs on https sites and missing lastmod.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Any URL on the site"},"sample":{"type":"integer","description":"How many sitemap URLs to fetch, default 10, max 25 on free and 100 on Pro"}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"6c4dfc5a50d4292b8604867026e594c084c6ce9d16ed428e7473e96796ef1948","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"check_tells","title":null,"description":"Check text for AI-writing tells (em-dashes, 'not just X but Y', rule-of-three lists, stock vocabulary like delve or seamlessly, hedge words, smart quotes, hidden Unicode) and return a score, each tell with its position, and a cleaned copy. Run it on anything you are about to publish on a human's behalf.","inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to check. Free tier: 3,000 chars."}},"required":["text"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"714730d5f406deb6a9792d5da4231d137c6ea7b4422d94707d220d6df916b230","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"decode_jwt","title":null,"description":"Decode a JWT's header and payload without verifying the signature (it never takes a secret). Returns the claims with iat, nbf and exp as ISO times, a plain-text expiresIn, issuer, subject and audience, and findings: alg none, HS* with a URL-like kid, missing or distant exp, expired, nbf or iat in the future, payload over 4 KB, sensitive field names, and jku or x5u pointing off-site.","inputSchema":{"type":"object","properties":{"token":{"type":"string","description":"The JWT, three dot-separated parts. A leading Bearer is ignored."}},"required":["token"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"b9fff03c7ad295c5c20ea4bac75067dbda4043de7c02301c60d8215e14abbc95","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"explain_cron","title":null,"description":"Explain a five-field cron expression in plain English, list the next runs in UTC, and warn about the cases Cloudflare Workers, GitHub Actions and crontab handle differently (nicknames, six fields, day-of-month plus day-of-week, sub-5-minute intervals, day 31).","inputSchema":{"type":"object","properties":{"expression":{"type":"string","description":"e.g. 0 */6 * * 1-5"},"count":{"type":"integer","description":"How many next runs to list, 1 to 20, default 5"},"from":{"type":"string","description":"ISO date to compute next runs from, default now"}},"required":["expression"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"f7314204063724b9435713718fc8f7b497b329b7b232fb571c21aa2d4c316cb3","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"json_to_schema","title":null,"description":"Turn a JSON sample (or an array of samples of the same shape) into a JSON Schema draft 2020-12 and a TypeScript type. Infers required vs optional keys across samples, nullable fields, integer vs number, date/email/uri/uuid formats, and small enums. Use it to draft an MCP tool inputSchema from an example payload.","inputSchema":{"type":"object","properties":{"json":{"type":"string","description":"The JSON text. Free tier: 20,000 chars."},"name":{"type":"string","description":"Type name, default Root"}},"required":["json"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"53cbc6dc6b1f639658e479e55d21f8b095d77374c606755c57b3a4c923c19f75","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"lint_agent_md","title":null,"description":"Lint a CLAUDE.md, AGENTS.md or MEMORY.md: line count against Claude Code's 200-line memory index cap, estimated tokens, duplicate lines, contradicting rules, leftover TODO markers, hidden characters, empty headings.","inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"File contents"},"filename":{"type":"string","description":"e.g. CLAUDE.md or MEMORY.md; changes the severity of the line cap"}},"required":["text"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"76e6d3f75fd496307e9c4c0346ead0a1e0dd5f4cb4894a665ae30ab059b4e96b","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"lint_mcp_tools","title":null,"description":"Lint the tools an MCP server lists, from the model's side of the wire: names that break Claude's ^[a-zA-Z0-9_-]{1,64}$ rule, duplicate names, missing or near-identical descriptions, instruction-like text in a description, arguments with no description, required arguments missing from properties, destructive-sounding tools with no destructiveHint, and unbounded free-text arguments on them. Pass a live Streamable HTTP endpoint or a tools array.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Streamable HTTP MCP endpoint"},"tools":{"type":"array","description":"Tool definitions, if the server is not reachable over HTTP","items":{"type":"object"}}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"d3f6ad54f81001633b4c947b522262dff008531d2105ef035d9b9ac8b2a96748","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"manifest_cost","title":null,"description":"Estimate what an MCP server's tools/list costs in tokens on every session start, per tool, with the three most expensive tools and flags for oversized descriptions, base64 blobs and echoed schemas. Pass a live Streamable HTTP endpoint or a tools array.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Streamable HTTP MCP endpoint"},"tools":{"type":"array","description":"Tool definitions, if the server is not reachable over HTTP","items":{"type":"object"}}}},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"ee9ddec75984157adfa91e13a1345ea1d1bc1a374dd2f3cbe033cfb923d8ee9b","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"mcp_install_snippets","title":null,"description":"Generate install snippets for an MCP endpoint (Claude Code, Claude Desktop, Cursor, Codex, VS Code, curl) and probe the endpoint once to confirm it answers initialize and tools/list.","inputSchema":{"type":"object","properties":{"url":{"type":"string"},"name":{"type":"string","description":"Server name to use in configs"},"headerName":{"type":"string"},"headerValue":{"type":"string"},"probe":{"type":"boolean","default":true}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"a0eff2e43fb86f4606f732577910842c9f040a488a5a2ffe0517b3b054fffa7a","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"scrub_env","title":null,"description":"Scrub a .env file into a safe .env.example: every value is blanked or replaced with a placeholder that keeps its shape (postgres://USER:PASSWORD@HOST/DB). Returns the example, the secrets found (AWS, GitHub, Stripe, Slack, Google, OpenAI, Anthropic, Resend, SendGrid, Twilio, Cloudflare, JWTs, private keys, database URLs, high-entropy strings) by key, kind and line with only the first 4 characters and the length, and findings for duplicate keys, non-UPPER_SNAKE names, unbalanced quotes, export prefixes and trailing spaces.","inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The .env file contents. Free tier: 20,000 chars."}},"required":["text"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false},"definitionHash":"be4c4e72a7f088a21dacb7e2c76ce8f7b06bdb2abfc7d23d06efb9331a3294e9","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"},{"serverName":"com.allthepossibles/toolbox","endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","name":"trace_redirects","title":null,"description":"Trace a URL's redirect chain hop by hop (up to 10 hops, 8 s each) with status, location, timing and scheme per hop. Flags chains over two redirects, loops, HTTPS-to-HTTP downgrades, 302s used for www or https canonicalisation, dropped paths or query strings, cross-domain moves, meta-refresh or JS redirects on a 200, and a final page that is not 200.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"URL to trace, e.g. http://example.com"}},"required":["url"]},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true},"definitionHash":"b7f2b9d1a99b53c781210855531a216aaa1ed56891632782598043a01156c926","schemaStatus":"valid","origin":"official-registry","observedAt":"2026-11-02T23:46:59.948Z","metadataTrust":"untrusted"}],"endpoints":[{"endpointFingerprint":"9a156621ffa240ed142007afda3417b71168eb492ab1119787ced302b6e4d17c","protocol":"streamable-http","status":"indexed","toolCount":14,"observedAt":"2026-11-02T23:46:59.948Z"}],"authentication":"unknown"},"connectionConfigurations":{"status":"ready","authentication":"not embedded","clients":{"Claude Desktop":{"mcpServers":{"com.allthepossibles/toolbox":{"url":"https://toolbox.allthepossibles.com/mcp"}}},"Cursor":{"mcpServers":{"com.allthepossibles/toolbox":{"url":"https://toolbox.allthepossibles.com/mcp"}}},"VS Code":{"servers":{"com.allthepossibles/toolbox":{"type":"http","url":"https://toolbox.allthepossibles.com/mcp"}}}}},"resourceType":"mcp-server","callable":true,"runtime":{"callable":true,"protocols":["mcp"]},"interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://toolbox.allthepossibles.com/mcp"}],"profile":{"apiVersion":"1","schemaVersion":"1","id":"mcp-server:com.allthepossibles%2Ftoolbox","resourceType":"mcp-server","canonicalUrl":"https://www.agentsjunction.com/api/v1/servers/com.allthepossibles%2Ftoolbox","name":"com.allthepossibles/toolbox","description":"Small tools for agent builders: AI-writing tells, tools/list token cost, CLAUDE.md lint, and more.","interfaces":[{"protocol":"mcp","transport":"streamable-http","url":"https://toolbox.allthepossibles.com/mcp"}],"capabilities":[],"identity":{"source":"official-registry","websiteUrl":"https://toolbox.allthepossibles.com","repositoryUrl":null,"version":"1.2.0"},"verification":{"state":"official","confidence":100},"operations":{"resourceType":"mcp-server","name":"com.allthepossibles/toolbox","status":"online","lastCheckedAt":"2026-11-03T20:16:02.139Z","lastSuccessfulCheck":"2026-11-03T20:16:02.139Z","latencyMs":96,"consecutiveFailures":0,"isStale":false,"checks":{"endpointReachable":true,"protocolValid":true,"agentCardValid":null,"mcpHandshakeValid":true},"lastSeen":null,"lastSuccessfulInteraction":null,"lastHealthCheck":"2026-11-03T20:16:02.139Z","source":{"type":"health-check","url":null},"observedAt":"2026-11-03T20:16:02.139Z"},"security":null,"timestamps":{"createdAt":"2026-10-29T23:39:03.609Z","updatedAt":"2026-10-29T23:39:03.609Z","observedAt":"2026-11-03T20:16:02.139Z"},"compatibility":{"serverVersion":"1.2.0","protocolVersions":[{"protocol":"mcp","version":null}]}}}}