← Back to directory
M

mcptoon

Community
Zero-dependency MCP client: tool discovery drops 71,929 tokens to 581 (−99.2%, measured)
Category
Dev Tools #192 of 438
Stars
★ 417 Very popular
Transport
stdio (local process) · Streamable HTTP
Runtime
Python
Credentials
No credential needed
License
Apache-2.0
Last commit
55FMRS · C

mcptoon is a clearly scoped control layer for MCP tools, addressing two real pains: tool schemas eating the context window, and every agent re-configuring the same tools. Its headline figures come from the project's own tiktoken cl100k_base benchmark (255 tools: 71,929 → 581 tokens, −99.2%), and the README cites external measurements from Anthropic, Firecrawl and Scalekit to back the general claim that loading full schemas is expensive. Strengths: zero dependencies, no daemon, no telemetry, bundles no servers, and it can be deleted without breaking your servers. Limits: it requires an agent that can run shell commands, ships no ready-made toolset, and asks users to install MCP servers themselves, taking on the corresponding supply-chain risk. It is not an Anthropic official project.

Strongest · Setup experience 13/20 Weakest · Reliability 8/20

Reliability
8/20
Security and permissions
10/20
Maintenance
11/20
Documentation
13/20
Setup experience
13/20
Why each score
Reliability 8/20
Static evidence shows a self-described pure-stdlib, zero-dependency CLI (156KB, 23 modules, 13,415 LOC) with claims of 931 passing tests and a CI badge, plus a reproducible command transcript and a committed tiktoken benchmark path. However, this review reads source only and executes nothing, so the MCP init handshake, tool listing, and declared-vs-actual tool behavior cannot be independently confirmed. Many headline numbers (71,929→581 tokens, 41/41 call accuracy, 'official benchmark') are unverified self-reported metrics, and some statements conflict (both 'measured' and 'your mix will differ'; the demo table shows only 19% while 99.2% is displayed alongside). Error handling, timeouts, and failure fallbacks lack visible evidence, and 'zero dependencies' carries no lockfile or audit trail. Per static calibration, absence of verifiable execution evidence caps this at 12, so it scores 8.
Security and permissions 10/20
Visible material claims three built-in layers (destructive actions blocked unless --destructive, prompt-injection scanning, credential-leak detection), no telemetry, no daemon, no stored credentials, and no listening port, with a fairly clear privilege and data-flow description. No red-line behavior is evident: no malware, no covert exfiltration, no default irreversible delete/pay/deploy/remote-command, and no real tokens in examples, so the 0-4 red-line band is not triggered. Nevertheless, every security claim is README self-assertion with no source-level corroboration; destructive-action blocking appears pattern-based with undisclosed bypass risk; false-positive/negative rates, scope, and disable-ability of the injection and credential scanners are unexplained; and the network/supply-chain side of connecting npm/pip/URL servers is under-specified. Missing evidence is a deduction, so 10 rather than full marks.
Maintenance 11/20
License is Apache-2.0, versioning is disciplined (0.7.16) and consistent between manifest and README, and there are CI/test badges, a NOTICE with third-party attribution, plus an active ecosystem (ToonDeck, plugin, skill). 201 stars with 1 open issue suggests an active repository. Statically, however, commit cadence, release rhythm, issue response time, a security-response channel (no SECURITY.md evidence), and dependency-update paths cannot be confirmed; the project is still 0.x and leans on forward-dated specs (MCP 2026-07-28, Agent Plugins 1.0.0, TOON v4.1) that cannot be verified. Governance and versioning gaps remain, so 11.
Documentation 13/20
Docs are layered and substantial: install commands, a demo verification path, a full command listing, a four-tier format comparison table, a two-bill token breakdown, comparisons against Anthropic/MuleSoft approaches, a security section, contribution/testing guidance, developer docs, and a Chinese README, plus a tiktoken benchmark path and an in-browser calculator, with concrete reproducible examples. Deductions: all headline gains are self-reported with no independent reproduction and some claims conflict ('measured' vs compute-your-own; confusing positioning of compact-by-default versus the 'mcptoon original' slim tier); there is no per-tool parameter reference, error-code table, quota, or rate-limit documentation; compatibility statements cite spec versions ahead of reality (2026-07-28), straining credibility; and troubleshooting cites doctor/quickstart but lacks a known-issues and limitations list. Hence 13.
Setup experience 13/20
The install path is short and clear: pip install or a zero-install uvx demo, with PyPI package metadata matching the pypi/stdio transport declared in server.json, plus client configuration examples (Claude Code plugin marketplace, skills add, sync writing native JSON per agent, MCPTOON_AGENT_TYPE env var). Mainstream clients are covered (Claude Code, Cursor, Codex, Cline, etc.) and platform compatibility is illustrated with a Windows/Python 3.12 transcript. Deductions: several optional advanced paths (plugin auto-install, SessionStart hook, the serve bridge, the ToonDeck GUI, Agent Plugins) are unverified without execution; config merge/conflict handling, Node-absent fallback, and per-agent config file locations are undocumented; and the zero-install demo depends on uvx and network fetch. Static calibration caps setup at 15 without execution evidence, so 13.

Static review · not runListed 2026-09-18

Read the FMRS scoring method →

Fit and risk

What it can accessRuns commands or codeUses the network

Best for

  • Heavy MCP users with many configured servers and a tight context budget
  • Developers running several CLI/IDE agents who want a single shared tool configuration
  • Teams whose agents are allowed to execute shell commands (the precondition for using mcptoon)
  • Users who value supply-chain minimalism and prefer a zero-dependency, stdlib-only tool

Not for

  • Purely GUI agents that cannot run shell commands (they depend on mcptoon sync writing native configs)
  • Users expecting a ready-made tool set — mcptoon bundles no MCP servers and you install each one yourself
  • Scenarios needing a hosted service or cloud control plane
  • Anyone seeking official Anthropic support: mcptoon is an independent third-party MCP client, not affiliated with Anthropic

Required permissions

  • Read and write the user-level config file at ~/.mcptoon/config.json
  • Execute local shell commands to launch and call the MCP servers the user installs (e.g. npx- or pip-launched processes)
  • Write into each agent's own native config location when running mcptoon sync
  • Read and write files in the working directory (configs, logs, usage statistics)

Risks and side effects

  • mcptoon runs no daemon, but it launches the third-party MCP servers you add — those servers carry their own permissions and risks
  • On-demand server installation shifts supply-chain risk onto the npm/pip packages you choose
  • The built-in destructive-action block (--destructive), prompt-injection scan and credential-leak detection are guardrails, not guarantees, and do not replace human review
  • Agents that add and call tools autonomously (no human in the loop) gain convenience at the cost of a larger surface for misuse

Setup

Before you start

Runtime:Python

Other optional settings (1)
MCPTOON_AGENT_TYPE optional Sets the agent type (e.g. claude or openai) so call results auto-select --toon or default JSON output.

1) Install: pip install mcptoon (pure stdlib, 156KB, zero dependencies). 2) Prove it: run mcptoon demo --quick — it boots the official everything reference server and prints the token math; no API key needed. 3) Add an MCP server: mcptoon add everything --stdio npx -y @modelcontextprotocol/server-everything, or mcptoon install brave-search --npm @modelcontextprotocol/server-brave-search. 4) See the tool index: mcptoon manifest (compact by default; 255 tools ≈ 581 tokens). 5) Call a tool: mcptoon call everything echo '{"message":"hi"}', add --toon to compress the result. 6) Share config across agents: mcptoon sync writes native JSON into each agent's own location, or run mcptoon quickstart to discover, configure and list in one command. 7) Claude Code users can install the plugin via /plugin marketplace add activeing123/mcptoon.

Check that it works

Run mcptoon demo --quick (zero install, no API key); seeing the 71,929 → 581 token benchmark table and one successful tool call confirms the install. Alternatively, run mcptoon manifest to see the tool name index.

Troubleshooting

  1. Start with mcptoon doctor to self-check Python, config and connectivity
  2. No tools showing up: confirm the server is configured with mcptoon list, check the index with mcptoon manifest, and fall back to --full / --json for the complete schema
  3. Call failures or odd output: drop --toon and compare against default JSON output; --toon decoding failures fall back to JSON automatically (--fallback-json)
  4. Agent guessing wrong arguments: use the documented loop — mcptoon inspect <server> <tool> first, then mcptoon call
  5. No Node on the machine: use mcptoon demo-server (11 standard-library tools, no download, no network)
  6. Agent still can't see the tools after adding: run mcptoon sync to write config into that agent's native location, and verify the agent can execute shell commands

Things to try

Once connected, you can ask your AI assistant things like:

  • Run mcptoon manifest to list tool names from all configured MCP servers
  • Test the connection with mcptoon call everything echo '{"message":"hi"}'
  • Run mcptoon quickstart to auto-discover MCP servers on this machine and generate the config
  • Run mcptoon demo --quick to verify the token compression on this machine

Use cases

Attaching many MCP tools to an agent without flooding the context window with full schemas
Unifying one set of MCP servers across multiple AI agents on the same machine (Claude Code, Cursor, Codex, ...)
Letting an agent add and call new MCP tools mid-task with no JSON editing and no restart
Validating the MCP call flow without Node using the bundled 11 standard-library demo tools
Collapsing all configured servers behind a single MCP endpoint via mcptoon serve

Supported clients

Claude Code
CursorPartial support
CodexPartial support
ClinePartial support
WindsurfPartial support

Listed from the project's documentation, not tested by this site.

Overview

mcptoon is a 156KB CLI built entirely on the Python standard library with zero third-party dependencies. It keeps MCP tool schemas out of the agent's context window: by default it emits only a name index, and the project's own measurement puts 255 tools at 581 tokens instead of 71,929 (−99.2%), with a further ~34% saving on call results via --toon. It also acts as a shared configuration layer for multiple agents: configure servers once in ~/.mcptoon/config.json, and any agent that can run a shell command (Claude Code, Cursor, Codex, scripts, CI) can use the same servers and tools — new tools go live without restarting the agent and without hand-editing per-agent JSON. mcptoon bundles no MCP servers; it is a control layer, not a runtime. Servers are installed by the user (npm/pip/URL), start only when called, and keep running independently if mcptoon is deleted. It bridges MCP over stdio and can also run as an MCP server, and it ships three built-in guards: destructive-action blocking, prompt-injection scanning, and credential-leak detection.

Similar servers

Context7 80 · B

Upstash's official server providing up-to-date third-party library docs for AI coding assistants

★ 64.1k · Tools 2 Compare with this →

Source revision c94aee870620 Data synced 2026-11-02 Read the FMRS scoring method