携带MCP服务器
模型上下文协议(MCP)服务器与Bring Shopping Lists API集成,允许人工智能助手通过自然语言管理购物清单。
免责声明: 此项目使用未公开记录或不受支持的非官方Bring API。这些API可能会在没有通知的情况下更改,从而可能破坏功能。使用风险自负。
概述
该项目在TypeScript中实现了一个全功能的模型上下文协议(MCP)服务器,该服务器连接到Bring Shopping Lists API。它使Claude、ChatGPT等人工智能助手能够通过标准化协议与您的Bring购物清单进行交互。
特性
- MCP协议支持:实施模型上下文协议,与人工智能助手无缝集成
- 标准运输:与Claude兼容,适用于桌面和其他启用MCP的客户端
- 引入API集成:使用以下功能完成Bring Shopping List API集成:
- 列出所有购物清单 - 从购物清单中获取商品 - 将食谱项目添加到购物清单中 - 删除特定项目或清除整个购物清单 - 获取列表项的详细信息 - 查看有权访问购物清单的所有用户
先决条件
- 携带帐户(电子邮件和密码)
- 带API密钥
安装
- 克隆存储库:
git clone
cd bring-mcp-server- 安装依赖项:
npm install- 创建一个
.env项目根目录中的文件,包含以下变量:
BRING_EMAIL=your_bring_account_email
BRING_PASSWORD=your_bring_account_password
BRING_API_KEY=your_bring_api_key- 构建项目:
npm run build用法
启动服务器
使用以下命令启动MCP服务器:
node dist/index.js服务器将通过stdio连接,使其与Claude for Desktop等MCP客户端兼容。
连接到Claude for Desktop
- 配置Claude for Desktop以使用此MCP服务器
- 在您的Claude对话中,您现在可以与您的Bring购物清单进行交互
可用的MCP工具
服务器向MCP客户端公开以下工具:
| 工具名称 | 描述 |
|---|---|
get-bring-lists | 列出已验证用户的所有购物清单 |
get-bring-list-items | 从特定购物清单中获取所有商品 |
add-recipe-items-to-bring-list | 一次将多个项目添加到购物清单中 |
remove-item-or-all-from-bring-list | 删除特定项目或清除整个列表 |
get-bring-list-items-details | 获取列表中项目的详细信息 |
get-all-users-from-bring-list | 列出有权访问特定列表的所有用户 |
发展
以开发模式运行
npm run dev这将启动服务器进行热重新加载以进行开发。
VS代码集成
有关VS代码集成,请参阅 .vscode/mcp.sample.json 文件。此配置允许VS Code直接连接到MCP服务器。
测试
使用以下命令运行完整的测试套件:
npm test持续集成
该项目使用GitHub Actions进行持续集成。自动测试在每次向主分支推送和拉取请求时运行。
您可以在中查看工作流配置 .github/workflows/test.yml.
测试结构
测试在 test/ 目录:
handlers/-包含每个MCP工具处理程序的测试mocks/-包含测试中使用的模拟实现
许可证
此项目根据MIT许可证获得许可-请参阅 LICENSE 文件以获取详细信息。
______________________________________________________________________
对于功能请求或错误报告,请在项目存储库上打开问题。
