MCP server for Grist
An AI assistant that works in your Grist documents
mcp-server-grist connects an AI assistant (Claude, or any MCP-compatible client) to the Grist API. Ask it in plain language to find information, fill in a table or create a complete database with its relations: it does so in your documents, with your permissions.
v0.2.254 toolsPython 3.10+MIT
One entry point per audience
You use an AI assistant
This page: step-by-step setup, example requests, what to know before connecting your data.
You are an AI agent
llms.txt, SKILL.md and the capability sheet: which tools to call, in which order, what they write.
Set up in one minute
You need a Grist API key (in Grist: Profile settings → API) and the API address of your instance. uvx runs the server, no installation needed.
Claude Desktop
Add this to claude_desktop_config.json, then restart Claude.
{
"mcpServers": {
"grist": {
"command": "uvx",
"args": ["mcp-server-grist"],
"env": {
"GRIST_API_KEY": "your_api_key",
"GRIST_API_URL": "https://docs.getgrist.com/api"
}
}
}
}Claude Code
One command in the terminal.
claude mcp add grist \
-e GRIST_API_KEY=your_api_key \
-e GRIST_API_URL=https://docs.getgrist.com/api \
-- uvx mcp-server-gristOther MCP clients
Command uvx, argument mcp-server-grist, and the two variables GRIST_API_KEY and GRIST_API_URL. The server also speaks HTTP (option --transport streamable-http).
uvx mcp-server-gristDocker
For an isolated deployment.
docker run -i --rm \
-e GRIST_API_KEY=your_api_key \
-e GRIST_API_URL=https://docs.getgrist.com/api \
mcp/grist-mcp-serverWhat you can ask
- “In the Site tracking document, which sites are late this month?”
- “Create a Projects table and a Tasks table linked together, with a status choice column.”
- “Add these three contacts to the Partners table.”
- “Export the Registrations table to Excel.”
- “Who has access to the Budget document, and with which permissions?”
Grist's official MCP server or this one?
Since June 2026, Grist Labs offers its own MCP server. The two complement each other:
| Official Grist server | mcp-server-grist | |
|---|---|---|
| Where | getgrist.com, and self-hosted Grist full edition once enabled | Any Grist instance, with an API key |
| French public instances | Not enabled on grist.numerique.gouv.fr or grist.incubateur.anct.gouv.fr (checked on 8 November 2026) | Works |
| Connection | OAuth, no installation | API key, run with uvx, pip or Docker |
| Specific strengths | Document pages, views and widgets | Complete schema with relations in one call, SQL, access rights, webhooks, SQLite, Excel and CSV exports |
The 54 tools
Grouped by use. The reference details the parameters of each one. tools-reference.mdx
Read and export
list_organizationsListe toutes les organisations Grist accessibles.describe_organizationObtient des informations détaillées sur une organisation spécifique.list_workspacesListe tous les espaces de travail dans une organisation Grist.describe_workspaceObtient des informations détaillées sur un espace de travail spécifique.list_documentsListe tous les documents dans un espace de travail Grist.describe_documentObtient des informations détaillées sur un document spécifique.list_tablesListe toutes les tables dans un document Grist.list_columnsListe toutes les colonnes dans une table Grist.list_recordsListe les enregistrements dans une table Grist avec tri et limitation optionnels.get_table_schemaObtient le schéma détaillé d'une table Grist.filter_sql_queryExécute une requête SQL de filtrage sur une table Grist.execute_sql_queryExécute une requête SQL personnalisée sur un document Grist.download_document_sqliteTélécharge un document Grist au format SQLite.download_document_excelTélécharge un document Grist au format Excel.download_table_csvTélécharge une table Grist au format CSV.list_attachmentsListe les pièces jointes d'un document Grist.get_attachment_infoObtient les métadonnées d'une pièce jointe.download_attachmentTélécharge le contenu d'une pièce jointe.export_schemaExporte le schéma d'un document existant.
Structure tables
create_tableCrée une nouvelle table dans un document.modify_tableModifie les propriétés d'une table.create_columnCrée une nouvelle colonne dans une table.modify_columnModifie les propriétés d'une colonne.delete_columnSupprime une colonne d'une table.create_reference_columnCrée une colonne de référence qui affiche la colonne choisie de la table cible.validate_schemaValide un schéma sans le créer.create_schemaCrée un schéma complet avec tables, colonnes et relations.
Edit data and documents
add_grist_recordsAjoute des enregistrements à une table Grist.add_grist_records_safeAjoute des enregistrements avec validation préalable de la structure.update_grist_recordsMet à jour des enregistrements existants dans une table Grist.delete_grist_recordsSupprime des enregistrements d'une table Grist.modify_organizationModifie les propriétés d'une organisation.delete_organizationSupprime une organisation.modify_workspaceModifie les propriétés d'un espace de travail.delete_workspaceSupprime un espace de travail.modify_documentModifie les propriétés d'un document.delete_documentSupprime un document.move_documentDéplace un document vers un autre espace de travail.force_reload_documentForce le rechargement d'un document.delete_document_historySupprime l'historique d'un document, ne conservant que les dernières actions.upload_attachmentTéléverse une pièce jointe dans un document Grist.
Create
create_workspaceCrée un nouvel espace de travail dans une organisation.create_documentCrée un nouveau document dans un espace de travail.
Access rights and webhooks
list_organization_accessListe les utilisateurs ayant accès à une organisation.modify_organization_accessModifie l'accès d'un utilisateur à une organisation.list_workspace_accessListe les utilisateurs ayant accès à un espace de travail.modify_workspace_accessModifie l'accès d'un utilisateur à un espace de travail.list_document_accessListe les utilisateurs ayant accès à un document.modify_document_accessModifie l'accès d'un utilisateur à un document.list_webhooksListe les webhooks d'un document Grist.create_webhookCrée un webhook pour un document Grist.modify_webhookModifie un webhook existant.delete_webhookSupprime un webhook.clear_webhook_queueVide la file d'attente des webhooks pour un document.
Before connecting your data
- The assistant acts with your API key: it can do anything you can do in Grist, including deleting. Use a key from an account with suitable permissions.
- SQL queries are read-only.
- In HTTP mode, the server does not authenticate its clients: keep it on 127.0.0.1 or behind an authenticated proxy.
- Re-running a schema creation creates nothing twice: existing tables are left untouched.
Related projects
Widgets Grist
Widgets that turn a Grist document into a business application: map, planning, form, workload (in French).
GristCoder
An MCP server to build widgets and pages directly in the document.
Forum thread
Questions, feedback and announcements, on the French-speaking Grist forum.
Grist's official MCP server
Documentation of the Grist Labs server.