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).

Tools

Functions exposed to the LLM to take actions

NameDescription
grist_get_workspaces

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_documents

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_tables

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_sql

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_records

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_records

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_schema

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_pages

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_document

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_webhooks

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_help

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