MCP.NET 安装与配置指南

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),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值