AI agents
Use How HTTP Works from AI agents
TL;DR: Add https://howhttpworks.com/mcp as a remote HTTP MCP server to search this site's HTTP reference and read its Markdown pages. No account or API key is required.
Connect your assistant
The endpoint uses stateless Streamable HTTP: JSON responses to POST requests, no SSE stream and no session ID. Supported MCP revisions: 2025-11-25, 2025-06-18 and 2025-03-26.
Claude Code
Run this in your terminal:
claude mcp add --transport http howhttpworks https://howhttpworks.com/mcpFor a project configuration, merge this entry into .mcp.json:
{
"mcpServers": {
"howhttpworks": {
"type": "http",
"url": "https://howhttpworks.com/mcp"
}
}
}Syntax: Claude Code MCP documentation.
Claude Desktop
Add a custom remote connector using the name howhttpworks and URL https://howhttpworks.com/mcp. Choose No sign in for authentication. Use Claude's custom connector setup instructions for your account; organization accounts may need an owner to add the connector.
Cursor
Merge this entry into .cursor/mcp.json in your project, or ~/.cursor/mcp.json for all projects:
{
"mcpServers": {
"howhttpworks": {
"url": "https://howhttpworks.com/mcp"
}
}
}Format and locations: Cursor MCP documentation.
VS Code
Merge this entry into your workspace's .vscode/mcp.json:
{
"servers": {
"howhttpworks": {
"type": "http",
"url": "https://howhttpworks.com/mcp"
}
}
}Format: VS Code MCP documentation.
Available tools
search_docs(query, limit?)- Find pages by title, description and keywords. Default: 5 results; maximum: 10.
get_page(path)- Read a listed page as Markdown. Accepts /headers/vary, headers/vary or a full site URL. Truncates at 40,000 characters.
lookup_status_code(code)- Look up a status code from 100 to 599: reason phrase, class, available spec or vendor information, and page summary.
lookup_header(name)- Look up direction, specification, an illustrative example and page summary. Names are case-insensitive.
explain_curl(command)- Parse a curl command and show an illustrative HTTP request with warnings. Maximum: 8 KiB of UTF-8. The command is never executed.
Try: “Find the Vary header page, read it, and cite the canonical URL.” Every tool returns a link to the site; cite the HTML page URL, without .md.
Tools read published site assets and parse text. They cannot inspect an external server. Remove credentials before submitting a curl command: the command reaches this server, and redaction applies to the returned explanation using the same rules as the curl explainer.
Request limits and debugging
POST bodies are limited to 64 KiB. A per-isolate limiter allows 60 messages per minute per connecting IP; it is a local backstop, not a global quota. HTTP 429 responses include Retry-After. GET returns 405 because there is no SSE stream.
Send one JSON-RPC 2.0 message per POST with Content-Type: application/json and Accept: application/json, text/event-stream. After initialization, send the negotiated Mcp-Protocol-Version header. An unsupported header gets HTTP 400. An initialized notification gets HTTP 202 with no body.
The legacy 2025-03-26 revision requires receiving batches. This endpoint accepts up to 10 messages per legacy batch; each message counts toward the limit. Batches are rejected for newer revisions. Requests without a version header use the 2025-03-26 compatibility behavior.
Transport rules: MCP 2025-11-25 and MCP 2025-06-18.
Read without MCP
/llms.txt lists reference pages and their Markdown URLs. /llms-full.txt combines the content pages into one file. For a single listed content page, append .md to its canonical path, for example /headers/vary.md. Interactive tools and other hand-built pages may have no Markdown copy.
Published · Last reviewed