connectwise-sell-mcp MCP 服务说明文档

connectwise-sell-mcp MCP 服务说明文档

1. 服务概述

一句话简介:ConnectWise Sell REST API的FastMCP HTTP服务器包装器,提供12个工具管理报价、行项目、标签、客户、条款、模板、经常性收入和税码

  • 服务名称:connectwise-sell-mcp
  • 版本号:最新版本(通过PyPI发布)
  • 开发者/提供方:Mfrostbutter
  • 协议类型:MCP (Model Context Protocol)

2. 核心功能

该MCP服务提供12个工具,分为三大类:

2.1 报价管理(5个工具)

  • list_quotes:列出所有报价
  • get_quote:获取特定报价的详细信息
  • get_quote_versions:获取报价的版本信息
  • copy_quote:从现有报价或模板复制创建新报价
  • update_quote:更新现有报价

2.2 报价详情(4个工具)

  • get_quote_items:获取报价中的行项目
  • get_quote_tabs:获取报价的标签页信息
  • get_quote_customers:获取报价关联的客户信息
  • get_quote_terms:获取报价的条款信息

2.3 参考数据(3个工具)

  • get_templates:获取报价模板列表
  • get_recurring_revenues:获取经常性收入项目
  • get_tax_codes:获取税码信息

3. 使用场景

该服务适合在以下情况下使用:

  • 报价管理:列出、查看和管理ConnectWise Sell中的报价
  • 报价创建:从模板或现有报价创建新报价(注意:不能从头创建)
  • 报价更新:更新现有报价的详细信息、行项目和条款
  • 客户管理:查看和管理报价关联的客户信息
  • 模板浏览:浏览可用的报价模板,选择合适的模板创建报价
  • 财务分析:查看经常性收入和税码信息,进行财务分析

4. 接入方式

4.1 服务端点

该服务支持两种传输模式:

模式设置方式适用场景
HTTP(默认)MCP_TRANSPORT=http持久服务器,跨会话或团队成员共享
stdioMCP_TRANSPORT=stdioCursor、VS Code、Zed、Continue等stdio客户端

4.2 认证与权限

该服务使用ConnectWise Sell API的HTTP Basic认证:

  • 认证方式:HTTP Basic Auth
  • 凭据格式:base64(accessKey+username:password)
  • API用户:必须是Sell API用户(非普通用户)

4.3 数据格式

服务使用以下数据格式:

  • 请求格式:JSON
  • 响应格式:JSON
  • API基础URL:https://sellapi.quosalsell.com(可自定义)

4.4 环境变量配置

变量名必需默认值说明
SELL_ACCESS_KEY-从Sell URL参数中获取的访问密钥
SELL_USERNAME-Sell API用户名(必须是API用户)
SELL_PASSWORD-Sell API密码
SELL_BASE_URLhttps://sellapi.quosalsell.comAPI基础URL(可自定义)
MCP_AUTH_TOKEN-MCP客户端认证的Bearer令牌
SELL_MCP_PORT8086HTTP监听端口

4.5 服务器配置

HTTP模式配置(Claude Desktop、Claude Code):

{ "mcpServers": { "connectwise-sell": { "type": "http", "url": "http://localhost:8086/mcp", "headers": { "Authorization": "Bearer your_token_here" } } } }

stdio模式配置(Cursor、VS Code、Zed、Continue):

{ "mcpServers": { "connectwise-sell": { "command": "uvx", "args": ["connectwise-sell-mcp"], "env": { "SELL_ACCESS_KEY": "your_access_key", "SELL_USERNAME": "your_api_username", "SELL_PASSWORD": "your_password", "MCP_TRANSPORT": "stdio" } } } }

5. 接口定义

工具名称功能描述参数说明
list_quotes列出所有报价可选过滤参数
get_quote获取特定报价详情quote_id: 报价ID
get_quote_versions获取报价版本信息quote_id: 报价ID
copy_quote复制创建新报价source_quote_id: 源报价ID或模板ID
update_quote更新报价quote_id: 报价ID, update_data: 更新数据
get_quote_items获取报价行项目quote_id: 报价ID
get_quote_tabs获取报价标签页quote_id: 报价ID
get_quote_customers获取报价客户quote_id: 报价ID
get_quote_terms获取报价条款quote_id: 报价ID
get_templates获取报价模板列表无参数
get_recurring_revenues获取经常性收入可选过滤参数
get_tax_codes获取税码信息可选过滤参数

6. 快速开始

6.1 环境要求

  • Python 3.8或更高版本
  • ConnectWise Sell账户和API凭据
  • uvx(推荐)或pip包管理器

6.2 获取API凭据

如何找到访问密钥:

  1. 登录ConnectWise Sell
  2. 查看URL,找到类似accessKey=XXXXXXXX的参数
  3. 该值即为您的SELL_ACCESS_KEY

6.3 安装步骤

方法1:使用uvx安装(推荐)

uvx connectwise-sell-mcp

方法2:使用pip安装

pip install connectwise-sell-mcp connectwise-sell-mcp

方法3:从源码安装

git clone https://github.com/Mfrostbutter/connectwise-sell-mcp cd connectwise-sell-mcp cp .env.example .env # 编辑.env文件,填入SELL_*凭据 python3 -m venv venv source venv/bin/activate # Linux/macOS # 或 venv\Scripts\activate # Windows pip install -r requirements.txt python3 server.py # 验证:curl http://localhost:8086/health

6.4 配置环境变量

创建.env文件:

SELL_ACCESS_KEY=your_access_key_here SELL_USERNAME=your_api_username SELL_PASSWORD=your_api_password MCP_TRANSPORT=http SELL_MCP_PORT=8086

6.5 使用示例

示例1:列出最近的报价 "列出我最近的报价" 示例2:从模板创建新报价 "从模板创建一个新报价,使用模板ID 12345" 示例3:查看报价详情 "获取报价ID 67890的详细信息" 示例4:更新报价 "更新报价ID 67890,将状态改为已发送"

7. 注意事项

重要提醒

  • 报价创建限制:报价不能通过Sell API从头创建,新报价必须从现有报价或模板复制。使用get_templates浏览模板,然后使用copy_quote创建
  • API用户要求:必须是Sell API用户,普通用户凭据无法使用
  • 认证格式:服务器自动构造复合凭据 base64(accessKey+username:password)

传输模式选择

  • HTTP模式:适合持久服务器,可跨会话或团队成员共享
  • stdio模式:适合Cursor、VS Code、Zed、Continue等stdio客户端,服务器按会话生成,无端口,无持久进程

作为系统服务运行

创建systemd服务文件/etc/systemd/system/connectwise-sell-mcp.service

[Unit] Description=ConnectWise Sell MCP After=network.target [Service] User=mcp WorkingDirectory=/opt/connectwise-sell-mcp EnvironmentFile=/opt/connectwise-sell-mcp/.env ExecStart=/opt/connectwise-sell-mcp/venv/bin/python3 server.py Restart=always [Install] WantedBy=multi-user.target

相关项目

  • connectwise-mcp:ConnectWise Manage MCP服务器(工单、协议、公司、时间、财务)

总结

connectwise-sell-mcp是一个功能完整的ConnectWise Sell API包装器,提供了12个工具覆盖报价管理的各个方面。通过支持HTTP和stdio两种传输模式,它可以灵活地集成到各种MCP客户端中。需要注意的是,由于Sell API的限制,新报价必须从模板或现有报价复制创建,这要求用户在使用前先了解可用的模板。