Skip to content

Releases

v0.2.0

Choose a tag to compare

@diegoperezg7 diegoperezg7 released this 04 Nov 09:24

toolbloat is now a GitHub Action: keep the token cost of your MCP stack, or of the MCP server you maintain, under a budget on every pull request. No model calls, no keys.

- uses: actions/checkout@v7
- uses: diegoperezg7/toolbloat@v0.2.0
  with:
    config: .mcp.json
    max-tokens: "8000"

The job summary shows tokens per server and in total; the job fails when the total is over max-tokens. On the six MCP reference servers of the demo the total is 6,064 tokens.

Added

  • GitHub Action (action.yml).
  • toolbloat tokens --max-tokens N: exit code 2 when over budget, 1 when a server could not be measured.
  • toolbloat tokens --markdown FILE: append a Markdown summary.

Install

uvx --from git+https://github.com/diegoperezg7/toolbloat@v0.2.0 toolbloat tokens --config .mcp.json

toolbloat v0.1.1

Choose a tag to compare

@diegoperezg7 diegoperezg7 released this 03 Nov 20:05
  • Privacy prompt: before sending tool definitions or test requests to a cloud provider, toolbloat run and toolbloat intents list every server that will be sent, the config file it came from (or --server), its command and the provider, and ask for confirmation. Without an interactive terminal they refuse unless --yes is passed.
  • Locale-aware numbers in the HTML report: numbers, percentages and amounts follow the active language (English 6,064 / $2.73, Spanish 6.064 / 2,73 US$).

The recorded demo data is unchanged (toolbloat 0.1.0 run of 2026-11-03).

uvx --from git+https://github.com/diegoperezg7/toolbloat@v0.1.1 toolbloat demo --open

Example report: https://diegoperezg7.github.io/toolbloat/

toolbloat v0.1.0

Choose a tag to compare

@diegoperezg7 diegoperezg7 released this 03 Nov 19:41

First release.

toolbloat starts the MCP servers in your .mcp.json, Cursor or Claude Desktop config, counts the tokens their tool definitions add to every turn, and asks each model which tool it would call for realistic requests, with only the tool's own server loaded and with the whole stack. Tools are never executed.

  • toolbloat demo: recorded real run on six MCP reference servers, no keys needed
  • toolbloat tokens: token cost per tool and server, no model calls
  • toolbloat intents: write and review the test requests (editable YAML)
  • toolbloat run: accuracy alone vs. stacked, requests broken by stacking, cross-server confusion matrix, argument validity, never-chosen tools, monthly token and cost projection
  • Ollama, Mistral, OpenRouter, OpenAI; --max-cost budget; resumable call cache
  • Static HTML report (English/Spanish, light/dark, mobile)

Install from this tag until it is on PyPI:

uvx --from git+https://github.com/diegoperezg7/toolbloat@v0.1.0 toolbloat demo --open

Example report: https://diegoperezg7.github.io/toolbloat/