Connect your agent#
The address is https://mcp.decisionnode.comhttps://mcp.decisionnode.com, over Streamable HTTP. Add it once and the agent finds the two tools on its own. The name decisionnode-docs is yours to change.
claude mcp add --transport http decisionnode-docs https://mcp.decisionnode.com{
"mcpServers": {
"decisionnode-docs": { "url": "https://mcp.decisionnode.com" }
}
}{
"servers": {
"decisionnode-docs": {
"type": "http",
"url": "https://mcp.decisionnode.com"
}
}
}In Claude Desktop and on claude.ai, add it as a custom connector: Customize, Connectors, Add custom connector, then paste https://mcp.decisionnode.comhttps://mcp.decisionnode.com and choose no sign-in. Any other client that speaks Streamable HTTP takes the same address.
Tools#
| Tool | What it does |
|---|---|
search_docs | Searches every page and heading, the same search as the docs' own. Returns up to 20 hits (8 by default), each with its page, heading, section, URL, a snippet and the path to read |
read_doc | Returns one page as Markdown: the title, the lead, every section, the code samples and the tables. Takes a path from a search hit, a slug such as api/errors or a URL on decisionnode.com. An unknown path is a tool error that names the closest pages |
search_docs
querystringrequired- What to look for, 1 to 200 characters. Every word must appear in a hit; a longer word may be one typo away from a title word.
limitintegerdefault8- How many hits to return, 1 to 20.
read_doc
pathstringrequired/docs/api/decide,api/decideorhttps://decisionnode.com/docs/api/decide#retryinghttps://decisionnode.com/. Thedocs/ api/ decide#retrying #fragmentis ignored: the whole page comes back.
Both tools only read, and the same call gives the same answer until the docs change. What they return is what these pages say, from the same source, so the server and the site never disagree.
Limits#
120 requests a minute per client address, and a request body of at most 64 KB. Over the rate, the server answers 429 with Retry-After in seconds; wait that long and send the call again. The server is stateless: every call is a POST, there is no session to keep and no stream to open.
Without MCP#
An agent that can fetch URLs reads the same docs from /llms.txt, a map of every page, and /llms-full.txt, every page in full. The prompt in With coding agents carries the API contract in one block.