# MathBasicCalcMCP **Repository Path**: fried_rice_with_egg/math-basic-calc-mcp ## Basic Information - **Project Name**: MathBasicCalcMCP - **Description**: 数学基础计算MCP演示项目 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-19 - **Last Updated**: 2025-10-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能计算器 - 基于百度千帆云平台的自然语言计算系统 ## 项目简介 这是一个集成了百度千帆云平台大模型的智能计算器系统,能够理解用户的自然语言输入,进行意图判断,并调用后端MCP接口完成数学计算,最后输出详细的计算过程和结果。 ## 功能特性 - 🤖 **智能意图识别**: 使用百度千帆云平台大模型分析用户输入 - 🔢 **自然语言计算**: 支持中文数学表达式输入 - 📊 **详细计算过程**: 展示完整的计算步骤和时间戳 - 🔧 **MCP接口集成**: 调用后端MCP服务进行实际计算 - 🛡️ **备用解析**: 当大模型不可用时使用正则表达式解析 - 📈 **多种运算支持**: 加法、减法、乘法、除法及复杂表达式 ## 系统架构 ``` 用户输入 → 意图分析 → 表达式解析 → MCP调用 → 结果展示 ↓ ↓ ↓ ↓ ↓ 自然语言 大模型API 数学解析 计算接口 格式化输出 ``` ## 文件结构 ``` MCPTest/ ├── client.py # 智能计算器客户端 ├── server.py # MCP服务器(提供基础数学运算) ├── requirements.txt # 项目依赖 ├── .env # 环境变量配置文件 └── README.md # 项目说明文档 ``` ## 安装和配置 ### 1. 创建并激活虚拟环境(推荐) ```bash # 创建虚拟环境 python -m venv . # 激活虚拟环境 # Windows: Scripts\activate.bat # 或者 PowerShell: Scripts\Activate.ps1 # Linux/Mac: source bin/activate ``` ### 2. 安装依赖 ```bash pip install -r requirements.txt ``` 或者手动安装核心依赖: ```bash pip install fastmcp fastapi uvicorn ``` ### 2. 配置百度千帆云平台API 在项目根目录复制.env.example文件创建 `.env` 文件: ```env BAIDU_QIANFAN_API_KEY=your_actual_api_key MCP_SERVER_URL=http://127.0.0.1:8000/mcp DEBUG=False ``` #### 获取百度千帆云平台API密钥 1. 访问 [百度智能云控制台](https://console.bce.baidu.com/) 2. 开通千帆大模型平台服务 3. 创建应用获取 API Key 和 Secret Key 4. 系统会自动使用官方qianfan SDK进行接入,更加稳定可靠 ## 使用方法 ### 方式一:命令行客户端 #### 1. 启动MCP服务器 ```bash python server.py ``` 服务器将在 `http://127.0.0.1:8000` 启动 #### 2. 运行智能客户端 ```bash python client.py ``` #### 3. 输入计算请求 支持多种自然语言输入格式: ``` 🎯 请输入您的计算请求: 帮我算一下3加5 🎯 请输入您的计算请求: 10乘以2等于多少 🎯 请输入您的计算请求: 15除以3 🎯 请输入您的计算请求: 100-25 🎯 请输入您的计算请求: 2*3+4 ``` ## 示例输出 ``` 🤖 正在分析您的输入... 📊 意图分析结果: - 是否为计算请求: 是 - 操作类型: add - 提取的数字: [3.0, 5.0] - 置信度: 0.95 🔄 开始计算处理... ================================================== 计算结果报告 ================================================== ✅ 计算完成 📋 计算步骤: 1. [解析] 识别到表达式: 帮我算一下3加5 (14:30:25.123) 2. [提取] 提取数字: [3.0, 5.0] (14:30:25.124) 3. [操作] 识别操作类型: 加法 (14:30:25.125) 4. [调用] 调用MCP接口: add(3.0, 5.0) (14:30:25.126) 5. [结果] MCP返回: 3 + 5 = 8 (14:30:25.128) 🎯 最终结果: 3 + 5 = 8 ================================================== ``` ## 支持的运算类型 | 运算类型 | 支持的表达方式 | MCP接口 | |---------|---------------|--------| | 加法 | `+`, `加`, `相加`, `加上` | `add` | | 减法 | `-`, `减`, `相减`, `减去` | `subtract` | | 乘法 | `*`, `×`, `乘`, `相乘`, `乘以` | `multiply` | | 除法 | `/`, `÷`, `除`, `相除`, `除以` | `divide` | | 复杂表达式 | `2*3+4`, `(10+5)/3` | 内置计算器 | ## 错误处理 系统具备完善的错误处理机制: - **API配置错误**: 自动切换到备用解析模式 - **网络连接问题**: 提供详细错误信息 - **表达式解析失败**: 使用正则表达式备用方案 - **MCP服务不可用**: 友好的错误提示 - **除零错误**: MCP服务器端处理 ## 开发和扩展 ### 添加新的运算类型 1. 在 `server.py` 中添加新的MCP工具 ## 注意事项 1. **虚拟环境**: 强烈建议使用虚拟环境运行本项目,避免依赖冲突 ```bash # 创建虚拟环境 python -m venv . # 激活虚拟环境后再安装依赖和运行程序 ``` ## 故障排除 ### 常见问题 **Q: 提示"未配置百度千帆云平台API密钥"** A: 请按照配置章节设置环境变量或.env文件 **Q: 意图分析失败** A: 检查网络连接和API密钥是否正确,系统会自动使用备用解析 **Q: MCP调用失败** A: 确保MCP服务器在8000端口正常运行 **Q: 无法识别计算表达式** A: 尝试使用更明确的表达方式,如"3加5"而不是"三加五"