mcp-registry/io.github.pipehero/pipehero · v0.1.17
As of 2026-10-21 16:15 UTC, the Pipehero MCP server is up with a Glimind reliability score of 93/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 2 outages in 90 days, with a median recovery of 4 minutes.
Debug webhooks from your AI agent: inspect and replay captured webhooks on localhost.
Claude Code
claude mcp add --transport http pipehero-mcp-server https://mcp.pipehero.app/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"pipehero-mcp-server": {
"type": "http",
"url": "https://mcp.pipehero.app/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
33 parameter(s) across 17 tool(s) have no description.
Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →
3 tool(s) have parameters with no type (no type/enum/anyOf/$ref).
Give every parameter a "type" (or "enum"/"anyOf"). Untyped parameters make models guess — strings for numbers, objects for arrays. How to fix →
Negotiates MCP 2024-11-05. Structured output, tool output schemas and elicitation arrived in 2025-06-18.
Upgrade the MCP SDK and negotiate 2025-06-18 or newer. How to fix →
Handshake + tools/list takes ~1,726 ms.
Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 17 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fio.github.pipehero%2Fpipehero/fixes
{
"name": "add_api_example",
"description": "Save a response example on an endpoint (for instance the 402 your handler returns for a declined card). Replaces the example with the same name, so it is safe to repeat.",
"inputSchema": {
"type": "object",
"required": [
"collection_id",
"name",
"status"
],
"properties": {
"body": {
"description": "Example response body (any JSON).",
"type": "string"
},
"name": {
"type": "string",
"description": "e.g. Card declined."
},
"path": {
"type": "string",
"description": "Route path as written in the code, e.g. /v1/charges/:id or /v1/charges/{id}."
},
"method": {
"type": "string",
"description": "HTTP method of the route, e.g. POST. Use with path instead of endpoint_id."
},
"status": {
"type": "integer"
},
"headers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"endpoint_id": {
"type": "string",
"description": "Id of the endpoint. Alternative to method + path."
},
"status_text": {
"type": "string"
},
"collection_id": {
"type": "string",
"description": "Id from list_api_collections."
}
}
},
"annotations": {
"title": "Add a response example",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}{
"name": "import_api_spec",
"description": "Import an OpenAPI 3.x document (as JSON), a Postman v2.x collection (JSON) or a curl command into a new collection, or into `collection_id`. All or nothing, and plan limits are checked first. Credentials are never imported (they become variables). Convert YAML to JSON before sending.",
"inputSchema": {
"type": "object",
"required": [
"format",
"content"
],
"properties": {
"name": {
"type": "string",
"description": "Name for the new collection."
},
"format": {
"enum": [
"openapi",
"postman",
"har",
"curl"
],
"type": "string"
},
"content": {
"description": "The document (object or JSON string), or the curl command.",
"type": "string"
},
"collection_id": {
"type": "string",
"description": "Add to this collection instead of creating one."
}
}
},
"annotations": {
"title": "Import an API spec",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}{
"name": "upsert_api_endpoint",
"description": "Document an endpoint: creates it, or updates the existing one for the same method + path. Use it whenever you add or change a route in the code, so the docs stay true. Only the fields you send change. `path` may use :id, {id} or {{id}} for variables. `folder` is created by name if missing. Send `version` (from get_api_endpoint) to avoid overwriting a teammate's edit; a stale version is rejected.",
"inputSchema": {
"type": "object",
"required": [
"collection_id",
"method",
"path"
],
"properties": {
"body": {
"description": "Example request body (any JSON). null clears it.",
"type": "string"
},
"kind": {
"enum": [
"http",
"event"
],
"type": "string",
"description": "`event` for a webhook your app sends."
},
"name": {
"type": "string",
"description": "Short title, e.g. Create a charge. Defaults to METHOD /path."
},
"path": {
"type": "string"
},
"folder": {
"type": "string",
"description": "Folder name, e.g. Charges."
},
"method": {
"type": "string"
},
"params": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"in": {
"enum": [
"path",
"query",
"header",
"body"
],
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"required": {
"type": "boolean"
},
"description": {
"type": "string"
}
}
},
"description": "Documented fields."
},
"headers": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"version": {
"type": "integer"
},
"description": {
"type": "string"
},
"collection_id": {
"type": "string"
}
}
},
"annotations": {
"title": "Create or update an API endpoint",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/io.github.pipehero/pipehero"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/io.github.pipehero/pipehero"}) over MCP.
upsert_api_endpoint ~411 tokensshare_api_endpoint ~409 tokensrun_api_endpoint ~370 tokenssave_captured_request ~328 tokensshare_api_collection ~295 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fio.github.pipehero%2Fpipehero?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fio.github.pipehero%2Fpipehero?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.pipehero%2Fpipehero.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.pipehero%2Fpipehero.svg :target: https://glimind.com/server/mcp-registry%2Fio.github.pipehero%2Fpipehero?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:5a3641d9ad06cc00…, first seen 2026-10-17, included at leaf 13628 of 40,410. Version history · verify what your client received.
Compare: most reliable data servers · most reliable code servers · most reliable knowledge servers · most reliable devops servers · most reliable other servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-21 16:15 UTC, the Pipehero MCP server is up with a Glimind reliability score of 93/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 2 outages in 90 days, with a median recovery of 4 minutes.
Pipehero MCP server advertises 25 tools, including add_api_example, check_api_drift, create_api_collection, delete_api_endpoint, export_api_collection.
Point your MCP client at this streamable-http endpoint: https://mcp.pipehero.app/mcp
Glimind scanned all 25 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.