Token导航 LogoToken导航TokenDH.com
MCP General logo
运维云端未说明官方级别未说明来源级核验

MCP General

MCP Server

MCP平台是一个基于.NET的插件化服务器平台,支持一次编写工具,随处部署。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
.NET开发C#云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Boodya

提供方

Boodya

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP平台(.NET)

基于插件的MCP服务器平台。编写工具一次,部署到任何地方。

封装结构

角色
McpPlatform.Core仅限合同-- IMcpPlugin, PluginDescriptor, PluginLoadException
McpPlatform.Hosting插件加载器, McpStdioHostBuilder,DI扩展
McpGenericServer参考stdio服务器——运行内置工具+动态加载插件

插件的工作原理

在启动时, McpGenericServer 扫描 plugins/ 目录。\ 每 .dll 其中包含一个类实现 IMcpPlugin 被加载到一个隔离的\ AssemblyLoadContext 及其 Register() 方法被调用。\ 该插件注册了自己的工具、HTTP客户端、配置绑定——任何它需要的东西。

McpGenericServer.exe
└── plugins/
    ├── MyCompany.Mcp.Crm.dll       ← loaded automatically
    ├── MyCompany.Mcp.Crm.deps.json ← required for dependency resolution
    └── MyCompany.Mcp.Hr.dll        ← loaded automatically

编写插件(在单独的仓库中)

1.安装NuGet

2.实现IMcpPlugin

using McpPlatform.Core.Plugins;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using ModelContextProtocol.Server;

public sealed class CrmPlugin : IMcpPlugin
{
    public string Name => "Crm";
    public string Version => "1.0.0";

    public void Register(IServiceCollection services, IConfiguration configuration)
    {
        services.AddHttpClient(client =>
        {
            client.BaseAddress = new Uri(configuration["Crm:BaseUrl"]!);
        });

        services
            .AddMcpServer()
            .WithTools();
    }
}

3.正常编写工具

[McpServerToolType]
public sealed class CrmTools
{
    private readonly ICrmClient _crm;

    public CrmTools(ICrmClient crm) => _crm = crm;

    [McpServerTool(Name = "crm_get_customer"), Description("Returns customer by ID.")]
    public async Task GetCustomer(
        [Description("Customer ID")] string id,
        CancellationToken cancellationToken)
    {
        var customer = await _crm.GetCustomerAsync(id, cancellationToken);
        return new CustomerResult(customer.Id, customer.Name);
    }

    public sealed record CustomerResult(string Id, string Name);
}

4.部署

将插件的构建输出复制到 plugins/ 旁边 McpGenericServer.exe.\ 服务器在下次启动时发现并加载它——不需要重新编译。

配置

appsettings.json 或环境变量:

{
  "Mcp": {
    "PluginsDirectory": "plugins",
    "FailFastOnPluginError": false
  }
}

连接客户端

docs/connecting-clients.md 有关以下内容的分步说明:

  • VS代码/GitHub复制人聊天(.vscode/mcp.json)
  • 克劳德桌面
  • 来自的程序连接。NET、Python和TypeScript
  • 环境变量和 appsettings.json 配置
  • 将插件放置在 plugins/ 目录

构建和测试

dotnet build McpGenericServer.sln
dotnet test McpGenericServer.sln

目录标签

目录标签

.NET开发C#云端部署插件化架构本地部署工具部署动态加载微服务

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP