TL;DR
GitHub's official MCP server spends roughly 17,600 tokens on tool descriptions before you ask it anything, with every toolset switched on.
The same operation through MCP costs 4 to 32 times what the equivalent command-line call costs.
If you can write the list of calls in advance, write it, and keep REST underneath.
Attach GitHub's official MCP server to an assistant, every toolset switched on, and the conversation opens with a bill of roughly 17,600 tokens. Nobody has asked anything yet. That is the cost of the tool descriptions alone — the names, the sentence explaining what each tool does, the shape of the arguments it expects — and it is paid again on every request for as long as the server stays attached. The figure is a count of the server's own tool schemas, published by people who counted them; it is not a vendor's number.
Written 5 August 2026. Every figure below was measured between late 2025 and July 2026, before the revision of 28 July changed some of the rules they were measured under. The prices move; the arithmetic does not. Measure on your own workload before you plan around them.
I want to be careful with that number, because it belongs to a configuration rather than to a product. The server groups its tools into toolsets you can switch off, and switching the unused ones off cuts the figure several times over. Which is exactly the point: nobody can honestly quote it without saying which toolsets were on. In the measurement above, all of them were.
The "MCP versus REST" argument is almost always conducted as though it were a matter of taste, settled by whichever side sounds more modern. It is not a matter of taste. There is a price list, the numbers on it are fairly harsh, and once you have seen them the choice stops being about architecture and starts being about whether the thing you are building actually needs a model to decide anything.
Where the numbers come from, before anyone asks in the comments: public analyses of the GitHub MCP Server and survey write-ups of context overhead from late 2025 and early 2026, plus the schema-overhead discussion in issue #2808 of the specification repository. Specification revisions used: 2025-06-18 and 2026-07-28. The truncation incident later in this piece is from my own publishing server, audited on 25 July 2026 — that part is not a citation, it is my own damage.
FULL ARTICLE TEXT — syndicate from https://dorokhovich.com/blog/mcp-token-cost
Everything from the section "Start with the bill" to the end of "How to cut the MCP token bill" goes across unchanged. Forem renders GFM, so nothing needs converting. The truncation incident is now its own section, "The cost that appears on no invoice", second in the article rather than buried three headings down — do not move it back.
CLOSING (replaces the blog's series-navigation block)
The three articles this comes from are on my own site: where MCP and REST came from, this one on what MCP costs in tokens, and what an MCP server is actually made of.
One real question, and I want the disagreement rather than the agreement: have you measured what your own tool catalogue costs per request? Not the vendor's number for their server — yours, counted on your own descriptions. I have not published mine, and that is a fair thing to hold against this article: I run a server with twenty tools and I have quoted somebody else's figure rather than my own. If you have counted yours, I would like the number and the method, because the method is the part nobody publishes.
ADAPTATION NOTES
- Keep the GFM tables. Forem renders them; this is the platform where the comparison table earns its place.
- The dated callout does not go at the top here. Forem builds the feed and share card from the first ~140 characters, so a callout in that position puts a caveat where the hook belongs. It is already placed above, immediately after the opening paragraph, as an ordinary blockquote; dev.to renders it fine there.
- Images: the three PNGs need re-uploading to Forem or referencing by absolute URL; relative
/images/blog/...paths will 404 on dev.to. Check every one after publishing rather than assuming. - After publishing, spend the following 48 hours in the comments under my own name. Since mutual claps and cross-profile upvoting are off the table as manipulation, replying in comments is the only distribution channel this campaign has that costs nothing and is honest.
Top comments (0)