MCP Server
Your spreadsheets, available to any AI client that speaks the Model Context Protocol. Claude reads the numbers, edits the cells, and your users watch the changes arrive in real time.
Published on October 5, 2026
Introducing
The Model Context Protocol is how AI clients discover and call tools: Claude Code, Claude Desktop, IDE assistants and agents built on the MCP SDKs all speak it. @jspreadsheet/mcp turns Jspreadsheet Server into an MCP server, so those clients can list, read, create and edit your documents.
The server already owns the live copy of every document. MCP is one more door into it, next to the browsers and the REST API, behind the same authentication and the same rules.
One line on each side
On the server, register the extension next to the API:
const mcp = require('@jspreadsheet/mcp');
server({
// ...
extensions: { api, mcp },
});
In the AI client, point at /mcp with a token:
claude mcp add --transport http sheets https://sheets.example.com/mcp \
--header "Authorization: Bearer <token>"
Claude Desktop and other clients take the same URL and header in their configuration. From then on, "summarize the Q3 sheet", "add a column with the margin" or "create a budget for the offsite" are requests the assistant can carry out on the real documents.
What the tools do
The extension publishes the spreadsheet as a catalog of tools:
- Documents:
listSpreadsheets,createSpreadsheet,destroySpreadsheet. - Reading:
getConfigfor the structure andgetDatafor the values, with calculated formula results, the selection only or filtered rows. - Writing:
setValuefor values and formulas, bulk writes withsetData,setRowDataandsetColumnData, andpastefor a 2D block. - Structure and presentation: rows, columns, worksheets, headers, column options, cell properties, styles, and charts, images and shapes with
setMedia.
Read-only tools carry the MCP readOnlyHint annotation and the delete tool destructiveHint, so clients that auto-approve safe tools can tell them apart.
The same rules as everyone
The Authorization header of every tool call flows into the hooks that guard browsers and REST: beforeLoad decides what the client may open, beforeChange what it may modify. An AI client has exactly the permissions of the token it carries, no more.
Writes take the same path as a person's edit. The change is validated, applied to the live document, persisted by your adapter and broadcast, so someone with the document open sees the assistant's edits land while it works.
MCP, agent or REST?
The server now offers three ways for AI and code to reach a document, and they mix freely because they share the same live copy:
- MCP when the AI lives outside your product: a developer's Claude Code, an analyst's desktop assistant, an automation built on an agent framework.
- The server agent when the AI lives inside your product: a chat next to the spreadsheet, with your quotas, your sessions and your model.
- The REST API when the caller is ordinary code: a sync job, an import, a webhook.
Useful links
MCP Server documentation
AI with Jspreadsheet Server
REST API routes