mcptoon
mcptoon is an MCP gateway that exposes every configured upstream tool and skill behind a compact, token-optimized interface — you discover tools cheaply, inspect them on demand, call them, and pull back any compressed results.
Discover tools —
mcptoon_manifestlists every upstream tool grouped by server using names-only compact output (optionally one-line descriptions).Survey servers —
mcptoon_serversreports each configured MCP server's transport, tool count, and whether its tools loaded.Diagnose the gateway —
mcptoon_healthreturns version, config path, servers configured, tools indexed, failed servers, and uptime.Track savings —
mcptoon_usagereports tools compressed, tokens saved, savings percentage, and cumulative call count.Browse skills —
mcptoon_skillslists indexed skills with slug and one-line description (optional alias cards).Match skills to a task —
mcptoon_resolve_skillsruns offline BM25 ranking to return the best-fit skills for a described task.Inspect before calling —
mcptoon_inspectfetches one tool's full input schema so arguments can be validated correctly.Call any upstream tool —
mcptoon_callruns any namespacedserver_toolwith validated arguments, even when the tool list is withheld under compact exposure.Recover compressed output —
mcptoon_retrievereturns the full, uncompressed text behind a handle when a summary is missing detail.Read-only & safe by default — eight of nine tools are read-only/idempotent; only
mcptoon_callcan act destructively and is flagged as such.
Supports installing, scanning, and syncing Agent Plugins for Amazon's AI agents as part of the cross-vendor Agent Plugins Specification, enabling them to use configured MCP tools even without a native plugin loader.
Supports OpenAI agents such as Codex by syncing MCP servers and Agent Plugins, allowing them to use the same configured tools as other agents.
Allows Vercel's AI agents to use configured MCP tools by installing and syncing Agent Plugins from the cross-vendor Agent Plugins Specification.
Install 1,000 skills and 1,000 MCP tools locally — and don't worry about the token context. mcptoon manages it all.
Its own compact format does token optimization, tool discovery and context compression at once: it cuts the tool context by ~90% (99.2% on a 255-tool sample; run mcptoon status for your own number) and writes no line of config for any desktop or command-line agent.
Connects to a 17,000+ MCP tool registry and searches skills on demand — nothing pre-installed, you pick what goes in.
It's just a 341KB native CLI — delete it anytime; keep it, and you never have to configure tools or skills for any agent again.
👉 See it first: landing page · 30-second token calculator · 中文
👉 Or run it: pip install mcptoon && mcptoon bench — it measures what your own tools and skills cost, on your machine.
👉 Developer docs · Contributing · Issues
Why mcptoon
Every MCP agent (Claude Code, Cursor, Codex, …) loads the full description of every tool and every skill into its context window before it does any work — and re-sends it every turn. On 255 tools that is 71,929 tokens: more than half of a 128K window spent on descriptions, before the first question.
Related MCP server: typer-mcp
How the token saving works
mcptoon keeps those descriptions on disk, not in context, and hands the agent a compact view instead:
A name index, not full schemas. Picking a tool only needs its name — 255 tools become 581 tokens (−99.2%). The full schema is fetched on demand with
mcptoon inspect, only when a tool is actually called.Skills the same way. One resident pointer (39 tokens) plus one lookup (501 tokens) replaces loading every
SKILL.mdin full — 926,232 → 39 + 501 (−99.9%).Results too.
--toonre-encodes a tool's result as standard TOON. Measured 5.7% smaller on a mixed result sample, ranging 1.8%-48.6% by result shape — a list of records barely shrinks, a single record halves. Not a flat 34%: seeassets/benchmark_results.json.
Nothing is lost: the full schema and the full skill text stay one command away. Only the context window is spared.
mcptoon is a 341KB, zero-dependency native CLI that manages every MCP tool and agent skill on your computer — and shares them across all your agents with no config written by you.
This isn't just us talking
Those numbers are ours — but "loading every tool schema into context is expensive" is not a claim only we make:
Anthropic's engineering write-up — tool schemas flooding the context window is a real cost; one example drops from 150,000 tokens to 2,000
Firecrawl's benchmark — the same task cost 1,365 tokens via CLI vs 44,026 via MCP (32×)
Scalekit's benchmark — CLI 10–32× cheaper, 100% reliable vs MCP's 72%
MCP-Zero (arXiv:2506.01056) — on-demand tool retrieval, near-constant cost regardless of tool count
mcptoon is the one you can use today, covering every agent at once.
Two ways in
Install once, and every desktop AI you have — Claude Desktop, Claude Code, Codex, Cursor, Windsurf, Cline, VS Code Copilot and any other agent — shares all the tools and skills you already have. You write nothing in any agent's config.
Script it. mcptoon is a plain CLI with stable JSON output and an mcptoon serve MCP endpoint — wire it into your own agent, CI, or app.
Measure your numbers: pip install mcptoon && mcptoon bench — it reports your own
catalog, not the fixed 255-tool sample below (that sample's method is in
docs/tiktoken-benchmarks.md).
Without mcptoon | With mcptoon | |
Descriptions in context | full description of every tool + skill, re-sent every turn | a compact view — 581 tokens for 255 tools (−99.2%, lossless) |
Adding a tool or skill | hand-write JSON in every agent | one command — no agent config touched |
Which agents get it | only the ones you configured | every agent on the machine — they just run |
Finding tools & skills | hunt GitHub by hand |
|
Starting from scratch | wire tools one by one | 4 built-in starter packs — one command to a working set |
Skills work the same way: 926,232 tokens of SKILL.md text → 39 resident + 501 per lookup (−99.9%). Call results shrink a further ~6% with --toon (shape-dependent).
Path 1 · I just use AI tools
You have a desktop AI — Claude, Codex, Cursor, Windsurf, Cline, VS Code Copilot. Today, adding a tool or a skill means hand-editing that agent's JSON. mcptoon removes that step:
Install once.
pip install mcptoon && mcptoon quickstartquickstartfinds your MCP servers, writes your config, and registers mcptoon in every agent it detects. (Skipquickstartand the first command you run still self-heals: it installs mcptoon's own skill into each agent and builds the skill index, once per machine.)Add tools and skills in one place — here, not in each agent.
mcptoon install --search github # find and install any MCP server mcptoon skills search "make a PDF" # find a skill by what it doesUse them from any agent. Your agent runs
mcptoonlike any other command — no config, no restart. See Works with every AI agent.
Want a head start? Four built-in starter packs — essentials, web-research, code-review, docs — stand up a working toolset in one command:
mcptoon install --pack essentialsPath 2 · I build with MCP / agents
mcptoon is a plain CLI with scriptable output, plus an MCP endpoint when you want one.
mcptoon manifest --format json # machine-readable tool index
mcptoon call <server> <tool> '{}' # call any tool, JSON or --toon output
mcptoon serve # expose every configured server behind one MCP endpointStable output — JSON by default,
--toonfor smaller results (shape-dependent, 5.7% on a mixed sample),--format mcpto export standard MCP JSON.mcptoon serve— stdio or HTTP, connection pooling, per-agent keys, for clients that insist on a proxy.Zero dependencies — pure Python standard library, so it drops into any environment (CI, containers, air-gapped).
Full reference: DEVELOPERS.md and All commands.
Contents
30 seconds up and running
pip install mcptoon # pure stdlib, 341KB, zero dependencies
# One command: find your MCP servers, write your config, register the gateway
# in every agent you have, and show you what it found:
mcptoon quickstart
# See every tool available (names-only by default; 255 tools cost 581 tokens):
mcptoon manifest
# Call a tool (JSON output by default; add --toon to save more):
mcptoon call everything echo '{"message":"hi"}'quickstart is also what makes mcptoon visible: it writes mcptoon serve into each
agent's config as the reserved server mcptoon, so your agent can see mcptoon itself.
Already synced? Re-register with mcptoon sync --self (plain mcptoon sync only writes
your servers); check the state any time with mcptoon status.
And it is fully reversible. The install registers the gateway, and by default
quickstart also takes over — it routes your existing servers through the gateway
and removes their direct entries (that is the mode that actually saves tokens). It
is a listed, confirmed step, and it is undoable: mcptoon restore drops the
gateway entry and puts your servers back exactly where they were. Anything you
added to a config afterwards is left untouched. mcptoon off is the lighter
switch — it removes only the gateway entry and leaves your servers where they are.
Preview either with --dry, and preview the complete removal plan with
mcptoon uninstall --dry (it prints exactly what it will remove first).
Don't want to install yet? Watch it work instead (needs Node):
uvx mcptoon demo --quickIt boots the official "everything" reference server, calls one tool, and prints the token math on your screen — no API key, none of your servers, nothing written to disk.
What it does
Tools: schema on demand
The full schema is compressed to a name index. When you need one, mcptoon inspect
fetches its real parameters, then call runs it. You pay for a listing, not for every
turn.
Skills: one resident pointer
No more loading the whole catalog. A single pointer line stays resident (39 tokens) and one lookup returns the most relevant skills (501 tokens). Views are links (a junction on Windows, no admin needed), so one edit at the source is live everywhere and there is no second copy to drift.
Install once, share everywhere
Install mcptoon once and every AI on the machine gets all your tools and skills. Add more later and it is live immediately — no agent restart, no per-agent JSON.
Add tools your way
mcptoon install brave-search --npm @modelcontextprotocol/server-brave-search
mcptoon install my-tool --pip mcp-my-tool
mcptoon install remote-api --url https://example.com/mcp
mcptoon add my-server --stdio npx -y @any/mcp-package
mcptoon install --list # see what's installed
mcptoon install --remove brave-search # uninstall oneOne command per server, from npm / pip / HTTP. Or let mcptoon scan what you already have:
mcptoon discover.
A remote server that needs a token reads it from the environment, so no credential is ever written to disk:
mcptoon install remote-api --url https://example.com/mcp \
--header 'Authorization: Bearer ${BAIZHI_TOKEN}' # BAIZHI_TOKEN set in your environment${NAME} is resolved at request time, so the config, the generated handler and every log
keep the template — rotate the variable and the next call uses the new value, with no
reinstall. A missing or empty variable fails loudly, naming it, never as an empty header.
Where the tools come from — search 17,000+, install with one command
On a new machine the first question isn't "how do I save tokens", it's "which tools do I
even want". The old answer is to hunt GitHub for mcpServers snippets and hand-copy them
into JSON.
mcptoon ships no tools and bundles no catalog. It queries the upstream registries, so you search for exactly what you need:
mcptoon install --search github # search, list only — nothing installed
mcptoon install --search postgres
mcptoon install github # search and installResults carry a ✓ (registry-verified), a type tag (npm / pypi / hosted / remote)
and a call count. Data comes from two upstreams, queried live and never stored:
Source | What it is | Scale |
the largest MCP registry | 17,000+ entries | |
the official meta-registry | installable npm / pypi packages |
Why nothing is bundled: a built-in list would need a release to update and would pull
someone else's source into your supply chain. mcptoon stores only a pointer — the
search writes one line into your own ~/.mcptoon/config.json; third-party source never
lands inside mcptoon.
Then distribute to every agent:
mcptoon sync # push the new tools to every detected agent
mcptoon manifest # see every tool (name index, the cheapest view)How to read a result: the index mixes official @modelcontextprotocol/* servers with packages individuals publish. A ✓ means the registry verified the entry — your cue to read the source before you hand it credentials.
The skills half: skills search <query> queries the open skills index (skills.sh) — find a skill by what it does, then install it with skills add <git-url>. mcptoon installs the repos you point it at — the catalog is the open ecosystem itself.
Starter packs: if you'd rather not pick tool-by-tool, four built-in packs — essentials, web-research, code-review, docs — each bundle a few tools plus a ready-made prompt. mcptoon install --packs lists them; mcptoon install --pack essentials installs one. The two research packs need no API key.
The three bills, and why you must not mix them
mcptoon saves tokens in three separate places. Comparing the numbers across them is meaningless.
There are two ways to read "how much does this save?", and they answer different
questions. The gateway figure — full schemas versus what the agent actually loads
under the default compact exposure — is what installing mcptoon buys, and it is the
honest headline (89% on the machine this was written on). The slim-schema figure
(same tools, terser descriptions) is the smaller, secondary claim (88.5%), and it is
what manifest --slim buys. mcptoon status prints both, side by side, from one
measurement, so the two can never drift apart.
Bill 1 · Tool discovery (manifest): 99.2% smaller by default
mcptoon manifest with no flags is this tier. Want more? --slim (names plus param
types, 8,282 tokens, −88.5%) or --full (the complete schema).
Bill 2 · Call results (call): optional, --toon saves ~6%
This bill comes due after a tool returns. mcptoon call prints JSON by default and
saves nothing by default. Add --toon to shrink the result.
Bill 3 · Skill catalog (skills): 926,232 → 39 resident + 501 per lookup
mcptoon skills manifest # 39 tokens, resident
mcptoon skills resolve "make a PDF" --k 5 # 501 tokens, the 5 most relevantOne table, all three, on the machine this README was written on:
Path | What the agent loads | Tokens | vs native |
Tool schemas (1109) | every full schema | 139,863 | — |
| 5,406 | 96.1% | |
| 16,396 | 88.3% | |
Skill files (371) | every | 926,232 | — |
| 39 | 100.0% | |
| 501 | 99.9% |
The fixed headline benchmark — a synthetic sample of 255 tools across 50 servers,
tiktoken cl100k_base. It is not your catalog; run mcptoon status to see your own
numbers:
Format | Tokens | Savings |
JSON | 71,929 | — |
TOON | 47,438 | 34% |
SLIM | 8,282 | 88.5% |
Compact | 581 | 99.2% |
Measure your own catalog with mcptoon bench (it reports your tools, not this fixed
sample). The exact three-format table above is reproducible too — no clone needed:
mcptoon manifest # populate the schema cache
python -m mcptoon.bench_tokens # the same JSON / --slim / --compact counts, your toolsMethod and caliber: docs/tiktoken-benchmarks.md.
Install
pip install mcptoonLinux (Debian/Ubuntu 23.04+, and any distro that follows PEP 668), and Homebrew Python on macOS. A plain
pip installinto the system Python is refused there witherror: externally-managed-environment. That is the distro protecting itself, not a problem with mcptoon. Install it the clean way instead:pipx install mcptoon # isolates the CLI; recommended # or, into a virtualenv you control: python3 -m venv ~/.mcptoon-venv && ~/.mcptoon-venv/bin/pip install mcptoon
pip install --break-system-packages mcptoonalso works, but it writes into the system Python — preferpipxor a venv. On Windows,pip install mcptoonjust works.
# Run without installing (needs Node)
uvx mcptoon demo --quick
# Isolated CLI install (avoids the PEP 668 error on Linux / Homebrew Python)
pipx install mcptoon
# From source (for development)
git clone https://github.com/activeing123/mcptoon.git
cd mcptoon
pip install -e . --no-build-isolation
# Claude Code plugin
/plugin marketplace add activeing123/mcptoonWorks with every AI agent
mcptoon is a CLI tool — a manager, not a proxy — not a client library. Your agent doesn't
connect to MCP servers; it runs mcptoon commands. So the config is written once and shared:
Agent | How it hooks up |
Claude Desktop |
|
Claude Code |
|
Codex |
|
Cursor |
|
Windsurf |
|
Cline |
|
VS Code Copilot |
|
Any agent that can run a shell | call |
# Agent needs GitHub access mid-task? It just runs:
mcptoon add github --url https://api.githubcopilot.com/mcp/
# Done. No JSON editing. No restart. No lost context.mcptoon serve is the other direction: run all your configured servers behind one MCP
endpoint, with connection pooling and per-agent keys, for clients that insist on a proxy.
Why a CLI, not a proxy
MCP's premise is that every capability is a server your agent must be configured to reach — which is why one new tool means editing per-agent JSON in a different format for each, restarting everything, and re-paying the full schema cost in every agent.
A command line is the one interface every agent already has. And the form factor is measurably cheaper on its own, before mcptoon does anything:
Firecrawl: the same task cost 1,365 tokens via CLI vs 44,026 via MCP — 32×
Scalekit: CLI 10–32× cheaper, 100% reliable vs MCP's 72%
If you genuinely need the proxy form, mcptoon serve is exactly that — all configured
servers behind one MCP endpoint.
All commands
mcptoon quickstart # one-shot start (discover + configure + register the gateway)
mcptoon discover # scan this machine for MCP servers (--write to keep, --health to probe)
mcptoon import # import servers from Claude Desktop / Cursor / Cline / Windsurf
mcptoon init # create a sample config (--auto to discover and fill it)
mcptoon list # show configured servers
mcptoon manifest # all tool names (compact by default; 255 tools = 581 tokens)
mcptoon manifest --slim # names + param types (8,282 vs 71,929 = −88.5%)
mcptoon inspect <server> <tool> # inspect one tool's schema
mcptoon search <query> # search tools across servers
mcptoon call <server> <tool> '{"args":"here"}' # call a tool
mcptoon add <name> --stdio|--http <cmd|url> # add any MCP server
mcptoon remove <name> # remove a server
mcptoon install <name> --npm|--pip|--url <pkg> # install + auto-generate handler
mcptoon install --search <kw> # search the live registries (nothing installed)
mcptoon update # refresh each server's cached tool surface; report what moved
mcptoon plugin install <dir> # install an Agent Plugins 1.0.0 plugin
mcptoon sync # sync native config to every detected agent
mcptoon health # health-check every MCP server
mcptoon serve # run as an MCP server (stdio/HTTP)
mcptoon skills list # list the skill catalog (--usage adds hit counts)
mcptoon skills sync <src> # distribute a skill catalog to every agent's folder
mcptoon skills resolve "<task>" # BM25 shortlist of skills (offline, no LLM)
mcptoon bench # prove the savings on this machine (tools + skills, one table)
mcptoon demo # one command, live demo on your machine
mcptoon demo-server # the same proof with zero downloads (11 stdlib tools)
mcptoon doctor # self-check: Python, config, connectivity
mcptoon status # one screen: what's configured, gateway wired, tokens saved
mcptoon stats # token-savings dashboard (vs raw JSON)
mcptoon report # the whole savings account: tools + skills + cumulative
mcptoon usage # local call statistics
mcptoon footer-facts # one line of savings for a chat footer (never blocks)
mcptoon retrieve <handle> # get back the original behind any --smart handle
mcptoon config # show gateway settings (footer, welcome, lang)
mcptoon toggle <server> <tool> # enable/disable a single tool (--list to show all)
mcptoon policy # per-tool compression policy (raw / toon / slim)
mcptoon completion ps # shell completion (bash/zsh/fish/powershell)
mcptoon off # remove the gateway entry from your agents (reversible)
mcptoon restore # drop the gateway and put your servers back
mcptoon uninstall # full cleanup — prints the plan first (--dry to preview)Full reference in DEVELOPERS.md.
Format family: four tiers, compact by default
All optional; the default is already the leanest tier.
Tier | Output | vs native schema | Origin |
compact (default) | names only | 99.2% smaller | common design |
slim | name + param types | 88.5% smaller | mcptoon original |
full | full schema with params | baseline | native MCP |
toon (results) | reversible structured encoding | 5.7% on a mixed sample (1.8-48.6% by shape) | open TOON standard |
Why compact by default? Choosing which tool to use only needs names (581 tokens for 255 tools); parameter detail matters at call time and is fetched on demand. Defaulting to full schemas would hand the 99.2% right back.
The rule for agents: use manifest to choose, inspect before you call. Measured on
41 live tools: an agent guessing arguments from names alone lands ~10% valid calls, while
one that runs inspect once for the 2–3 tools a turn actually uses hits 100% — identical
to injecting every schema, at a fraction of the cost.
Trust and safety
It's just a 341KB native CLI — delete it anytime; keep it, and you never have to configure tools or skills for any agent again. mcptoon touches your agent configs, so it is built to be transparent — and easy to walk away from.
Three guards run on every tool result before your agent sees it:
Guard (on by default) | What it does |
Destructive-action block | a dangerous call is refused unless you pass |
Prompt-injection guard | results are scanned for injection patterns like "ignore previous instructions" and blocked |
Credential-leak detection | a result carrying an API key or token is blocked before it enters context |
Reversible.
mcptoon restoreundoes a takeover (drops the gateway and returns your servers);mcptoon offremoves only the gateway entry;mcptoon uninstall --dryprints the full removal plan first. Your servers are never deleted unless you ask.No telemetry. No analytics, no crash reports, nothing phoned home.
Local-first. Your tools, skills and files stay on your machine. The only thing that leaves is
install --search, which asks the registries for a catalog listing — it never sends your data.No stored credentials. API keys pass straight from your config or environment.
No dependencies. Pure Python standard library — nothing in the supply chain to audit. CI enforces it with
scripts/check_zero_deps.py.No daemon. Pure CLI — no resident process, no listening port.
Formats don't break compatibility. The wire protocol is always standard JSON-RPC; compact/slim/toon only affect mcptoon's output to the agent. If
--toondecoding ever fails it falls back to JSON, and one--fullrestores the native schema. No lock-in.
Scope, in one line: mcptoon is an index and a config manager — it points you to each tool's own source, which you can review on its own terms.
Credits and references
TOON standard — v4.1 (MIT), vendored from python-toon and credited in NOTICE
ToonDeck — a GUI console for mcptoon (pre-alpha): same engine, point and click instead of typing commands
Who builds this: mcptoon is an independent third-party project maintained by @activeing123. It is not affiliated with Anthropic.
Contributing
git clone https://github.com/activeing123/mcptoon.git
cd mcptoon
pip install -e . --no-build-isolation
pip install pytest pytest-cov
python -m pytest tests/ -v # 1901 passed, 2 skippedThree hard rules: zero dependencies (CI-enforced), new behavior ships with tests, Windows is a first-class target. New here? Start with CONTRIBUTING.md and DEVELOPERS.md.
The codebase: 25,227 lines of Python across 43 modules, zero third-party dependencies.
License
Apache 2.0. See LICENSE and NOTICE.
mcptoon is an independent third-party MCP client, not affiliated with Anthropic.
If mcptoon cut your context bill, star it — that's how other builders find small tools.
Available Tools
9 toolsmcptoon_callCall any upstream toolADestructive
Run any upstream tool by its namespaced name (server_tool). Under the default compact exposure the tool list is withheld, so this is how you run one found via mcptoon_manifest. Arguments are validated first.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Namespaced name in server_tool form, e.g. fetch_fetch. | |
| arguments | No | Arguments object for the tool; see mcptoon_inspect. |
Output Schema
| Name | Required | Description |
|---|---|---|
| tool | Yes | |
| result | No | |
| server | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already communicate the open-world/destructive nature, so the description only needs to add context; it does so by noting the withheld tool list and that arguments are validated first. There is no contradiction between the description and the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: core action, usage context, and validation behavior. No filler or repetition of schema/annotation data.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an open-world dispatcher, the description covers how a name is found, what form it takes, how to obtain the arguments object, and the validation guarantee. The output schema covers return expectations, so nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3; the schema already documents the name pattern and points to mcptoon_inspect for the arguments object. The description's 'validated first' is behavioral rather than semantic parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific action—'Run any upstream tool'—and names the exact resource format ('namespaced name (server_tool)'). It also separates this execution tool from sibling discovery/introspection tools by pointing to how one arrives at a name via mcptoon_manifest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete when-to-use signal: under default compact exposure the tool list is withheld, so this is the route to run a tool discovered through mcptoon_manifest. It does not explicitly list when-not-to-use cases or name alternative tools, which keeps it a 4 rather than a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_healthGateway self-checkARead-onlyIdempotent
Self-check of this gateway process: version, config path, servers configured, tools indexed and uptime. Read this first when a tool you expect is missing; it distinguishes an empty config from a server that failed to load.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| python | No | |
| status | Yes | ok, degraded, error or starting. |
| version | Yes | |
| configPath | No | |
| outputFormat | No | |
| toolsIndexed | Yes | |
| failedServers | No | |
| uptimeSeconds | No | |
| serversConfigured | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered. The description adds genuinely useful behavioral context the annotations do not: this is a diagnostic/introspection call that reveals configuration and load state, and that it is the correct first step in a missing-tool investigation. It does not discuss cost or failure modes, but the read-only nature makes those minor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. The enumerated outputs come first, then the diagnostic guidance, so the agent gets the gist immediately. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, yet the description still names the salient fields. A parameterless, closed-world, read-only diagnostic tool is fully specified here; nothing an agent needs in order to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so there is nothing for the description to disambiguate — baseline 4 applies. The description correctly implies the call takes no arguments, matching the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Self-check of this gateway process') and enumerates exactly what it reports: version, config path, servers configured, tools indexed, uptime. This clearly distinguishes it from siblings like mcptoon_manifest and mcptoon_servers, which expose registry contents rather than process health.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger ('Read this first when a tool you expect is missing') and names the diagnostic distinction it resolves (empty config vs. server that failed to load). The condition for choosing this tool over any sibling is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_inspectInspect one tool's parametersARead-onlyIdempotent
Show one upstream tool's full input schema — the parameters to call it with. Read-only; nothing runs. Use it after mcptoon_manifest names a tool.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | Yes | Namespaced name from mcptoon_manifest, e.g. fetch_fetch. A bare name works when only one server owns it. | |
| server | No | Server that owns the tool; disambiguates a shared bare name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| tool | Yes | |
| server | Yes | |
| inputSchema | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description reinforces this with 'Read-only; nothing runs' and adds the workflow sequencing, but adds little beyond what annotations already convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences that lead with the core action, then state the read-only behavior and the suggested usage context. There is zero filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only inspection tool with full schema coverage, annotations, and an output schema, the description covers purpose, safety, and when to call it. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, including the namespaced tool name and server disambiguation. The description adds no parameter-level detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Show') and resource ('one upstream tool's full input schema'), and clarifies that it is read-only and executes nothing. This distinguishes it from mcptoon_call and other siblings despite not naming them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says 'Use it after mcptoon_manifest names a tool,' giving a clear workflow context. The statement 'nothing runs' implies it is not for execution, but it does not name an alternative like mcptoon_call, so it stops short of a full when-not alternatives list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_manifestTool manifestARead-onlyIdempotent
List the upstream tools this gateway currently exposes, grouped by server. Returns names by default; that compact view is what an agent should read instead of pulling every full schema. Pass include_descriptions for a one-line summary per tool.
| Name | Required | Description | Default |
|---|---|---|---|
| server | No | Restrict the listing to one server name. Omit to list every server the gateway has loaded. | |
| include_descriptions | No | Attach each tool's first description sentence to the listing. Costs tokens; the default false keeps the manifest small. |
Output Schema
| Name | Required | Description |
|---|---|---|
| servers | Yes | One entry per server that contributed tools. |
| totalTools | Yes | |
| totalServers | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so safety is covered. The description adds real behavioral context beyond that: the default response contains names only, and enabling descriptions costs tokens, letting the agent reason about output size.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with what the tool returns, then the recommended usage, then the optional parameter. Every sentence carries information and nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and annotations cover the safety profile. The description covers scope, defaults, and cost; only minor details (e.g., how grouping keys are structured) are left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are already documented there, so the baseline is 3. The description largely restates the include_descriptions effect ('one-line summary per tool' / default false) and adds nothing about the server filter's matching semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List the upstream tools this gateway currently exposes') plus the grouping scope ('grouped by server') and the default output shape (names only). It is clearly distinguishable from sibling tools like mcptoon_servers, which enumerates servers rather than exposed tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent to read this compact view 'instead of pulling every full schema,' which is real when-to-use guidance, and it explains when to pass include_descriptions (one-line summaries) versus keeping the small default. It stops short of naming a specific alternative sibling tool or stating exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_resolve_skillsResolve skills for a taskARead-onlyIdempotent
Return the skills that best match a task description, best first. Call this with the user's request before acting, then read the chosen skill's SKILL.md. Offline BM25 ranking, no LLM.
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | How many candidates to return. The default 5 is enough to pick from; larger only when the top few look wrong. | |
| task | Yes | What the user wants to do, in their own words. More detail ranks better than a single keyword. |
Output Schema
| Name | Required | Description |
|---|---|---|
| k | Yes | |
| query | Yes | |
| shortlist | Yes | Best matches first, each with its BM25 score. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly and idempotent annotations, the description adds that ranking is 'Offline BM25 ranking, no LLM.' This tells the agent the algorithm is deterministic and fast, and that no external LLM call is involved. This is useful behavioral context that the annotations do not cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first states the core function; the second gives the usage timing and the algorithm. No wasted words, and the most important info (purpose and when to call) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema, so return values don't need explanation. The description covers what it does, when to call it, and the follow-up step (read SKILL.md). For a simple read-only resolution tool, this is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds extra guidance: 'More detail ranks better than a single keyword' for task, and for k it explains the default and when to increase it ('larger only when the top few look wrong'). These go beyond the schema descriptions, so a 4 is warranted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Return the skills that best match a task description, best first.' It specifies the resource (skills) and the matching criterion, and distinguishes this from simply listing all skills (a likely sibling). The verb is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a direct usage instruction: 'Call this with the user's request before acting.' It also implies the workflow by telling the agent to read the chosen skill's SKILL.md after. It doesn't explicitly name alternatives or state when not to use it, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_retrieveRetrieve a compressed resultARead-onlyIdempotent
Get back the full, uncompressed text of a tool result mcptoon compressed. When a result ends with a line naming a handle, call this if the summary lacks a detail you need.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | Yes | The handle from a result's 'mcptoon_retrieve handle=...' line, e.g. ab12cd34ef56. |
Output Schema
| Name | Required | Description |
|---|---|---|
| found | Yes | |
| handle | Yes | |
| original | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: it describes what the call returns (the full uncompressed text) and the dependency on a handle emitted by the compression step.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both front-loaded with purpose then trigger; every clause earns its place and nothing is repeated or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return-value detail can be omitted, and the description covers the remaining essentials: what is retrieved, why it exists (compression round-trip), and when to invoke it. Nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single handle parameter is already documented in the schema's own description, including its format and where it comes from. The description adds no syntax or format detail beyond what the structured field provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get back the full, uncompressed text of a tool result mcptoon compressed') and ties it to the compression mechanism, which no sibling tool does. An agent can distinguish this from mcptoon_call or mcptoon_inspect without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete trigger condition: 'When a result ends with a line naming a handle, call this if the summary lacks a detail you need.' This is clear when-to-use context, though it stops short of stating when not to call it or naming an alternative retrieval path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_serversConfigured serversARead-onlyIdempotent
Report the MCP servers configured behind this gateway: transport, tool count and whether their tools loaded. Use it to see what is actually reachable before calling a tool, and to spot a server that configured but published nothing.
| Name | Required | Description | Default |
|---|---|---|---|
| server | No | Report one server by name instead of all of them. Aliases resolve to the canonical server name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| servers | Yes | |
| configured | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, openWorld=false, non-destructive). The description adds genuine behavioral context beyond that: it discloses what state is examined (load status) and surfaces a diagnostic condition ('configured but published nothing') that an agent would not know to look for from annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with zero filler; the purpose is front-loaded and the usage sentence adds distinct value rather than restating the first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and the description covers purpose, usage, and the optional narrowing parameter. Nothing an agent needs to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already documents the single optional 'server' parameter including alias resolution. The description only implies an all-by-default scope, adding nothing the schema does not already say, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('report the MCP servers configured behind this gateway') and enumerates the reported fields (transport, tool count, load status). An agent can distinguish this from siblings like mcptoon_manifest and mcptoon_health without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage context: 'see what is actually reachable before calling a tool' and spot servers that published nothing. No explicit when-not or named alternative sibling, but the diagnostic framing makes the use case unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_skillsSkill catalogARead-onlyIdempotent
List the skills mcptoon indexes on this machine: slug and one-line description per skill. Read it once to learn what skills exist, then resolve the one you need with mcptoon_resolve_skills. Offline and read-only; pass include_aliases to also see alias cards.
| Name | Required | Description | Default |
|---|---|---|---|
| include_aliases | No | Include alias cards, not only canonical skills. The default false keeps one row per real skill. |
Output Schema
| Name | Required | Description |
|---|---|---|
| skills | Yes | One entry per skill, sorted by slug. |
| totalSkills | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already supply readOnlyHint, idempotentHint, and destructiveHint, so the description adds value by clarifying 'offline and read-only' and explaining the alias-card behavior. No contradiction with annotations; the only minor gap is no detail about result ordering or size, but the output schema covers return structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, information-dense sentences with no filler. The purpose is front-loaded, and the follow-up tool reference and optional parameter hint each occupy their own meaningful sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity, read-only catalog tool with one optional boolean parameter and a provided output schema, the description is complete. It covers what the tool returns, how to use it in the broader discovery flow, and its safety/offline characteristics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the include_aliases parameter is already well-documented in the schema. The description mostly restates the same meaning ('pass include_aliases to also see alias cards'), adding little beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List'), a clear resource ('the skills mcptoon indexes'), and the output shape (slug and one-line description). It also distinguishes itself from the sibling mcptoon_resolve_skills by framing itself as the discovery step before resolution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent to read this once to learn available skills and then resolve the target with mcptoon_resolve_skills. It also gives the optional include_aliases usage condition, making the intended workflow unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mcptoon_usageToken savings so farARead-onlyIdempotent
How much this gateway has saved: tools compressed, tokens saved and the session call count. Call this when you want to tell the user what mcptoon did. Report these numbers verbatim; never estimate them yourself.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| savingsPct | Yes | |
| tokensSaved | Yes | |
| callsRecorded | No | Calls mcptoon has recorded, cumulative across sessions. |
| footerEnabled | Yes | False when the user turned the disclosure off. |
| toolsCompressed | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, and non-destructive behavior. The description adds genuinely useful behavioral context beyond those: 'Report these numbers verbatim; never estimate them yourself.' This is a real instruction about how to handle output data that prevents a common agent failure mode.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each earning its place. The first front-loads the resource and the specific metrics; the second delivers the when-to-call guidance and the verbatim-handling instruction. Zero filler words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only reporting tool with an output schema and full annotation coverage, nothing essential is missing. The description explains what the report contains, when to invoke it, and how the values must be handled. Low complexity means low documentation burden, and this fully meets it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. Schema coverage is provably complete at 100% since the schema is an empty object. The description's mention of the three reported metrics is output-related rather than parameter-related, but no compensation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (this gateway's savings) and enumerates the exact data points returned: tools compressed, tokens saved, and session call count. This verb+resource framing distinguishes it from siblings like mcptoon_health, mcptoon_manifest, and mcptoon_servers without needing to open their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger condition: 'Call this when you want to tell the user what mcptoon did.' This provides clear context for when the tool is appropriate. It stops short of a 5 because it doesn't explicitly name alternatives or state when not to use it, but the use case is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.8.2- Added
mcptoon_retrieve
13 tool updates
v0.8.1- Removed
demo_build_tool_manifest - Removed
demo_compare_formats - Removed
demo_decode_toon - Removed
demo_describe_runtime - Removed
demo_echo_message - Removed
demo_encode_toon - Removed
demo_estimate_tokens - Removed
demo_list_supported_agents - Removed
demo_report_benchmark_rows - Removed
demo_simplify_tool_schema - Removed
demo_validate_config_draft - Added
mcptoon_call - Added
mcptoon_inspect
2 tool updates
v0.7.23- Added
mcptoon_resolve_skills - Added
mcptoon_skills
1 tool update
v0.7.19- Added
mcptoon_usage
14 tool updates
v0.7.14- Added
demo_build_tool_manifest - Added
demo_compare_formats - Added
demo_decode_toon - Added
demo_describe_runtime - Added
demo_echo_message - Added
demo_encode_toon - Added
demo_estimate_tokens - Added
demo_list_supported_agents - Added
demo_report_benchmark_rows - Added
demo_simplify_tool_schema - Added
demo_validate_config_draft - Added
mcptoon_health - Added
mcptoon_manifest - Added
mcptoon_servers
TDQS
Scored across 9 tools
Most tools target clearly distinct operations: manifest lists tools, inspect shows a schema, call runs one, retrieve decompresses output, and skills/resolve_skills are separate (list vs. rank). There is mild overlap between health, servers, and usage (all report gateway state), but descriptions draw usable boundaries.
Every tool uses the same mcptoon_ snake_case prefix, which is highly consistent. The suffixes mix single-word nouns (health, manifest, servers, skills, usage) with verbs (retrieve, call, inspect) plus resolve_skills, so it's predictable but not a strict verb_noun pattern.
Nine tools is well-scoped for a gateway that must expose discovery, schema inspection, invocation, decompression, and diagnostics. Each tool earns its place with no redundancy.
The surface covers the full gateway lifecycle: discover servers (servers), list tools (manifest), inspect schemas (inspect), invoke (call), decompress (retrieve), plus skills and usage diagnostics. A keyword search over tools (distinct from skills resolution) is the only noticeable gap.
Maintenance
Related MCP Connectors
MCP server for progressive tool usage at any scale (see https://klavis.ai)
One AI endpoint to search and call 22k+ MCP servers; 50+ hosted tools work instantly, no key.
A registry of AI agent tools — MCP servers, APIs, CLIs, SDKs — kept current by automated ingestion.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that publishes CLI tools on your machine for discoverability by LLMs7 npm1MIT
- AlicenseNot gradedqualityBmaintenanceAutomatically converts any CLI built with Python's Typer into an MCP server without changing code. Gives AI agents instant access to thousands of CLI tools.AGPL 3.0
- AlicenseCqualityDmaintenanceTurn any REST API into an MCP server in one command. Point mcpify at an OpenAPI spec and every endpoint becomes a tool your AI agent (Claude, Cursor, Windsurf) can call — zero glue code, always in sync with the spec.35MIT
- AlicenseNot gradedqualityCmaintenanceThis MCP server is a zero-config CLI tool that lets developers tap into any stdio-based MCP server from their terminal, enabling them to list tools/resources/prompts, call tools with JSON arguments, and health-check servers without requiring a full AI client or browser setup.1MIT