ModelScope MCP服务器
](https://pypi.org/project/modelscope-mcp-server) ](https://pepy.tech/projects/modelscope-mcp-server) ](https://github.com/modelscope/modelscope-mcp-server/blob/main/Dockerfile) ](https://github.com/modelscope/modelscope-mcp-server/pkgs/container/modelscope-mcp-server) 
英语| 中文
使人工智能代理和聊天机器人能够直接访问 模型范围的丰富的人工智能资源生态系统。从生成图像到发现前沿模型、数据集、应用程序和研究论文,这个MCP服务器使ModelScope的大量工具和服务可以通过简单的对话交互访问。
如需快速试用或托管选项,请访问 项目页面 位于ModelScope MCP广场。
✨ 特性
- 🎨 AI图像生成 -根据提示生成图像(文本到图像)或使用AIGC模型转换现有图像(图像到图像)
- 🔍 资源发现 -使用高级过滤选项搜索和发现ModelScope资源,包括模型、数据集、工作室(AI应用程序)、研究论文和MCP服务器
- 📋 资源详细信息 -获取特定资源的全面详细信息
- 📖 文档搜索 _(即将推出)_ -ModelScope文档和文章的语义搜索
- 🚀 Gradio API集成 _(即将推出)_ -调用任何预配置的ModelScope工作室公开的Gradio API
- 🔐 上下文信息 -访问当前操作上下文,包括经过身份验证的用户信息和环境详细信息
🚀 快速开始
1.获取您的API代币
- 访问 模型范围 并登录您的帐户
- 引导到 \[主页\]→ \[访问令牌\] 检索或创建API令牌
📖 有关详细说明,请参阅 ModelScope令牌文档
2.与MCP客户端集成
将以下JSON配置添加到MCP客户端的配置文件中:
{
"mcpServers": {
"modelscope-mcp-server": {
"command": "uvx",
"args": ["modelscope-mcp-server"],
"env": {
"MODELSCOPE_API_TOKEN": "your-api-token"
}
}
}
}或者,您可以使用预构建的Docker镜像:
{
"mcpServers": {
"modelscope-mcp-server": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "MODELSCOPE_API_TOKEN",
"ghcr.io/modelscope/modelscope-mcp-server"
],
"env": {
"MODELSCOPE_API_TOKEN": "your-api-token"
}
}
}
}请参阅 MCP JSON配置标准 了解更多详情。
这种格式在MCP生态系统中被广泛采用:
- 樱桃工作室:参见 Cherry Studio MCP配置
- 克劳德桌面:用途
~/.claude/claude_desktop_config.json - 光标:用途
~/.cursor/mcp.json - VS代码:使用工作区
.vscode/mcp.json - 其他客户:许多MCP兼容应用程序都遵循此标准
🛠️ 发展
环境设置
- 克隆和设置:
git clone https://github.com/modelscope/modelscope-mcp-server.git
cd modelscope-mcp-server
uv sync- 激活环境 (或使用IDE):
source .venv/bin/activate # Linux/macOS- 设置您的API令牌 (有关令牌设置,请参阅快速入门部分):
export MODELSCOPE_API_TOKEN="your-api-token"
# Or create .env file: echo 'MODELSCOPE_API_TOKEN="your-api-token"' > .env运行演示脚本
运行一个快速演示来探索服务器的功能:
uv run python demo.py使用 --full 综合功能演示标志:
uv run python demo.py --full在本地运行服务器
# Standard stdio transport (default)
uv run modelscope-mcp-server
# Streamable HTTP transport for web integration
uv run modelscope-mcp-server --transport http
# HTTP/SSE transport with custom port (default: 8000)
uv run modelscope-mcp-server --transport [http/sse] --port 8080对于HTTP/SSE模式,请在MCP客户端配置中使用本地URL进行连接:
{
"mcpServers": {
"modelscope-mcp-server": {
"url": "http://127.0.0.1:8000/mcp/"
}
}
}您还可以使用以下命令调试服务器 MCP检查员 工具:
# Run in UI mode with stdio transport (can switch to HTTP/SSE in the Web UI as needed)
npx @modelcontextprotocol/inspector uv run modelscope-mcp-server
# Run in CLI mode with HTTP transport (can do operations across tools, resources, and prompts)
npx @modelcontextprotocol/inspector --cli http://127.0.0.1:8000/mcp/ --transport http --method tools/list测试
# Run all tests
uv run pytest
# Run specific test file
uv run pytest tests/test_search_papers.py
# With coverage report
uv run pytest --cov=src --cov-report=html🔄 持续集成
此项目使用GitHub Actions实现在每个推送和拉取请求上运行的自动化CI/CD工作流:
自动检查
- ✨ 棉绒 -使用预提交挂钩进行代码格式化、linting和样式检查
- 🧪 测试 -对所有支持的Python版本进行全面测试
- 🔍 CodeQL -安全漏洞扫描和代码质量分析
- 🔒 Gitleaks -检测密码、API密钥和令牌等机密
地方发展检查
在提交PR之前,在本地运行相同的检查:
# Install and run pre-commit hooks
uv run pre-commit install
uv run pre-commit run --all-files
# Run tests
uv run pytest在中监视CI状态 操作选项卡.
📦 发布管理
该项目使用GitHub Actions进行自动发布管理。要创建新版本,请执行以下操作:
- 更新版本 使用凹凸脚本:
uv run python scripts/bump_version.py [patch|minor|major]
# Or set specific version: uv run python scripts/bump_version.py set 1.2.3.dev1- 提交并标记 (按照脚本的输出说明进行操作):
git add src/modelscope_mcp_server/_version.py
git commit -m "chore: bump version to v{version}"
git tag v{version} && git push origin v{version}- 自动发布 -GitHub操作将自动:
- 创建新 - 将包发布到 PyPI存储库 - 构建并推送Docker镜像到
🤝 贡献
我们欢迎捐款!请确保您的PR:
- 包括相关测试并通过所有CI检查
- 更新新功能的文档
- 遵循常规提交格式
📚 参考文献
- 模型上下文协议 -MCP官方文件
- FastMCP v2 -高性能MCP框架
- MCP示例服务器 -社区服务器示例
📜 许可证
该项目根据 Apache许可证(2.0版).
