MCP Server for GLM-4.5V integration with Claude Code
Project description
MCP Server GLM Vision
A Model Context Protocol (MCP) server that integrates GLM-4.5V from Z.AI with Claude Code.
Features
- Image Analysis: Analyze images using GLM-4.5V's vision capabilities
- Local File Support: Analyze local image files or URLs
- Configurable: Easy setup with environment variables
Installation
Prerequisites
- Python 3.10 or higher
- GLM API key from Z.AI
- Claude Code installed
Setup
-
Clone or create the project directory:
cd /path/to/your/project
-
Create and activate virtual environment:
python3 -m venv env source env/bin/activate # On Windows: env\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt # or with uv (recommended) uv pip install -r requirements.txt
-
Set up environment variables:
cp .env.example .env # Edit .env with your GLM API key from Z.AI
-
Add the server to Claude Code:
# Using uv (recommended) uv run mcp install -e . --name "GLM Vision Server" # Or manually add to Claude Desktop configuration: claude mcp add-json --scope user glm-vision '{ "type": "stdio", "command": "/path/to/your/project/env/bin/python", "args": ["/path/to/your/project/glm-vision.py"], "env": {"GLM_API_KEY": "your_api_key_here"} }'
Configuration
Set these environment variables in your .env file:
| Variable | Description | Default |
|---|---|---|
GLM_API_KEY |
Your GLM API key from Z.AI | (required) |
GLM_API_BASE |
GLM API base URL | https://api.z.ai/api/paas/v4 |
GLM_MODEL |
Model name to use | glm-4.5v |
Usage
Available Tools
glm-vision
Analyze an image file using GLM-4.5V's vision capabilities. Supports both local files and URLs.
Parameters:
image_path(required): Local file path or URL of the image to analyzeprompt(required): What to ask about the imagetemperature(optional): Response randomness (0.0-1.0, default: 0.7)thinking(optional): Enable thinking mode to see model's reasoning process (default: false)max_tokens(optional): Maximum tokens in response (max 64K, default: 2048)
Example:
Use the glm-vison tool with:
- image_path: "/path/to/your/image.jpg"
- prompt: "Describe what you see in this image"
Testing
Test the server using the MCP Inspector:
# With uv
uv run python glm-vision.py
# Or with python
python glm-vision.py
Development
Running Tests
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black .
isort .
# Type checking
mypy glm-vision.py
Troubleshooting
- API Key Issues: Make sure your
GLM_API_KEYis correctly set in the environment - Connection Problems: Check your internet connection and API endpoint
- Model Errors: Verify that the model name (
GLM_MODEL) is correct and available
License
MIT License - see LICENSE file for details.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
Support
For issues related to the GLM API, contact Z.AI support. For MCP server issues, please create an issue in the repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_glm_vision-1.0.1.tar.gz.
File metadata
- Download URL: mcp_server_glm_vision-1.0.1.tar.gz
- Upload date:
- Size: 5.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
95fa17f3c66d645e248e5394e6441fb2b3a94fe619eebbc54e260132c72ababe
|
|
| MD5 |
56c8d30a8e638a7e2aa9a4379dd86880
|
|
| BLAKE2b-256 |
1b44e922d2fcb4cef58d4f633892b2005b7f646993f59b91d739fdcc65fa594e
|
Provenance
The following attestation bundles were made for mcp_server_glm_vision-1.0.1.tar.gz:
Publisher:
publish.yml on danilofalcao/mcp-server-glm-vision
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_glm_vision-1.0.1.tar.gz -
Subject digest:
95fa17f3c66d645e248e5394e6441fb2b3a94fe619eebbc54e260132c72ababe - Sigstore transparency entry: 530195385
- Sigstore integration time:
-
Permalink:
danilofalcao/mcp-server-glm-vision@32d676d6482a402de3860c65a3d2dd55f5367433 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/danilofalcao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@32d676d6482a402de3860c65a3d2dd55f5367433 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file mcp_server_glm_vision-1.0.1-py3-none-any.whl.
File metadata
- Download URL: mcp_server_glm_vision-1.0.1-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cfcd1517fa3e7894d74358a11a58259c3ce45887f75484b4976222f16299b365
|
|
| MD5 |
51f75c510e0705be1f8e2f59fee90b1d
|
|
| BLAKE2b-256 |
c0a327b8951e64a1437e50cd9ac771e4137aa84c777a3c21139baf7811f1fe56
|
Provenance
The following attestation bundles were made for mcp_server_glm_vision-1.0.1-py3-none-any.whl:
Publisher:
publish.yml on danilofalcao/mcp-server-glm-vision
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_glm_vision-1.0.1-py3-none-any.whl -
Subject digest:
cfcd1517fa3e7894d74358a11a58259c3ce45887f75484b4976222f16299b365 - Sigstore transparency entry: 530195396
- Sigstore integration time:
-
Permalink:
danilofalcao/mcp-server-glm-vision@32d676d6482a402de3860c65a3d2dd55f5367433 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/danilofalcao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@32d676d6482a402de3860c65a3d2dd55f5367433 -
Trigger Event:
workflow_dispatch
-
Statement type: