Skip to content

geml

CLI and parser for GEML, a plain-text document format where every block has an id — so an AI patches one block instead of rewriting the file; edits, reference checks and rollbacks are all per block. Ships an MCP server.

build.protocol_tooling.mcp#geml#general expressive markup language#mcp#mcp-server#markup#markdown#parser#cli#document#typed-block

Install geml in your MCP client

geml is a Model Context Protocol server. Add it to your MCP client config once, restart, and the server's tools become available to your AI assistant. The same JSON snippet below works across all four major clients — only the config file path differs.

  1. Locate your client's MCP config file.
    • Cursor: ~/.cursor/mcp.json
    • Claude Desktop (macOS): ~/Library/Application Support/Claude/claude_desktop_config.json
    • Claude Desktop (Windows): %APPDATA%\Claude\claude_desktop_config.json
    • VS Code: Settings → Extensions → MCP
    • Windsurf: Settings → MCP Servers
  2. Add geml to the mcpServers map — paste the snippet below into your config file. If you already have other MCP servers, merge the entry into the existing mcpServers object.
  3. Restart your client so it picks up the new server.
  4. Verify — ask the assistant to list available tools; geml's tools should appear.
{
  "mcpServers": {
    "geml": {
      "command": "npx",
      "args": [
        "-y",
        "@geml/geml"
      ]
    }
  }
}

Install geml in Cursor

Open ~/.cursor/mcp.json in your editor, paste the snippet above into mcpServers, save, and restart Cursor. geml will show up in the assistant's tool list on next launch.

Install geml in Claude Desktop (macOS)

Open ~/Library/Application Support/Claude/claude_desktop_config.json in your editor, paste the snippet above into mcpServers, save, and restart Claude Desktop (macOS). geml will show up in the assistant's tool list on next launch.

Install geml in Claude Desktop (Windows)

Open %APPDATA%\Claude\claude_desktop_config.json in your editor, paste the snippet above into mcpServers, save, and restart Claude Desktop (Windows). geml will show up in the assistant's tool list on next launch.

Install geml in VS Code

Open Settings → Extensions → MCP in your editor, paste the snippet above into mcpServers, save, and restart VS Code. geml will show up in the assistant's tool list on next launch.

npm package: @geml/geml

Transport

geml supports the following MCP transports. Most AI clients use stdio by default for locally-installed servers.

stdio

From the geml README

<p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/geml-spec/geml/main/docs/assets/logo/geml-logo-dark.svg"> <img src="https://raw.githubusercontent.com/geml-spec/geml/main/docs/assets/logo/geml-logo-light.svg" alt="GEML" width="300"> </picture> </p> # @geml/geml The reference parser, validator, renderer, and CLI for **GEML** (General Expressive Markup Language) — **one format, two readers.** People and AI agents co-write the same document: plain text that stays legible for people, and **addressable, verifiable, and versioned** for machines. Every kind of structured content — code, tables, diagrams, math, callouts, metadata — rides on **one** primitive, the typed block: ``` === code {#hello lang=python} print(

Other Model Context Protocol servers in the same space as geml. Each one adds different capabilities to your AI assistant — pick based on the data sources or workflows you need.

Browse the full MCP server directory or use Stork's one-line install to let your agent pick the right server automatically.