Is ref-tools-mcp self-hostable, or does all search logic live in the hosted API?
I'm a hobbyist developer and would like to add ref-tools-mcp as a documentation lookup tool in GitHub Copilot on VS Code. The README says the codebase doesn't support streamable HTTP, but the code seems to, and I couldn't find any code that does the advertised search-result filtering and page chunking. Can this MCP server actually be self-hosted, or is that logic only in the hosted service?
Originally asked on GitHub: https://github.com/ref-tools/ref-tools-mcp/issues/10
1 answer
Explained by the maintainer in the thread: the code in this repo can be run locally, but the search logic and documentation chunking are not in this codebase — they live on the hosted api.ref.tools server, which cannot be self-hosted at the moment.
What the thread establishes:
- The maintainer confirmed the repo does not contain the "filter search results and fetch the part of the page that matters" behavior described in the README; that happens server-side.
- A self-hosted option is hoped for once things settle, but no timeline was given. The stated reason: hosting it themselves lets them operate and try ideas quickly, while supporting an open-source, self-hosted product is time-consuming.
- Ref comes with 200 free searches, which the maintainer says should last a while for non-professional use.
- The streamable HTTP contradiction you noticed (README says unsupported, code appears to support it) is not addressed anywhere in the thread, so it remains unresolved.
Note: because the search logic runs on the hosted service, this tool depends on external calls — a commenter in the thread noted that this rules it out for companies that can't make them.
Did this work for you?
Related questions
- How do I request docs for a tool missing from ref-tools-mcp?
- Claude Code: Ref MCP server fails with 'Dynamic client registration failed: HTTP 404'
- Gemini CLI hangs at 'Initializing...' when Ref MCP server (ref-tools-mcp) is enabled in docker-mcp
- Claude Code MCP shows disabled despite `claude mcp list --debug` reporting Connected
- ref_read_url in ref-tools-mcp accepts wrong types and missing required params — will it be fixed?