内容
beori MCP 服务器
将 Bobbeori 食品管理工具连接到 ChatGPT、Codex、Claude 等 MCP 客户端,支持 OAuth 和预览-写入操作。
## 功能
- 查看冰箱库存和即将过期的食材。
- 根据已有的食材推荐食谱。
- 查询食品存储、处理和营养指南。
- 预览和保存购物清单。
- 预览和记录已审核的收据项目。
- 预览和创建 Google 日历事件或提醒。
## 快速开始
```bash
git clone https://github.com/Bobbeori/bobbeori-mcp-server.git
cd bobbeori-mcp-server
python -m venv .venv
source .venv/bin/activate
pip install -e .
cp .env.example .env
uvicorn bobbeori_mcp.server:app --host 0.0.0.0 --port 8001
```
Windows PowerShell:
```powershell
git clone https://github.com/Bobbeori/bobbeori-mcp-server.git
cd bobbeori-mcp-server
py -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .
copy . .env
uvicornori_mcp.server:app --0.0.0.port 8001
```
```bash
docker build -beori-mcp-server .
docker run --env-file .env -p 8001:8001 bob-mcp-server
```
## 连接 MCP 客户端
生产环境 MCP URL:
```text
https://mcp.bobbeori.com/mcp
```
OAuth 资源:
```text
https://mcp.bobbeori.com
```
Codex CLI:
```powershell
codex mcp add bobbeori `
--url https://mcp.bobbeori.com/mcp `
--oauth-client-id 3nu2uqh1ir8d10ljocufuj2qv1 `
--oauth-resource https://mcp.bobbeori.com
codex mcp login bobbeori --scopes bobbeori-mcp/inventory.read,bobbeori-mcp/recipe.read,bobbeori-mcp/guide.readbeori-mcp/rece,bobbeori-mcp/shopping.write,bobbeori-m.write
```
Claude 桌面端远程服务器配置:
```json
{
"mcpServers": {
"bobbeori": {
"url": "https://mcp.bobbeori.com/mcp"
}
}
}
```
对于 ChatGPT,创建连接器/插件:
```text
MCP 服务器 URL: https://mcp.bobbeori.com/mcp
认证: OAuth
资源: https://mcp.bobbeori.com
```
## 示例提示
- "显示我的 Bobbeori 冰箱中本周过期的食材。"
- "推荐使用我已有的食材的晚餐食谱。"
- "预览将这些收据项目添加到我的冰箱中。"
- "为食谱 175 中缺失的食材创建购物清单。"
- "预览明天 9 点 KST 使用豆腐的日历提醒。"
## 工具
| 工具 | 用途 | 范围 |
|---|---|---|
| `inventory.list` | 列出冰箱物品 | `bobbeori-mcp/inventory.read` |
| `inventory.expiring` | 列出即将过期或已过期的物品 | `ori-mcp/inventory |
| `recipe.recommend` | 推荐食谱 | `ori-mcp/recipe.read` |
| `recipe.get` | 获取食谱详情 | `bobbeori-mcp/recipe.read| `ingredient.guide` | 获取食品存储和营养指南bobbeori-mcp/guide.read` |
| `receipt.preview` | 预览记录收据项目 | `bobbeori-mcp/receipt.write` |
| `receipt.commit` | 提交收据预览 | `bobbeori-mcp/rece` |
|.preview` | 预览购物清单 | `bobbeori-mcp/shopping.write` |
| `shopping.save` | 保存购物清单预览bobbeori-mcp/shopping.write` |
| `calendar.preview` | 预览日历事件 | `bobbeori-mcp/calendar.write` |
| `calendar.create` | 创建日历事件预览bobbeori-mcp/calendar.write` |
| `reminder.preview 预览提醒 | `ori-mcp/calendar.write` `reminder.create` |预览 | `bobbeori/calendar.write` |
## 写入安全性
Bobbeori 写入工具优先预览。
1. 调用匹配的 `*.preview` 工具。
2. 向用户显示预览和警告。
3. 请求明确确认。
4. 将返回的 `confirmation_token` 不变地传递给 `*.commit`、`*.save` 或 `*.create`。
绝不生成 `user_id`;OAuth 提供账户。
## 环境
所需的生产环境值:
```env
BOBBEORI_API=https://api.bobbeori.com
BOBBEORI_API_PREFIX=/api/v1/mcp
MCP_ISS=
MCP_RESOURCE_URLmcp.bobbeoriMCP_JWKS_URL=
MCP_JWT_AUDIENCE=https://mcp.bobbeori.com
MCP_PREVIEW_TOKEN_SECRET=
```
参见 [.env.example](.env.example) 获取所有选项。
## 烟雾测试
```powershell
$env:MCP_ACCESS_TOKEN="<oauth-access-token>"
py scripts/test_mcp_oauth --mcp-url https://mcp.bobbeori.com/mcp `
--resource-url https://mcp.bobbeori.com
```
## 开发
```bash
pip install -e .
pytest -q
```
此仓库拥有外部 MCP 边界、OCR、数据库访问、食谱搜索、购物持久性和日性存在于主要的 Bobbe端。
参见 [docs/bridge-api.md](docs/bridge) 获取后端桥接## 安全
参见 [SECURITY.md](SECURITY.md)。不要 客户端机密、API 密钥、用户收据数据或生产环境 `.env` 文件放入此仓库。
## 贡献
参见 [ING.md](CONTRIBUTING.md)。
## 许可证
MIT。参见 [LICENSE](LICENSE)。