Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
One MCP for devs incl Brave,Google,Tavily,Context7,AWS,Excalidraw,DB,GitHub,DevTools,Playwright
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
The maker has not listed install details in the registry. See the maker’s README below.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account beycom, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.2.2) reached the registry 7 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
🧿 One MCP for developers - no tool tax, no context rot. 250+ tools your agent calls as Python code: search, docs, files, databases, diagrams, vision, memory - plus a proxy for every MCP server you already use.
Works with Claude Code, Cursor, Codex - any MCP client
Every MCP server re-sends its tool definitions on every request: 3K-30K tokens each. Connect 5 servers and you've burned 55K tokens before the conversation starts. Connect 10+ and you're at 100K.
The math is brutal: Claude Opus 4.5 at $5/M input tokens, 20 days × 10 conversations × 10 messages × 3K tokens = $30/month per MCP server - even if you never use the tools.
And then there's context rot - your AI literally gets dumber as you add more tools (Chroma Research, 2025).
OneTool is one MCP server that exposes tools as a Python API. Instead of reading tool definitions, your agent writes code:
__onetool brave.search(query="react 19 server components")
Configure one MCP server. Use unlimited tools - ~2K tokens no matter how many you add.
"Agents scale better by writing code to call tools instead. This reduces the token usage from 150,000 tokens to 2,000 tokens...a cost saving of 98.7%"
97% fewer tokens. 30× lower cost. No context rot. (Measured - 47,660 → 1,131 input tokens against 18 MCP servers.)
Because tools are Python functions, your agent does things tool-call JSON can't: batch, chain, loop, compose.
__onetool
page = webfetch.fetch(url="https://fastmcp.dev/changelog", output_format="markdown") notes = ot_llm.transform(data=page, prompt="Summarise the breaking changes") mem.write(topic="deps/fastmcp", content=notes)
Three packs, one request. Intermediate results flow between tools as variables - the page body never touches your context window, and the summarising runs on a cheap model instead of your expensive coding agent.
Every call is explicit and reviewable - __onetool brave.search(query="...") shows you exactly what runs. No tool-selection guessing.
And the runtime is built for how agents actually type:
mem.search(q="auth") works - any unambiguous parameter prefix resolves (q= → query=)wb.draw(...) works - packs have short aliases (wb, ctx, img)github.listRepositories() works on proxied servers - snake/camel/Pascal all resolveBootstrap (installs uv if missing, installs OneTool, initialises config, prints MCP config):
curl -LsSf https://onetool.beycom.online/install.sh | sh # macOS / Linux
irm https://onetool.beycom.online/install.ps1 | iex # Windows (PowerShell)
Or install manually with uv:
uv tool install 'onetool-mcp[all]' # everything
onetool init --config ~/.onetool
Then print ready-to-paste MCP client config with resolved absolute paths and add it to your client (claude-code, claude-desktop, cursor, or vscode):
onetool init mcp-config --client claude-code # or omit --client for all four
That's it. All 250+ tools work out of the box.
Verify: onetool init validate --config ~/.onetool/onetool.yaml
Install the ot-ref skill into your agent with vercel-labs/skills - it teaches the call conventions and ships a greppable index of every tool signature:
npx skills add https://github.com/beycom/onetool-mcp --skill ot-ref --agent claude
| Search & docs | Brave, Google-grounded, and Tavily search (each with batch + answer modes), Context7 library docs, web fetch with extraction controls |
| Files & data | File ops with path boundaries, full Excel control, SQL databases, PDF/Word/PowerPoint → Markdown, ripgrep, package versions |
| Context economy | ctx handles for large outputs, partial file reads (toc/slice), image vision on a dedicated cheap model (zero host tokens), LLM delegation (10× savings) |
| Persistent state | mem memory with semantic + keyword search, history and rollback; knowledge RAG bases with AI enrichment; localhist Git-backed project snapshots |
| Visual | Live Excalidraw whiteboard with a Mermaid-compatible DSL and offline auto-layout, Mermaid/PlantUML/D2 diagrams, architecture models → draw.io-editable SVG |
| Runtime | MCP server proxy with runtime enable/disable/restart, direct CLI/API into the running process, ot-ref agent skill, in-conversation tool forging |
| Trust | age-encrypted secrets backed by your OS keychain, AST validation, path boundaries, output sanitisation, runtime stats with estimated savings |
28 packs, 253 tools ready to use (console in beta):
| Pack | Tools | Extra | Description |
|---|---|---|---|
arch | generate, validate, bundle_solution, … | [dev] | Architecture models → draw.io-editable SVG |
brave | search, news, image, video, search_batch | [util] | Brave web search |
chrome_util | highlight_element, guide_user, … | [dev] | Browser annotations (Chrome DevTools) |
console *(beta)* | show, display, list, read, clear | Messages to the upcoming onetool-console app | |
context7 | search, doc | [dev] | Library documentation |
convert | pdf, word, powerpoint, excel, auto | [util] | Documents → Markdown |
db | query, schema, tables, sample | [dev] | SQL databases |
diagram | render_diagram, batch_render, get_template, … | [dev] | Mermaid / PlantUML / D2 via Kroki |
excel | read, write, formula, create_table, … (24 tools) | [util] | Full Excel control |
file | read, write, edit, grep, slice, toc, … (16 tools) | [util] | File ops with path boundaries |
ground | search, dev, docs, reddit, search_batch | [util] | Google-grounded search with sources |
knowledge | search, ask, write, related, … (15 tools) | [util] | RAG knowledge bases (hybrid search) |
localhist | save, diff, restore, autosave_start, … (15 tools) | [dev] | Git-backed local history snapshots |
mem | write, search, ask, history, rollback, … (31 tools) | [util] | Persistent memory with semantic search |
ot | help, tools, stats, status, result, … (18 tools) | Introspection and management | |
ot_context (ctx) | write, read, grep, slice, toc, ask, … (13 tools) | Smart context store for large outputs | |
ot_forge | create_ext, validate_ext | Scaffold new tool packs | |
ot_image (img) | load, ask, clip_ask, summary, … (9 tools) | Image vision via a dedicated model | |
ot_llm | transform, transform_file | LLM-powered transforms | |
ot_secrets | set, encrypt, audit, rotate, … (8 tools) | Encrypted secrets management | |
ot_servers | enable, disable, restart, status | Runtime control of proxied servers | |
ot_timer | start, stop, elapsed, list, clear | Named timers | |
package | pypi, npm, version, audit, models | [dev] | Package versions and staleness |
play_util | highlight_element, guide_user, … | [dev] | Browser annotations (Playwright) |
ripgrep | search, count, files, types | [dev] | Fast code search |
tavily | search, research, extract, search_batch, … | [util] | AI-native search and extraction |
webfetch | fetch, fetch_batch | [dev] | Web content extraction |
whiteboard (wb) | open, draw, layout, screenshot, … (22 tools) | [util] | Live Excalidraw canvas |
📖 Complete tools reference — every signature, generated from source
Keep the MCP servers you already use. Wrap them in YAML and call them explicitly - as Python namespaces, without their tool tax:
# .onetool/onetool.yaml
servers: local_tools: type: stdio command: npx args: ["-y", "some-mcp-server@latest"] private_api: type: http url: ${PRIVATE_MCP_URL} auth: type: bearer token: ${PRIVATE_MCP_TOKEN}
__onetool private_api.read_resource(path="README.md")
Proxied servers can be enabled, disabled, and restarted mid-conversation with ot_servers - no client restart.
onetool init walks you through encrypted secrets: values in secrets.yaml are age-encrypted, the private key lives in your OS keychain, and decryption happens transparently at load.
# secrets.yaml - safe to inspect, safe to commit
brave_api_key: age1enc:YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNT...
Works as an MCP server and as a direct CLI bridge into the same running process - loaded config, secrets, and proxy connections stay warm. Useful for agent harnesses, scripts, and automation:
# Recommended local MCP root mode: stdio
onetool serve --config .onetool/onetool.yaml
onetool serve --transport http --config .onetool/onetool.yaml --host 127.0.0.1 --port 8767 --path /mcp
onetool
Only the beginning is shown; read the rest in the repo