Skip to main content
Glama
twentycrm-graphql-mcp

twentycrm-graphql-mcp

by decode-data

twentycrm-graphql-mcp

An MCP (Model Context Protocol) server for Twenty CRM that exposes GraphQL tools to AI assistants.

Usage

Run directly with npx (no install required):

TWENTY_API_TOKEN=your_token npx twentycrm-graphql-mcp

Related MCP server: twenty-mcp-server

Environment Variables

Variable

Required

Description

TWENTY_API_TOKEN

Yes

Your Twenty API token (Settings > API & Webhooks)

TWENTY_GQL_URL

No

Your Twenty instance's GraphQL endpoint. For cloud-hosted, it's https://[your-org].twenty.com/graphql. For self-hosted, it's https://[your-domain]/graphql.

Claude Desktop Configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "twentycrm": {
      "command": "npx",
      "args": ["-y", "twentycrm-graphql-mcp"],
      "env": {
        "TWENTY_API_TOKEN": "your_token_here",
        "TWENTY_GQL_URL": "https://your-instance.com/graphql"
      }
    }
  }
}

Deploying to Google Cloud Run

Note: This deployment is not currently active. The recommended way to use this package is via npx as described above.

The terraform/ directory contains infrastructure-as-code to deploy this as a hosted MCP server on Cloud Run (GCP project decodedata-crm, region europe-west2).

Prerequisites

  • Terraform >= 1.5

  • gcloud CLI authenticated with the decodedata-crm project

  • Docker

Resources created

Resource

Description

Artifact Registry repo

europe-west2-docker.pkg.dev/decodedata-crm/mcp/

Cloud Run service

twentycrm-mcp — publicly accessible, auth enforced by app

Secret Manager secrets

twenty-api-token, mcp-auth-token

Service account

twentycrm-mcp@decodedata-crm.iam.gserviceaccount.com

Deploy

# 1. Build and push the Docker image
gcloud auth configure-docker europe-west2-docker.pkg.dev

IMAGE=europe-west2-docker.pkg.dev/decodedata-crm/mcp/twentycrm-graphql-mcp:latest
docker build -t $IMAGE .
docker push $IMAGE

# 2. Apply infrastructure
cd terraform
terraform init
terraform apply \
  -var="image=europe-west2-docker.pkg.dev/decodedata-crm/mcp/twentycrm-graphql-mcp:latest" \
  -var="twenty_gql_url=https://crm.decodedata.io/graphql"

Secrets

After first apply, populate the secrets in GCP Secret Manager:

# Twenty API token (from Twenty Settings > API & Webhooks)
echo -n "your-twenty-api-token" | gcloud secrets versions add twenty-api-token --data-file=-

# MCP bearer token (any strong random string — required by clients to call the service)
echo -n "your-mcp-auth-token" | gcloud secrets versions add mcp-auth-token --data-file=-

Destroy

cd terraform
terraform destroy \
  -var="image=europe-west2-docker.pkg.dev/decodedata-crm/mcp/twentycrm-graphql-mcp:latest" \
  -var="twenty_gql_url=https://crm.decodedata.io/graphql"

HTTP server

When deployed, the service exposes:

  • GET /sse — SSE endpoint for MCP clients (requires Authorization: Bearer <mcp-auth-token>)

  • POST /messages — MCP message endpoint

  • GET /health — Health check (unauthenticated)

Available Tools

inspect_schema

Lists all objects and fields in your workspace, including custom fields.

execute_graphql

Run any raw GraphQL query or mutation against Twenty.

Parameters:

  • query (string, required): The GraphQL query or mutation

  • variables (object, optional): Variables for the query

execute_metadata

Run any raw GraphQL query or mutation against the Twenty Metadata API (schema management: custom objects, fields, relations).

Parameters:

  • query (string, required): The GraphQL query or mutation

  • variables (object, optional): Variables for the query

Available Tools

3 tools
execute_graphqlB

Run any raw GraphQL query or mutation against Twenty.

Inputs: query (required), variables.

execute_metadataA

Run any raw GraphQL query or mutation against the Twenty Metadata API (schema management: custom objects, fields, relations).

Inputs: query (required), variables.

inspect_schemaA

Lists all available objects and fields, including CUSTOM fields created in your workspace.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clear, distinct role: schema introspection, runtime data queries/mutations, and metadata schema management. Even though execute_graphql could theoretically run introspection, the dedicated inspect_schema tool removes ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun pattern: inspect_schema, execute_graphql, execute_metadata. The repeated execute prefix for the two raw query tools also reinforces their similarity without causing confusion.

    Tool Count5/5

    Three tools is appropriately minimal for a GraphQL gateway-style MCP server. Each tool covers a distinct need (schema discovery, data access, metadata management) and none feels redundant or extraneous.

    Completeness5/5

    The combination of raw GraphQL execution for both the standard API and metadata API covers the full CRUD/lifecycle surface of a Twenty CRM workspace, while inspect_schema supports discovery. There are no obvious dead ends because arbitrary queries and mutations can fill any domain-specific gap.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      A remote MCP server that connects Claude to a Twenty CRM workspace, enabling users to interact with CRM objects (People, Companies, Opportunities, and custom objects) through schema-driven tools for querying, creating, updating, and deleting records.
      1
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      A standalone MCP server that integrates with Twenty CRM to provide AI-powered CRM capabilities, enabling CRUD operations and real-time synchronization.
      215 npm
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      MCP server that exposes the Moloni ON GraphQL API to AI clients, providing a curated set of operations as typed and documented tools.
      -
    • A
      license
      B
      quality
      D
      maintenance
      MCP server for Microsoft Dynamics 365 Business Central, enabling AI assistants to perform CRUD operations, query data, and retrieve schemas via Business Central API v2.0.
      6
      1,934 npm
      MIT