✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

计算器 MCP 服务器

这是一个使用 Model Context Protocol (MCP) 开发的计算器服务器,提供基本的算术运算功能。

功能特点

基本计算器功能

  • 加法、减法、乘法、除法的基本运算
  • 自动记录计算历史
  • 通过资源 API 访问帮助信息和历史记录

高级计算器功能

  • 幂运算和平方根计算
  • 表达式计算(使用安全的表达式求值)
  • 资源更新通知(当历史记录更新时)

安装要求

  1. Python 3.7 或更高版本
  2. MCP Python SDK

安装步骤

  1. 克隆或下载此仓库
  2. 安装依赖项:
pip install -r requirements.txt

使用方法

运行基本计算器服务器

python calculator_server.py

或者使用 MCP 命令:

mcp run calculator_server.py

运行高级计算器服务器

python advanced_calculator_server.py

运行客户端示例

python calculator_client.py

可用工具

基本工具:

  • add(a, b): 计算 a + b
  • subtract(a, b): 计算 a - b
  • multiply(a, b): 计算 a * b
  • divide(a, b): 计算 a / b

高级工具(仅在高级计算器中可用):

  • power(base, exponent): 计算 base 的 exponent 次幂
  • sqrt(value): 计算平方根
  • evaluate_expression(expression): 计算数学表达式字符串

可用资源

  • calculator://help: 获取帮助信息
  • calculator://history: 获取计算历史记录

示例代码

使用 Python 客户端调用计算器服务器

from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
import asyncio

async def main():
    server_params = StdioServerParameters(
        command="python",
        args=["advanced_calculator_server.py"],
    )
    
    async with stdio_client(server_params) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()
            
            # 调用加法工具
            result = await session.call_tool("add", {"a": 5, "b": 3})
            print(f"5 + 3 = {result}")
            
            # 读取计算历史
            history, _ = await session.read_resource("calculator://history")
            print(history)

if __name__ == "__main__":
    asyncio.run(main())

项目结构

  • calculator_server.py: 基本计算器 MCP 服务器
  • advanced_calculator_server.py: 高级计算器 MCP 服务器,带有更多功能
  • calculator_client.py: 计算器客户端示例
  • requirements.txt: 项目依赖
  • README.md: 项目文档

进一步开发

你可以通过以下方式扩展这个计算器服务器:

  1. 添加更多数学函数(如三角函数、对数等)
  2. 实现更复杂的表达式解析器
  3. 添加图形界面
  4. 实现持久化存储计算历史
  5. 添加用户自定义变量和函数

许可证

MIT 许可证

Featured Templates

View More
Customer service
AI-Powered Product List Manager
140 574
AI Engineering
Python Bug Fixer
119 1017
AI Characters
Your Speaking Avatar
168 646
Customer service
Service ERP
125 704

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.