{"server":{"name":"io.github.ipvolt/proxy-toolkit","title":"ipvolt Proxy Toolkit","$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","remotes":[{"url":"https://mcp.ipvolt.com/mcp","type":"streamable-http"}],"version":"0.1.1","packages":[{"version":"0.1.0","transport":{"type":"stdio"},"identifier":"@ipvolt/proxy-toolkit-mcp","runtimeHint":"npx","registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","environmentVariables":[{"name":"IPVOLT_ENABLE_ROUTE_CHECK","format":"string","choices":["0","1"],"default":"0","description":"Optional local route diagnostic. Set 1 only when you want the extra tool to make a bounded request through your configured proxy."},{"name":"IPVOLT_PROXY_URL","format":"string","isSecret":true,"description":"Private HTTP proxy URL, required only when the local route diagnostic is enabled. Supply through the client's local secret environment; never as a tool argument."}]}],"repository":{"url":"https://github.com/ipvolt/proxy-toolkit-mcp","source":"github"},"websiteUrl":"https://ipvolt.com","description":"Proxy guides, tested configurations and error diagnostics, with an optional local route check."},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","isLatest":true,"updatedAt":"2026-09-14T14:50:56.514389Z","publishedAt":"2026-09-14T14:50:56.514389Z","statusChangedAt":"2026-09-14T14:50:56.514389Z"},"dev.protogrid/connectability":{"class":"R0","autonomous":true,"human_steps":[],"preferred":{"kind":"remote","idx":0},"remotes":[{"idx":0,"url":"https://mcp.ipvolt.com/mcp","transport":"streamable-http","templated":false,"headers":[],"auth":{"type":"none","location":null,"secret_name":null,"oauth":null},"protocol":{"supported_versions":["2026-07-28"],"stateless":true},"health":{"reachable":true,"uptime_30d":1,"latency_ms_p50":469,"consecutive_failures":0,"last_probe_at":"2026-10-19T21:12:53.150Z","last_ok_at":"2026-10-19T21:12:53.150Z"}}],"packages":[{"idx":0,"registry_type":"npm","identifier":"@ipvolt/proxy-toolkit-mcp","version":"0.1.0","runtime_hint":"npx","transport":"stdio","secrets":["IPVOLT_PROXY_URL"],"requires_execution":true}]},"dev.protogrid/tools":[{"name":"diagnose_proxy_error","title":"Diagnose a proxy error","description":"Use structured client/version, phase, status or exception observations to identify possible causes and the next check. Returns uncertainty and retry boundaries. Do not send raw logs, URLs or credentials.","annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T21:12:53.150Z"},{"name":"generate_proxy_config","title":"Generate a tested proxy configuration","description":"Generate an HTTPS GET example for an exact tested curl, Requests, HTTPX or Playwright APIRequestContext version. Credentials and target are local environment placeholders. It does not execute the example or configure other agent tools.","annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T21:12:53.150Z"},{"name":"get_proxy_doc","title":"Read a reviewed proxy document","description":"Read a bounded chunk or named section using a document ID returned by search_proxy_docs. Follow nextCursor to continue; cursors are bound to the content revision.","annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T21:12:53.150Z"},{"name":"search_proxy_docs","title":"Search reviewed proxy documentation","description":"Find reviewed ipvolt public guides and articles. Returns canonical document IDs, excerpts and content revision. Submit a short topic query, never credentials or logs.","annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T21:12:53.150Z"}],"dev.protogrid/trust":{"score":94,"components":{"hygiene":100,"liveness":100,"freshness":85,"provenance":90},"drivers":["+repository","+namespace-matches-repo","+website","+reachable","+uptime-100%","~updated-35d-ago"],"flags":[],"blocked":false,"computed_at":"2026-10-19T23:07:06.975Z","disclaimer":"Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed."},"dev.protogrid/quality":{"score":96,"label":"strong","components":{"auth":null,"hygiene":100,"protocol":88,"stability":100,"dependencies":100},"checks":[{"id":"protocol.modern","detail":"supports 2026-07-28 (server/discover)","status":"pass","category":"protocol"},{"id":"protocol.stateless","detail":"answers without a session","status":"pass","category":"protocol"},{"id":"protocol.transport","detail":"streamable HTTP","status":"pass","category":"protocol"},{"id":"protocol.list_ttl","detail":"tools/list declares ttlMs 0, so clients re-fetch it on every use","status":"warn","category":"protocol"},{"id":"auth.prm","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.as_metadata","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.cimd","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.secret_in_url","detail":"no templated URL","status":"na","category":"auth"},{"id":"tools.descriptions","detail":"every tool has a description","status":"pass","category":"hygiene"},{"id":"tools.description_length","detail":"descriptions are concise","status":"pass","category":"hygiene"},{"id":"tools.schemas","detail":"every tool has an object input schema","status":"pass","category":"hygiene"},{"id":"tools.annotations","detail":"4 of 4 tools declare readOnlyHint or destructiveHint","status":"pass","category":"hygiene"},{"id":"tools.directory_hints","detail":"every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint","status":"pass","category":"hygiene"},{"id":"tools.token_cost","detail":"about 1,049 tokens to load every tool","status":"pass","category":"hygiene"},{"id":"tools.api_dump","detail":"tools are not a one-to-one API dump","status":"pass","category":"hygiene"},{"id":"stability.changes","detail":"no tool changes in 30 days","status":"pass","category":"stability"},{"id":"stability.rug_pull","detail":"no tool changed its meaning under the same name","status":"pass","category":"stability"},{"id":"deps.known_vulns","detail":"no known advisory in 6 resolved packages","status":"pass","category":"dependencies"},{"id":"deps.mcp_sdk_version","detail":"@modelcontextprotocol/node 2.0.0, no known advisory","status":"pass","category":"dependencies"},{"id":"deps.resolvable","detail":"@ipvolt/proxy-toolkit-mcp@0.1.0 resolved: 6 packages","status":"pass","category":"dependencies"}],"drivers":["~protocol.list_ttl"],"flags":[],"tool_count":4,"token_estimate":1049,"tools_hash":"9502c5c61819de4fbd46cb0c2dd81b0e","tools_changed_at":null,"computed_at":"2026-10-19T23:18:21.627Z","disclaimer":"Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed."},"dev.protogrid/identity":{"canonical_id":"io.github.ipvolt/proxy-toolkit","aliases":[],"alias_count":0,"repository_key":"github:ipvolt/proxy-toolkit-mcp","owner":{"verified":false,"method":null,"since":null}}},"next_actions":[{"action":"list_tools","description":"Every current tool with input schemas","href":"/v1/servers/io.github.ipvolt%2Fproxy-toolkit/tools","arguments":{"name":"io.github.ipvolt/proxy-toolkit"}},{"action":"get_connection","description":"Minimal connection block for the preferred remote or package","href":"/v1/servers/io.github.ipvolt%2Fproxy-toolkit/connection?target=mcpServers","arguments":{"name":"io.github.ipvolt/proxy-toolkit","target":"mcpServers"}},{"action":"search","description":"Find other servers by intent","href":"/v1/search?q={query}","arguments":{"q":"{query}"}}]}