Skip to main content

MCP server for ZhipuAI GLM — chat and text embeddings

Project description

glm-mcp

MCP server for ZhipuAI GLM — exposes chat and text embeddings to Claude Code (and any MCP-compatible client) via the OpenAI-compatible API.

Tools

Tool Description
glm_chat Text completion — default model glm-4-flash, pass model= to use any GLM chat model (e.g. glm-5). Supports single-turn and multi-turn (messages= parameter).
glm_embed Text embeddings — default model embedding-3, pass model= to override
glm_usage_summary Query token usage from ~/.glm-mcp/usage.jsonl. Parameters: days (default 7), model (optional filter). Returns period, total tokens, by_tool, by_model.

Quick Start

Install via uvx (recommended)

uvx glm-mcp

Add to Claude Code

Add to ~/.claude.json:

{
  "mcpServers": {
    "glm-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": ["glm-mcp"],
      "env": {
        "GLM_API_KEY": "your_api_key_here"
      }
    }
  }
}

Get your API key at https://open.bigmodel.cn/.

Run from source

git clone https://github.com/sky-zhang01/glm-mcp
cd glm-mcp
uv sync
GLM_API_KEY=your_key uv run glm-mcp

Environment Variables

Variable Required Default Description
GLM_API_KEY Yes ZhipuAI API key
GLM_BASE_URL No https://open.bigmodel.cn/api/paas/v4/ API endpoint override
GLM_MCP_LOG_DIR No ~/.glm-mcp/ Directory for usage.jsonl token log

Token Usage Logging

Each tool call appends a JSON line to ~/.glm-mcp/usage.jsonl:

{"timestamp": "...", "tool": "glm_chat", "model": "glm-4-flash", "input_tokens": 13, "output_tokens": 15}

Development

uv sync --dev
uv run pytest --cov=glm_mcp --cov-report=term-missing

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

glm_mcp-0.4.0.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

glm_mcp-0.4.0-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file glm_mcp-0.4.0.tar.gz.

File metadata

  • Download URL: glm_mcp-0.4.0.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for glm_mcp-0.4.0.tar.gz
Algorithm Hash digest
SHA256 113f7149df0472e4589917a90247fa74fddc1aa20dc80d0b5647dc039b0e4141
MD5 3c5704f4b3f3982e57e86edd60a3bfa0
BLAKE2b-256 06433490af71fc0d791c3a032b52f4e510fc1ea7b38c22073d242ccce3e20d7b

See more details on using hashes here.

File details

Details for the file glm_mcp-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: glm_mcp-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for glm_mcp-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ac53bf676787142163ed03ade9e3f18d72b45a89a71f049495b7103a95891f11
MD5 e9787e7a69c2ddfc190c6de86ee3bba1
BLAKE2b-256 fa10e0cbd36d09082f103da0b4e7ee911917238ea0b2b1458a098dc996eead9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page