NetMCP NuGet Server
项目简介
NetMCP NuGet Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 LLM 应用提供访问 NuGet 包管理生态系统的能力。通过此服务器,LLM 可以检索 NuGet 包的信息、搜索包、并获取包内容,从而扩展 LLM 在软件开发和知识获取方面的能力。
主要功能点
- 资源 (Resources):
- NuGet 包文件内容 (nuget_file_content): 通过指定 NuGet 包 ID、版本和文件路径,获取 NuGet 包内指定文件的内容。
- NuGet 包内容 (nuget_package): 通过指定 NuGet 包 ID 和版本,获取整个 NuGet 包的 ZIP 压缩文件。
- 工具 (Tools):
- NuGet 搜索 (nuget_search): 允许 LLM 使用关键词在 NuGet 库中搜索软件包,并返回搜索结果。
安装步骤
-
安装 .NET SDK: 确保您的开发环境中已安装 .NET SDK (Software Development Kit)。您可以从 官方 .NET 网站 下载并安装。
-
下载仓库代码: 从 GitHub 仓库 NetMcpServers 克隆或下载源代码。
-
编译和运行服务器: 在命令行或终端中,导航到下载的 'NetMcpServers/NuGet' 目录(包含 'NuGet.csproj' 文件),然后运行以下命令编译并启动服务器:
dotnet run服务器成功启动后,将通过标准输入/输出 (stdio) 监听 MCP 客户端的请求。
服务器配置 (MCP 客户端)
要将 NetMCP NuGet Server 集成到 MCP 客户端,您需要在客户端配置中添加以下服务器信息。请注意,以下配置为 JSON 格式,您需要将其添加到您的 MCP 客户端配置中。
{ "serverName": "NetMcpNuGet", "command": "dotnet", "args": ["run"] }
- 'serverName': 服务器的名称,您可以自定义,用于在 MCP 客户端中标识此服务器。例如: "NetMcpNuGet"。
- 'command': 启动服务器的命令。对于 .NET 应用,通常是 'dotnet'。
- 'args': 传递给 'command' 的参数。 'run' 命令用于运行 .NET 项目。
重要提示: 请确保 MCP 客户端能够执行 'dotnet' 命令,并且当前工作目录或环境变量设置正确,以便能够找到和运行 'dotnet' 以及项目文件。 通常情况下,MCP 客户端会在配置的 'command' 和 'args' 所在的工作目录下启动服务器进程,因此请确保在启动 MCP 客户端时,当前工作目录位于 'NetMcpServers/NuGet' 目录下,或者在 'args' 中指定正确的项目文件路径。
基本使用方法
一旦 NetMCP NuGet Server 成功启动并在 MCP 客户端中配置,您可以通过以下方式使用其提供的资源和工具:
-
读取 NuGet 资源: 在 MCP 客户端中,您可以使用以下 URI 格式来访问 NuGet 资源:
- 'nuget://{packageId}/{version}': 获取指定 NuGet 包的 ZIP 文件。例如: 'nuget://Newtonsoft.Json/13.0.1'
- 'nuget://{packageId}/{version}/{filePath*}': 获取指定 NuGet 包中特定文件的内容。 例如: 'nuget://Newtonsoft.Json/13.0.1/Newtonsoft.Json.dll'
- '{version}' 可以使用 'latest' 关键字来获取最新版本,例如: 'nuget://Newtonsoft.Json/latest'
-
调用 NuGet 工具: 在 MCP 客户端中,您可以调用 'nuget_search' 工具来搜索 NuGet 包。 您需要提供 'query' 参数来指定搜索关键词,还可以选择性地提供 'nuget_sources', 'allow_prerelease', 'skip', 和 'take' 参数来定制搜索行为。 具体的工具参数和使用方法请参考 MCP 客户端的文档。
通过 NetMCP NuGet Server,LLM 应用可以方便地集成 NuGet 生态系统,实现更强大的软件开发和知识检索功能。
信息
分类
开发者工具