Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GRIST_API_KEYYesYour Grist API key, used for authentication.
GRIST_BASE_URLYesThe base URL for your Grist instance (e.g., https://docs.getgrist.com).

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
grist_get_workspacesA

List workspaces with filtering. Use browse mode ({limit: 20}) to see all, or search mode ({name_contains: "Sales"}) to filter. Detail levels: summary

Example: {"limit":20,"detail_level":"summary"}

Use grist_help({tools:["grist_get_workspaces"]}) for full schema.

grist_get_documentsC

Find documents by ID (fastest), name search, workspace filter, or browse all. Detail levels: summary (name, id, workspace, access ~50 tokens/doc) or d

Example: {"docId":"qBbArddFDSrKd2jpv3uZTj"}

Use grist_help({tools:["grist_get_documents"]}) for full schema.

grist_get_tablesC

Get table structure and schema. Detail levels: names (table IDs only ~20 tokens/table), columns (+ column names ~50 tokens/table), or full_schema (+ t

Example: {"docId":"abc123","detail_level":"names"}

Use grist_help({tools:["grist_get_tables"]}) for full schema.

grist_query_sqlA

Execute SQL queries for JOINs, aggregations, and complex filters. Use grist_get_records for single-table queries without SQL. Supports parameterized q

Example: {"docId":"abc123","sql":"SELECT c.Name, o.Total FROM Customers c JOIN Orders o ON c.id = o.Customer"}

Use grist_help({tools:["grist_query_sql"]}) for full schema.

grist_get_recordsA

Fetch records with filters. No SQL needed. Use grist_query_sql for JOINs and aggregations. Filter syntax: {"Status": "Active"}, {"Priority": 1}, {"IsA

Example: {"docId":"abc123","tableId":"Contacts","filters":{"Status":"Active"}}

Use grist_help({tools:["grist_get_records"]}) for full schema.

grist_manage_recordsB

CRUD for records: add, update, delete, upsert. Batched operations execute sequentially for cross-table dependencies. Use natural formats (no "L" prefi

Example: {"docId":"abc123","operations":[{"action":"add","tableId":"Contacts","records":[{"Name":"Alice","Email":"alice@example.com"}]}]}

Use grist_help({tools:["grist_manage_records"]}) for full schema.

grist_manage_schemaC

Batch schema operations: tables (create/rename/delete), columns (add/modify/remove), and summary tables. Ref columns need refTable. Summary tables aut

Use grist_help({tools:["grist_manage_schema"]}) for full schema.

grist_manage_pagesC

Declarative page layouts with cols/rows splits. create_page returns sectionIds; use link_widgets to connect. Actions: create_page, set_layout, link_wi

Use grist_help({tools:["grist_manage_pages"]}) for full schema.

grist_create_documentA

Creates a new Grist document in a workspace. Optionally fork an existing document to copy its structure and data. Returns the new document ID and URL.

Example: {"name":"Customer CRM","workspaceId":123}

Use grist_help({tools:["grist_create_document"]}) for full schema.

grist_manage_webhooksB

Batch webhook CRUD for real-time notifications. list and clear_queue must be solo operations.

Example: {"docId":"abc123","operations":[{"action":"create","fields":{"url":"https://api.example.com/hook","tableId":"Tasks","eventTypes":["add"]}}]}

Use grist_help({tools:["grist_manage_webhooks"]}) for full schema.

grist_helpA

Discover available tools and get detailed documentation with JSON schemas. Call without params to list all tools. Use tools param for full docs + sche

Example: {}

Use grist_help({tools:["grist_help"]}) for full schema.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gwhthompson/grist-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server