OneTool MCP — Claude Code MCP server: tools as Python code
One MCP server instead of many. Your agent calls search, databases, files and diagrams as Python functions, so tool definitions stop eating the context window.
Open on GitHubWhat OneTool MCP does
Most MCP servers resend their tool definitions with every request. Add a few and the window fills up before you have asked anything. OneTool keeps a single MCP server and exposes its tools inside __onetool, so the agent writes a call as code. Values pass between tools as variables, which means a fetched page never lands in your context.
The catalogue covers 28 packs and 253 tools: Brave, Google-grounded and Tavily search, Context7 docs, file and spreadsheet work, SQL databases, PDF and office files to Markdown, a live Excalidraw board, memory with semantic lookup. Your existing MCP servers can be attached through a proxy and toggled while the process runs. Large outputs come back as a handle you can search instead of raw text.
Python 3.12+ is required, and the onetool-mcp package comes from PyPI. Install it with uv. A daemon holds the connections; the CLI and API talk to the process already running, so some commands depend on it being up. Config lives at ~/.onetool/onetool.yaml, and each MCP client needs the generated block pasted in by hand from onetool init mcp-config.
What it helps with
- cut token spend when several MCP servers are attached
- chain a search, a docs lookup and a database query in one agent call
- read a file section by section without flooding context
- turn a PDF or Word document into Markdown for analysis
- produce an architecture diagram you can open and edit in draw.io
Example prompts for the agent
- Run
__onetool brave.searchfor React 19 server components and store the summary in memory - Get the table of contents of
report.pdfwithctx, then pull only the section I need - Proxy the
githubserver and list the tools it exposes
How to install OneTool MCP
Install
The MCP registry has no launch command for it: see the repository README
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about OneTool MCP
How do I install OneTool MCP in Claude Code?
Install the package with uv tool install 'onetool-mcp[all]' and run onetool init --config ~/.onetool. Then generate the client config: onetool init mcp-config --client claude-code, and paste it into your Claude settings. Check it with onetool init validate --config ~/.onetool/onetool.yaml.
What does OneTool MCP do?
It runs one MCP server that carries 253 tools across 28 packs: search, docs, files, databases, memory, diagrams. The agent reaches them as Python functions, so their schemas do not sit in the context window.
How is OneTool different from a regular MCP server?
A regular server repeats its tool definitions on every request. OneTool holds steady at roughly 2K tokens no matter how many packs you enable, and it attaches your other servers through a proxy.