计算器MCP服务器

基于.NET 8构建的模型上下文协议(MCP)服务器,用于展示AI应用如何通过标准化协议安全调用外部工具,如计算器操作。

  • by SudhirSinghThakur
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 SudhirSinghThakur/CalculatorMcpServer

使用说明

🧮 计算器MCP服务器(.NET 8)

现代 模型上下文协议(MCP)服务器 建于 C#和。净值8 演示了人工智能应用程序如何通过标准化协议安全地调用外部工具。

该项目将计算器操作作为MCP工具公开,并与MCP兼容的AI客户端集成,如 克莱恩,对人工智能工具调用和基于MCP的架构进行了实用介绍。


🎯 为什么是这个项目?

大型语言模型(LLM)功能强大,但它们不能自行与外部系统交互。

这 模型上下文协议(MCP) 使AI应用程序能够:

  • 发现可用工具
  • 执行实时操作
  • 访问企业系统
  • 检索业务数据
  • 将AI功能扩展到提示之外

这个项目使用一个简单的计算器工具实现来演示这些概念。


🚀 特性

  • ✅ 用。净值8
  • ✅ MCP服务器实现
  • ✅ AI工具调用
  • ✅ 临床整合
  • ✅ 基于属性的工具注册
  • ✅ 实时工具执行
  • ✅ 可扩展架构
  • ✅ 日志记录支持

🏗️ 建筑

┌──────────────────────────────┐
│       AI Client (Cline)      │
└──────────────┬───────────────┘
               │
               ▼
┌──────────────────────────────┐
│     Model Context Protocol   │
│             MCP              │
└──────────────┬───────────────┘
               │
               ▼
┌──────────────────────────────┐
│ Calculator MCP Server (.NET) │
└──────────────┬───────────────┘
               │
     ┌─────────┼─────────┐
     ▼         ▼         ▼
   Add      Multiply   Future Tools
     │
     ▼
 Result Returned To AI

🔧 可用工具

➕ 添加

将两个数字相加。

参数

名称 类型 描述
a double 第一个数字
b 双 第二个数字

示例

Use add with a=10 and b=20

回应

30

✖️ 乘

将两个数字相乘。

参数

名称 类型 描述
a double 第一个数字
b 双 第二个数字

示例

Use multiply with a=10 and b=20

回应

200

🖼️ 演示

MCP服务器在Cline中注册

工具调用


📂 项目结构

CalculatorMcpServer/
│
├── CalculatorMcpServer/
│   ├── Program.cs
│   ├── CalculatorTools.cs
│   ├── CalculatorMcpServer.csproj
│
├── README.md
├── Chat.png
└── my-csharp-server.png

⚙️ 配置

创建:

C:\Users\<your-user>\.cline\mcp.json

MCP配置

{
  "mcpServers": {
    "my-csharp-server": {
      "command": "dotnet",
      "args": [
        "run",
        "--project",
        "C:/Users/<your-user>/source/repos/CalculatorMcpServer/CalculatorMcpServer/CalculatorMcpServer.csproj",
        "--verbosity",
        "quiet"
      ],
      "timeout": 1800
    }
  }
}

▶️ 本地运行

dotnet restore
dotnet build
dotnet run

🧪 测试

Cline内部:

Use add with a=12 and b=30
Use multiply with a=10 and b=20

🌟 企业用例

虽然该项目演示了一个计算器,但相同的MCP架构可以提供以下功能:

  • AI助理
  • 银行应用
  • 客户支持系统
  • 企业搜索
  • 工作流自动化
  • 知识管理平台
  • 内部开发工具

🛣️ 路线图

当前版本

  • [x] 添加工具
  • [x] 乘法工具
  • [x] 临床整合

即将到来的

  • []减法工具
  • []分割工具
  • []结构化日志记录
  • []单元测试(xUnit)
  • []GitHub操作CI/CD
  • []气象MCP服务器
  • []文件系统MCP服务器
  • []Azure OpenAI集成
  • []AI代理集成

🤝 贡献

欢迎提供意见、建议和改进。

请随意分叉存储库并提交拉取请求。


📜 许可证

根据MIT许可证获得许可。


🔗 与我联系

苏迪尔·辛格·塔库尔

技术负责人|。NET | Azure |微服务|人工智能工程

github:https://github.com/SudhirSinghThakur

领英:https://www.linkedin.com/in/sudhir-singh-thakur-55892196/