MCP.NET 安装与配置指南
1. 项目基础介绍
MCP.NET 是一个开源项目,它是一个 .NET 语言实现的 Model Context Protocol (MCP) 协议。MCP 是一个开放协议,用于标准化应用程序如何向大型语言模型 (LLM) 提供上下文信息。该协议支持 LLM 与各种数据源和工具的安全集成。
该项目主要用于 .NET 应用程序,允许它们连接到 MCP 客户端和服务器,并与之交互。
主要编程语言:C#
2. 项目使用的关键技术和框架
- .NET:项目基于 .NET 平台,兼容 .NET 8.0 及以后的版本。
- McpDotNet:核心库,提供 MCP 协议的实现。
- McpDotNet.Server:用于创建 MCP 服务器的组件。
- Microsoft.Extensions.Hosting:提供宿主服务的抽象层,用于配置和运行服务。
3. 项目安装和配置的准备工作
在开始安装之前,请确保您的开发环境满足以下要求:
- 安装了 .NET SDK 8.0 或更高版本。
- 安装了 Git 版本控制系统。
详细安装步骤
步骤 1:克隆项目
首先,使用 Git 克隆项目到本地:
git clone https://github.com/PederHP/mcpdotnet.git
步骤 2:安装 NuGet 包
进入项目目录,安装所需的 NuGet 包:
cd mcpdotnet
dotnet add package mcpdotnet
步骤 3:配置 MCP 客户端
创建一个新的 MCP 客户端配置文件,或者直接在代码中配置。以下是一个简单的示例:
McpClientOptions options = new()
{
ClientInfo = new()
{
Name = "TestClient",
Version = "1.0.0"
}
};
McpServerConfig config = new()
{
Id = "everything",
Name = "Everything",
TransportType = TransportTypes.StdIo,
TransportOptions = new()
{
["command"] = "npx",
["arguments"] = "-y @modelcontextprotocol/server-everything"
}
};
步骤 4:创建和运行 MCP 客户端
使用以下代码创建并运行 MCP 客户端:
var client = await McpClientFactory.CreateAsync(config, options);
// 列出服务器上的工具
await foreach (var tool in client.ListToolsAsync())
{
Console.WriteLine($"{tool.Name} ({tool.Description})");
}
// 调用工具
var result = await client.CallToolAsync("echo", new() { ["message"] = "Hello MCP!" }, CancellationToken.None);
Console.WriteLine(result.Content.First(c => c.Type == "text").Text);
步骤 5:配置 MCP 服务器
创建一个简单的 MCP 服务器,可以使用以下代码:
using McpDotNet;
using McpDotNet.Server;
using Microsoft.Extensions.Hosting;
var builder = Host.CreateEmptyApplicationBuilder();
builder.Services.AddMcpServer().WithStdioServerTransport().WithTools();
await builder.Build().RunAsync();
还包括了一个简单的 Echo 工具类,作为服务器上的一个示例工具:
[McpToolType]
public static class EchoTool
{
[McpTool, Description("Echoes the message back to the client.")]
public static string Echo(string message) => $"echo {message}";
}
完成以上步骤后,您就可以开始使用 MCP.NET 进行开发了。记得查看项目的官方文档和示例,以了解更多高级用法和配置选项。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



