口粮智能MCP服务器
用于口粮智能饲料库的MCP服务器——通过模型上下文协议优化奶牛营养
🎯 概述
该MCP(模型上下文协议)服务器通过定量智能饲料库API提供奶牛营养优化工具。它使AI代理能够:
- 评估饮食 -分析现有饲料混合物的营养充足性
- 获取饮食建议 -制定优化的最低成本饮食计划
- 搜索源 -按类型、类别或国家查找提要
- 获取订阅源详细信息 -检索特定饲料的营养信息
🔗 相关存储库
- 定量智能饲料库 -后端API和管理仪表板
- 用于饲料数据和饮食计算的后端API - 用于提要管理和API密钥管理的管理仪表板
✨ 特性
- ✅ 4个MCP工具用于综合饲料分析
- ✅ API密钥认证(推荐用于组织)
- ✅ 电子邮件+PIN身份验证(向后兼容)
- ✅ 自动检测提要中的country_id -无需明确指定国家
- ✅ 自动处理用户id -用于API密钥身份验证的服务帐户
- ✅ 用户ID缓存以提高性能
- ✅ 全面的错误处理,并提供有益的建议
- ✅ 具有完全类型安全的TypeScript
- ✅ MCP的流式HTTP传输
- ✅ 单元和集成测试
📦 安装
npm install⚙️ 配置
创建一个 .env 文件:
# Backend API URL
FEED_API_BASE_URL=http://localhost:8000
# Authentication (choose one method)
# Option 1: API Key (Recommended for organizations)
FEED_API_KEY=ff_live_xxxxxxxxxxxx
FEED_API_USER_ID=your-service-account-user-id
FEED_API_COUNTRY_ID=default-country-id
# Option 2: Email + PIN (Backward compatible)
FEED_API_EMAIL=your_email@example.com # Email address (NOT phone number)
FEED_API_PIN=1234 # 4-digit PIN
# Server Configuration
PORT=3005
ALLOWED_ORIGINS=*重要提示:
FEED_API_EMAIL必须是有效的电子邮件地址,而不是电话号码- 建议生产使用API密钥验证
- 从获取API密钥 管理员仪表板
- 注:
FEED_API_USER_ID和FEED_API_COUNTRY_ID是可选的-服务器会自动从提要中检测国家,并为user_id使用服务帐户
🚀 发展
# Install dependencies
npm install
# Development mode (with auto-reload)
npm run dev
# Build
npm run build
# Start production server
npm start
# Run tests
npm test
# Run tests in watch mode
npm run test:watch
# Run tests with coverage
npm run test:coverage🧪 测试
看 README_TESTS.md 获取详细的测试指南。
# Run unit tests
npm test
# Run with coverage
npm run test:coverage🔧 MCP工具
1. evaluate_diet
分析现有饮食的营养充足性。
参数:
cattle_info:牛信息(体重、产奶量等)feed_evaluation:包含数量和价格的饲料清单
自动检测:
country_id从提供的馈送中自动检测user_id通过服务帐户自动处理
退货: 全面的饮食分析,包括营养价值、不足和建议。
2. get_diet_recommendation
制定优化的最低成本饮食计划。
参数:
cattle_info:牛信息feed_selection:有价格的可用饲料(6-10种饲料,饲料和浓缩物的混合物)
自动检测:
country_id从提供的馈送中自动检测user_id通过服务帐户自动处理
退货: 根据饲料数量和成本优化饮食计划。
3. search_feeds
按各种条件搜索提要。
参数:
query:搜索查询(可选)feed_type:按类型过滤(饲料/精矿)country_id:按国家筛选limit:最大结果
退货: 匹配的订阅源列表。
4. get_feed_info
获取特定提要的详细信息。
参数:
feed_id:馈送ID
退货: 完整的饲料信息,包括营养价值。
🌐 MCP集成
与Claude Desktop一起使用
添加到 ~/.cursor/mcp.json 或Claude桌面配置:
{
"mcpServers": {
"ration-smart": {
"command": "node",
"args": ["/path/to/ration-smart-mcp-server/dist/index.js"],
"env": {
"FEED_API_BASE_URL": "https://your-backend.railway.app",
"FEED_API_KEY": "ff_live_xxxxxxxxxxxx"
}
}
}
}与StreamableHTTP一起使用
服务器通过HTTP为MCP公开一个HTTP端点:
POST http://localhost:3005/mcp📚 API身份验证
API密钥(推荐)
- 在管理仪表板中创建组织
- 生成API密钥
- 使用钥匙
FEED_API_KEY环境变量
电子邮件+PIN(传统)
- 通过后端API注册/登录
- 在环境变量中使用电子邮件和PIN
🚢 部署
铁路
服务器已配置为铁路部署:
# Deploy to Railway
railway up铁路将自动:
- 构建TypeScript代码
- 在配置的PORT上启动服务器
- 使用铁路仪表板中的环境变量
📝 许可证
麻省理工学院
