Popular servers: Spreadsheet · Expense Tracker — Log Expenses from Claude · Recurring Invoices · Word Document Server — Create .docx from Claude · Server for Bill of Sale — Draft and Sign from Claude · Zip · Job Card
One config entry, 49 servers, 447 tools. That is what office-suite is, and both
numbers were read off a built v0.20.0 bundle on 2026-09-07 rather than off any document: one MCP
client connected over stdio, one tools/list returning 292 distinct names, and the
bundle's own office://tools_map resource naming 31 children and mapping 290 of those
tools to the child that owns them. The remaining two are the merged license_status and
license_activate pair, which is one pair for the whole bundle instead of one per child.
The 31 children are: time-tracker, price-tracker, spreadsheet, invoice, expense-tracker, currency, docx, timezone, resume, recurring, clauses, pdf, calendar, kanban, image, bank-statement, quotes, barcode, zip, billing-docs, deposits, per-diem, asset-register, statement-of-account, cash-book, amortization, petty-cash, work-order, catalogue, change-order and delivery-schedule.
Adding all 31 to a client one at a time is 31 config entries and 31 absolute paths. The bundle starts each one as its own child process over stdio, forwards every tool, resource and prompt call to whichever child owns the name, and merges their license state. Nothing is reimplemented. Each child keeps its own local JSON storage, exactly as it does standalone.
The npm packages are not published yet, so the working paths are the one-click bundle and a clone
and build. A probe of registry.npmjs.org on 2026-09-07 returned no versions for the
@theluckystrike/mcp-* packages, which matches the npm status section of the repository
README.
One click. Download office-suite.mcpb from the
bundle catalog and
double-click it in Claude Desktop. It runs on the Node runtime Claude Desktop ships with, so nothing
about your own PATH matters.
Clone and build. This one needs a full build rather than a per-server one, because the bundle spawns every child:
git clone https://github.com/theluckystrike/mcp-servers.git
cd mcp-servers
npm install
npm run build
claude mcp add --scope user office-suite -- node /absolute/path/to/mcp-servers/servers/office-suite/dist/index.js
Cursor, Claude Desktop, Windsurf and Cline take those same two strings as JSON, under
mcpServers:
{
"mcpServers": {
"office-suite": {
"command": "node",
"args": ["/absolute/path/to/mcp-servers/servers/office-suite/dist/index.js"]
}
}
}
The npx line below returns a 404 today, for the reason above. It is what that config
becomes the day the publish lands, with nothing else changed:
claude mcp add office-suite -- npx -y @theluckystrike/mcp-office-suite
There is no account, no API key and no login step on any of these paths: every child runs locally
over stdio and writes to its own folder under
~/.local/share/mcp-servers/<name>/.
Read live off a built bundle on 2026-09-07: the 31 children's own tools/list calls
sum to more names than a client ever sees, because each child also registers its own
license_status and license_activate pair. The bundle merges those 31 pairs
down to one, and what is left after that merge is 292 tools on the bundle's own
tools/list. Out of those 292 names, exactly four needed disambiguating: invoice and
docx both register a tool called business_set, and expense-tracker and bank-statement
both register one called category_rules. The bundle exposes all four, prefixed with the
server they came from: invoice_business_set, docx_business_set,
expense-tracker_category_rules and bank-statement_category_rules. It
rewrites each child's own reply so a message that said "run business_set" or "run category_rules"
says the name you can actually call. Every other tool keeps its bare name unchanged. Thirty-one
servers, and the bundle had to rename exactly two collisions, four tool names in total. The full
mapping is published as the office://tools_map resource, exposed name to
child.tool, with the renamed pairs listed separately, which is where both figures on this
page came from.
An audit ran the real Claude CLI against the built bundle with all 186 tools on an explicit allowlist, the CLI's own file and web tools denied, an empty working directory, and one running conversation. Six prompts, each written the way a person phrases a request, each needing two or more of the children in a single sentence. This was measured on 2026-09-04 against the nineteen-server build with 186 tools, before billing-docs joined the bundle; the sentences, scores and defects below are that measurement, unchanged. Quoted verbatim, with what happened:
INV-2026-0001, EUR 270.00 plus 23% VAT is EUR 332.10, due in 14 days from the
shared business profile. Scored 2 of 3 for the unnecessary question.zip_bundle_month, and it named the reason the quote PDF was missing from the
archive: rendering a quote to PDF is a Pro feature and none had been rendered. Scored 3 of 3, the
cleanest prompt of the six.Across the six prompts, 20 tool calls went to the bundle, and every single one landed in the correct child and the correct tool inside it: zero cross-child confusion, zero wrong-server picks. The "first tool called with no hint" reach was 5 of 6, 83%; the stricter "was the very first call the working tool" reading was 3 of 6, 50%, but all three misses were the same habit, reading an empty list of clients or contacts before writing to it, not a wrong pick. This was measured on 2026-09-04 against the nineteen-server build with 186 tools, 1.7x the 108 tools measured when this bundle held five children; tool selection did not get worse: 20 of 20 correct against 50 of 51 at the smaller count. The total score was 13 of 18 across six prompts, 226.5 seconds of wall clock. The bundle has since grown to 49 servers and 447 tools; that growth has not been re-measured against this six-prompt audit.
Three defects came out of the same round and are already fixed in the shipped server: a URL handed
to a tool that expects a local file path used to be silently resolved against the server's own
working directory and fail with a path that never existed; find_meeting_slots now always
states the date range it searched and flags it by name when "this week" rolls into the following
Monday; and an empty client or entry list now says which tool creates one automatically from the
fact you already gave, instead of reading as a dead end that buys a confirmation question.
The bundle is not always the right size. Windsurf's Cascade agent caps out at 100 tools across every enabled server, so 292 tools in one entry is nearly three times the ceiling; installing only the two or three single servers you actually use, at 9 to 16 tools each, leaves room for the rest of that budget. The same logic applies anywhere the count matters more than the config-entry count: a project that only ever needs the time tracker and the invoice server gets the same free tier and the same tools either way, with fewer license checks and no dormant sibling processes started for the servers it never calls. Ten of the nineteen children present at the time went untouched by the 2026-09-04 audit's six sentences entirely, which is the concrete argument for installing single servers when you know in advance which two or three you will actually use, and the bundle when you do not, or when the client charges per config entry rather than per tool.
Each child keeps its own free tier exactly as documented in its own guide; this bundle changes nothing about those limits, only how many config entries it takes to reach all of them. A single bundle Pro key, $39 once, lifetime, activates Pro on every child at once instead of buying each server's own $19 key separately; activation is all-or-nothing and prints a per-child OK/FAILED table so a bundle that is half Pro cannot look like a full success. Full detail on free versus Pro.
One MCP server, run over stdio, that starts all 31 sibling servers as child processes and proxies their tools, resources and prompts under one connection. Each child stores its data exactly as it does standalone; the bundle adds no storage of its own.
292 distinct names on one tools/list, and 31 children, both read off a built v0.20.0 bundle on 2026-09-07 by connecting an MCP client to it. The bundle's office://tools_map resource maps 290 of those to the child that owns them; the other two are the merged license_status and license_activate pair, one for the whole bundle rather than one per child. If a page or a README anywhere gives a different figure, this measurement is the one to trust, because it came from the running server.
Four out of 292: invoice and docx both register business_set, and expense-tracker and bank-statement both register category_rules. The bundle exposes invoice_business_set, docx_business_set, expense-tracker_category_rules and bank-statement_category_rules, and rewrites each child's own replies to match. Every other tool keeps its bare name. That list is the renamed array of office://tools_map, read on 2026-09-07.
Not as of the last measurement. A six-prompt audit needing two or more children per sentence, run on 2026-09-04 against the nineteen-server build with 186 tools, put 20 of 20 tool calls in the correct child and the correct tool, against 50 of 51 at 108 tools with five children. Every remaining defect was a tool declining to say something it already knew, not a wrong pick. The bundle has since grown to ${OFFICE_SUITE_CHILD_COUNT} servers and ${OFFICE_SUITE_TOOLS} tools; that growth has not been re-measured against this audit.
When a client caps total tools, such as Windsurf's Cascade agent at 100, 292 tools in one entry is nearly three times the ceiling. It is also the better choice when you already know you only need two or three of the 31: same free tier, fewer license checks, no dormant sibling processes started for servers you never call.
One bundle key, 39 dollars once, at /buy/office-suite, which routes to the same bundle checkout as /bundle. It activates Pro on every child at once instead of buying each server's own 19 dollar key, and activation is all-or-nothing with a per-child OK or FAILED table printed, so a bundle that is half Pro cannot look like a full success.
All MCP servers and prices · All guides · Buy the bundle $39
Related guides: Choosing an MCP server for invoicing: the seven questions worth asking · Which MCP servers work with no network at all
Servers used in this guide: MCP Office Suite (bundle server) · MCP Server for Invoices — Generate Invoices from Claude