Gel

Provides tools and resources for coding agents to interact with the Gel database, including automatic project configuration for query builders and ORMs.

Gel MCP server

This MCP server provides tools and resources that help coding agents use the Gel database.

Available tools

  1. execute_query: run a query against the Gel instance configured in the current project. Supports arguments and globals.
  2. try_query: run a query in a transaction that gets rolled back in the end, preventing actual data modification.
  3. list_examples and fetch_example: access code examples for advanced workflows such as configuring the AI extension.
  4. list_rules and fetch_rule: in case you forgot to configure Gel rules in your text editor, the agent can access them like this, too.

Install

If at any point you get lost, refer to this repository to see an example config layout for your editor.

Cursor

  1. Add the following to .cursor/mcp.json:
{
  "mcpServers": {
    "gel": {
      "command": "uvx",
      "args": [
        "--refresh",
        "--python",
        "3.13",
        "--directory",
        ".",
        "--from",
        "git+https://github.com/geldata/gel-mcp.git",
        "gel-mcp"
      ]
    }
  }
}
  1. Open MCP settings, e.g. via Command Palette: View: Open MCP Settings and toggle Gel in there.

Claude Code

Add the following to .mcp.json:

{
  "mcpServers": {
    "gel": {
      "command": "uvx",
      "args": [
        "--refresh",
        "--python",
        "3.13",
        "--directory",
        ".",
        "--from",
        "git+https://github.com/geldata/gel-mcp.git",
        "gel-mcp"
      ]
    }
  }
}

VSCode with Copilot

Add the following to .vscode/mcp.json:

{
  "servers": {
    "gel": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--refresh",
        "--python",
        "3.13",
        "--directory",
        ".",
        "--from",
        "git+https://github.com/geldata/gel-mcp.git",
        "gel-mcp"
      ]
    }
  }
}

Windsurf

Follow Windsurf Cascade's documentation to open global mcp_config.json via the clicky interface. Add the following:

{
  "mcpServers": {
    "gel": {
      "command": "uvx",
      "args": [
        "--refresh",
        "--python",
        "3.13",
        "--directory",
        ".",
        "--from",
        "git+https://github.com/geldata/gel-mcp.git",
        "gel-mcp"
      ]
    }
  }
}

Zed

Add the following to .zed/settings.json:

{
  "context_servers": {
    "gel": {
      "source": "custom",
      "command": {
        "path": "uvx",
        "args": [
          "--refresh",
          "--python",
          "3.13",
          "--directory",
          ".",
          "--from",
          "git+https://github.com/geldata/gel-mcp.git",
          "gel-mcp"
        ],
        "env": {}
      }
    }
  }
}

Develop

Clone the repository and create the virtual environment:

uv sync

Open the server in the MCP Inspector:

mcp dev src/gel_mcp/server.py

Related Servers