AG-MCP聊天应用程序
基于人工智能的农业助手移动应用程序,集成了特定地区的MCP服务器。
建筑
Mobile App → API Gateway (auth + orchestration) → AI Services (Gemini)
↓
MCP Servers (Weather, Soil, Feed, etc.)API终结点:
POST https://ag-mcp-api-gateway.up.railway.app/api/chat
Header: X-API-Key: your-api-key项目结构
ag-mcp-chat-app/
├── mobile/ # Expo + React Native Gifted Chat
│ ├── screens/ # App screens
│ ├── components/ # UI components
│ ├── services/ # API, TTS, transcription services
│ ├── contexts/ # React contexts (app state)
│ └── constants/ # Translations, config
├── api-gateway/ # Express.js + TypeScript
│ ├── src/
│ │ ├── config/ # Zod-validated env config
│ │ ├── middleware/ # Auth, validation, error handling
│ │ ├── routes/
│ │ │ ├── ai/ # Chat, TTS, transcribe, title routes
│ │ │ └── mcp-servers/ # MCP server management routes
│ │ ├── services/
│ │ │ ├── mcp/ # MCP caller, registry, orchestrator
│ │ │ ├── intent/ # Intent detection (keywords, LLM)
│ │ │ ├── geocoding.ts # Nominatim/IP-API location lookup
│ │ │ └── ai-services.ts # AI Services client
│ │ ├── types/ # TypeScript interfaces
│ │ └── utils/ # Logger utilities
│ └── prisma/ # Database schema + seed
└── README.md移动应用程序设置
cd mobile
npm install
# Create .env file with your API key
echo "EXPO_PUBLIC_API_KEY=your-api-key-here" > .env
npx expo start扫描二维码 使用Expo Go应用程序(iOS/Android)在您的手机上运行。
为生产而建
# iOS
npx expo build:ios
# Android
npx expo build:android特性
- React Native天赋聊天 -漂亮的聊天界面
- 谷歌双子座2.5 Flash -通过AI服务提供AI支持的响应
- 自动定位 -用于区域建议的GPS检测
- 区域检测 -埃塞俄比亚、肯尼亚、坦桑尼亚、越南、全球
- 语言检测 -支持20+种语言
- 语音输入 -语音转文本转录
- 文本转语音 -音频响应
API网关服务
| 服务 | 描述 |
|---|---|
| 聊天 | Gemini与MCP上下文聊天 |
| TTS | 通过Gemini实现文本转语音 |
| 转录 | 通过Gemini将语音转换为文本 |
| 位置 | 通过Nomatim/IP-API进行地理编码 |
| MCP服务器 | 区域服务器编排 |
支持的地区
| 区域 | MCP服务器 |
|---|---|
| 埃塞俄比亚 | NextGen,饲料配方,EDACaP,ISDA土壤 |
| 肯尼亚 | GAP天气,ISDA土壤 |
| 坦桑尼亚 | GAP天气,ISDA土壤 |
| 越南 | WeatherAPI |
| 全球 | AccuWeather、AgriVision |
后端服务
API网关(Express.js+TypeScript)
- 部署于
ag-mcp-api-gateway.up.railway.app - 处理身份验证、MCP编排和请求路由
人工智能服务(TypeScript)
- 部署于
ag-mcp-ai-services.up.railway.app - 处理Gemini API对聊天、TTS和转录的调用
测试
API网关测试
cd api-gateway
npm test # Run all tests
npm run test:watch # Watch mode
npm run test:coverage # Coverage report测试覆盖范围: 112个测试,涵盖服务、中间件和路由。
AI服务测试
看 ai服务README 用于测试说明。
发展
API网关
cd api-gateway
npm install
npm run dev # Start development server with hot reload移动应用程序
cd mobile
npm install
npx expo start______________________________________________________________________
适用于: 数字绿色-GAP_PROTOTYPE
