使用说明
项目简介
ConnectWise API 网关 MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,专注于简化与 ConnectWise Manage API 的集成和交互。它充当 LLM 客户端与 ConnectWise API 之间的桥梁,提供了便捷的 API 发现、执行和管理能力,旨在提升开发者和 AI 助手使用 ConnectWise API 的效率。
主要功能点
- API 发现: 通过关键词或自然语言搜索 ConnectWise Manage API 的可用接口。
- 简化 API 执行: 使用友好的参数处理方式执行 ConnectWise API 调用,并自动管理错误。
- 快速记忆系统: 保存和检索常用的 API 查询,优化工作流程,无需重复输入复杂的参数。
- 原始 API 访问: 支持发送自定义的原始 API 请求,提供更灵活的控制。
安装步骤
-
克隆仓库:
git clone https://github.com/jasondsmith72/CWM-API-Gateway-MCP.git cd CWM-API-Gateway-MCP -
安装 Python 包:
pip install -e . -
构建 API 数据库: 首次使用或 ConnectWise API 定义更新时,需要构建 API 数据库。请先下载 ConnectWise API 定义文件 'manage.json',然后运行以下命令:
python build_database.py path/to/manage.json请将 'path/to/manage.json' 替换为您实际的 'manage.json' 文件路径。
-
配置 API 凭据: 设置以下环境变量,用于 ConnectWise API 的身份验证:
CONNECTWISE_API_URL=https://your-instance.connectwise.com/v4_6_release/apis/3.0 # 您的 ConnectWise 实例 API URL CONNECTWISE_COMPANY_ID=your_company_id # 您的公司 ID CONNECTWISE_PUBLIC_KEY=your_public_key # 您的公共密钥 CONNECTWISE_PRIVATE_KEY=your_private_key # 您的私有密钥 CONNECTWISE_AUTH_PREFIX=yourprefix+ # 可选:默认为 "microtech+"
服务器配置
要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)集成,您需要在客户端的配置文件中添加服务器配置信息。以下是一个 'claude_desktop_config.json' 示例,展示了如何配置 'api_gateway' 服务器:
{ "mcpServers": { "api_gateway": { "command": "python", "args": ["path/to/api_gateway_server.py"], "env": { "CONNECTWISE_API_URL": "https://your-instance.connectwise.com/v4_6_release/apis/3.0", "CONNECTWISE_COMPANY_ID": "your_company_id", "CONNECTWISE_PUBLIC_KEY": "your_public_key", "CONNECTWISE_PRIVATE_KEY": "your_private_key", "CONNECTWISE_AUTH_PREFIX": "yourprefix+" } } } }
配置参数说明:
- server name: 'api_gateway' (服务器名称,可以自定义)
- command: 'python' (运行服务器的命令)
- args: '["path/to/api_gateway_server.py"]' (服务器启动脚本路径,请将 'path/to/api_gateway_server.py' 替换为实际路径)
- env: 环境变量配置,包含 ConnectWise API 凭据,请根据您的实际信息填写。
基本使用方法
服务器启动后,MCP 客户端可以通过 JSON-RPC 协议调用服务器提供的工具 (Tools) 来与 ConnectWise API 交互。
常用工具示例:
- 'search_api_endpoints(query)': 根据关键词 'query' 搜索 API 接口。例如,搜索 "tickets" 相关的接口。
- 'natural_language_api_search(query)': 使用自然语言 'query' 搜索 API 接口。例如,搜索 "find all open service tickets"。
- 'execute_api_call(path, method, params, data)': 执行 API 调用。例如,获取打开的服务单:'execute_api_call("/service/tickets", "GET", {"conditions": "status/name='Open'"})'。
- 'list_fast_memory()': 列出所有保存在快速记忆中的 API 查询。
- 'save_to_fast_memory(path, method, description, params, data)': 将 API 查询保存到快速记忆,方便后续快速调用。
更多工具和使用示例请参考仓库 README 文档。
信息
分类
商业系统