QuickMCP 0.1.5
dotnet add package QuickMCP --version 0.1.5
NuGet\Install-Package QuickMCP -Version 0.1.5
<PackageReference Include="QuickMCP" Version="0.1.5" />
<PackageVersion Include="QuickMCP" Version="0.1.5" />
<PackageReference Include="QuickMCP" />
paket add QuickMCP --version 0.1.5
#r "nuget: QuickMCP, 0.1.5"
#addin nuget:?package=QuickMCP&version=0.1.5
#tool nuget:?package=QuickMCP&version=0.1.5
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.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.OpenApi.Readers (>= 1.6.24)
- ModelContextProtocol (>= 0.1.0-preview.7)
- Newtonsoft.Json (>= 13.0.3)
-
net8.0
- Microsoft.OpenApi.Readers (>= 1.6.24)
- ModelContextProtocol (>= 0.1.0-preview.7)
- Newtonsoft.Json (>= 13.0.3)
-
net9.0
- Microsoft.OpenApi.Readers (>= 1.6.24)
- ModelContextProtocol (>= 0.1.0-preview.7)
- Newtonsoft.Json (>= 13.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.