MCP服务器生成工具

QuickMCP是一个.NET工具包,用于从OpenAPI、Swagger或Google Discovery规范快速生成和部署MCP服务器,支持多种认证方式和AI驱动的元数据生成。

  • by gunpal5
  • C#
  • 本地部署
  • 69 星标
  • 更新于
在 GitHub 查看 gunpal5/QuickMCP

使用说明

QuickMCP

使用OpenAPI、Swagger或Google发现规范轻松构建和服务模型上下文协议(MCP)服务器。网。

引言

QuickMCP功能强大。NET工具包,旨在简化模型上下文协议(MCP)服务器的创建和部署。它允许开发人员根据OpenAPI、Swagger或Google Discovery规范快速生成服务器,减少样板代码并加速开发。

特性

  • 生成。来自OpenAPI/Swagger/Google Discovery规范的NET MCP服务器
  • 构建克劳德桌面扩展(.mcpb) 通过人工智能生成元数据
  • 高度可配置。NET库和CLI实用程序,用于快速部署
  • 多种配置方法(配置选项或方法链)
  • 全面的身份验证支持:
    • API密钥,基本,承载令牌,OAuth 2.0,自定义头
    • 自定义身份验证实现接口
  • 生成具有路径过滤、HTTP自定义、错误处理和日志记录的工具
  • 与Claude Desktop等MCP客户端无缝集成
  • 配置文件支持和完整的异步/等待功能
  • 使用Google Gemini进行扩展描述的人工智能元数据生成

安装

CLI安装

dotnet tool install -g QuickMCP.CLI

图书馆安装

dotnet add package QuickMCP

快速开始

CLI基本用法

# Serve directly from OpenAPI specification
quickmcp serve --spec-url https://petstore.swagger.io/v2/swagger.json

# Build a configuration file
quickmcp build config --spec-url https://petstore.swagger.io/v2/swagger.json --output-path ./config

# Build a Claude Desktop extension (.mcpb) with AI-generated metadata
quickmcp build ce --spec-url https://api.example.com/swagger.json -m --author-name "Your Company"

# Build extension from existing config file
quickmcp build ce -c path/to/config.json -m -k YOUR_GEMINI_API_KEY

# Serve using a configuration file
quickmcp serve --config-path ./config/mcp_server_config.json

# Add authentication to your configuration
quickmcp build config --spec-url https://api.example.com/swagger.json --auth bearer

# Add a server configuration for quick access
quickmcp add server /path/to/config.json -n MyServer

# List available servers
quickmcp list server

# Serve installed server
quickmcp serve -i myServer

# Remove a stored server configuration
quickmcp delete server MyServer

库集成示例

// Create and configure a server
var serverInfoBuilder = McpServerInfoBuilder.ForOpenApi()
    .FromUrl("https://petstore.swagger.io/v2/swagger.json")
    .WithBaseUrl("https://petstore.swagger.io")
    .AddDefaultHeader("User-Agent", "QuickMCP Client")
    .AddAuthentication(new ApiKeyAuthenticator("your-api-key", "X-API-Key", "header"));

// Build server info
var serverInfo = await serverInfoBuilder.BuildAsync();

//Integrate with official MCP C# SDK
var hostBuilder = Host.CreateApplicationBuilder();

var mcpBuilder = hostBuilder.Services
    .AddMcpServer()
    .WithQuickMCP(mcpServerInfo)
    .WithStdioServerTransport();

//Run Server
await hostBuilder.Build().RunAsync();  

与MCP客户端集成

{
  "mcpServers": {
    "petStore": {
      "command": "quickmcp",
      "args": ["serve", "-c", "path/to/config.json"]
    }
  }
}

或使用已安装的服务器

{
  "mcpServers": {
    "petStore": {
      "command": "quickmcp",
      "args": ["serve", "-i", "server_id"]
    }
  }
}

文档

有关以下主题的详细文档,请参阅维基:

贡献

我们欢迎捐款!提交PR或问题,为项目做出贡献。

许可证

QuickMCP根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。