MCP ExplorerExplorer

Quickmcp

@gunpal5on 9 months ago
46 MIT
FreeCommunity
AI Systems
Easily build model context protocol servers that comply with OpenAPI, Swagger, or Google Discovery specifications.

Overview

What is Quickmcp

QuickMCP is a .NET toolkit designed to simplify the creation and deployment of Model Context Protocol (MCP) servers using OpenAPI, Swagger, or Google Discovery specifications.

Use cases

Use cases for QuickMCP include quickly setting up API servers for testing, developing microservices, and integrating with existing applications that require MCP server functionality.

How to use

To use QuickMCP, install the CLI tool or library via .NET, then utilize commands to serve directly from an OpenAPI specification or build a configuration file for your MCP server.

Key features

Key features include the ability to generate .NET MCP servers from various specifications, comprehensive authentication support, multiple configuration approaches, and seamless integration with MCP clients.

Where to use

QuickMCP can be used in software development environments where rapid server deployment is needed, particularly for APIs that conform to OpenAPI or Swagger standards.

Content

QuickMCP

Effortlessly Build and Serve Model Context Protocol (MCP) Servers with OpenAPI, Swagger, or Google Discovery Specifications using .NET.

Introduction

QuickMCP is a powerful .NET toolkit designed to streamline the creation and deployment of Model Context Protocol (MCP) servers. It allows developers to quickly generate servers from OpenAPI, Swagger, or Google Discovery specifications, reducing boilerplate code and accelerating development.

Features

  • Generate .NET MCP servers from OpenAPI/Swagger/Google Discovery specifications
  • Highly configurable .NET library with CLI utility for rapid deployment
  • Multiple configuration approaches (Configuration options or method chaining)
  • Comprehensive authentication support:
    • API Key, Basic, Bearer Token, OAuth 2.0, Custom Header
    • Custom authentication implementation interface
  • Generate Tools with Path filtering, HTTP customization, error handling, and logging
  • Seamless integration with MCP clients like Claude Desktop
  • Configuration file support and full async/await capabilities

Installation

CLI Installation

dotnet tool install -g QuickMCP.CLI

Library Installation

dotnet add package QuickMCP

Quick Start

Basic CLI Usage

# 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

# 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

Library Integration Example

// 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();  

Integration with MCP Clients

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

or Use installed server

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

Documentation

For detailed documentation on the following topics, refer to the wiki:

Contributing

We welcome contributions! Submit PR or Issues to contribute to the project.

License

QuickMCP is licensed under the MIT License. See the LICENSE file for details.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers