Skip to content

Repository files navigation

BootstrapBlazor MCP Server

.NETBootstrapBlazorMCPDockerLicense

中文版 | English

A Model Context Protocol (MCP) Server built on ASP.NET Core and BootstrapBlazor that provides AI assistants (such as Claude, Cursor, Dify, FastGPT, etc.) with intelligent access to the full BootstrapBlazor component library documentation, including API parameters and live code samples.


✨ Features

  • 🔄 Auto Git Sync — Periodically clones/pulls the official BootstrapBlazor repository on a configurable cron schedule.
  • 📄 Doc Extraction — Automatically extracts component API tables (via reflection + XML docs) and Razor/C# code samples into Markdown files, ready for RAG.
  • 🤖 MCP Tools — Exposes standard MCP tools (GetComponentList, SearchComponentKeyword, GetComponentDocs, AskComponentExpert) for any MCP-compatible AI client.
  • 🌐 REST API — Provides HTTP endpoints for non-MCP integrations (Dify, FastGPT, custom agents).
  • 🧠 Optional AI Q&A — Integrates with any OpenAI-compatible API to answer natural-language questions about BootstrapBlazor components.
  • 🖥️ Admin UI — A built-in Blazor management dashboard (with login protection) to configure settings, trigger syncs, and monitor status.
  • 🌍 i18n Support — UI supports both zh-CN and en-US locales.
  • 🐳 Docker Ready — Ships with a Dockerfile for one-command deployment.

🏗️ Architecture

┌────────────────────────────────────────────────────────┐
│ BootstrapBlazor.McpServer │
│ │
│ ┌──────────────┐ ┌──────────────────────────────┐ │
│ │ GitSync Job │──▶│ DocsExtractorService │ │
│ │ (Coravel │ │ (Reflection + XML + Razor) │ │
│ │ Cron) │ └────────────┬─────────────────┘ │
│ └──────────────┘ │ Markdown Files │
│ ▼ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ McpService (MCP Tools) │ │
│ │ GetComponentList | SearchComponentKeyword │ │
│ │ GetComponentDocs | AskComponentExpert │ │
│ └──────┬────────────────────────┬──────────────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────┐ ┌──────────────────────┐ │
│ │ MCP / SSE │ │ REST HTTP API │ │
│ │ /mcp │ │ /api/components/... │ │
│ └─────────────┘ └──────────────────────┘ │
└────────────────────────────────────────────────────────┘

🚀 Quick Start

Prerequisites

Run Locally

git clone https://github.com/your-org/BootstrapBlazor.McpServer.git
cd BootstrapBlazor.McpServer
# Edit appsettings.json with your configuration (see Configuration section)
dotnet run

The server starts at http://localhost:5251 by default.

Run with Docker

docker build -t bootstrapblazor-mcp .
docker run -d \
-p 5251:5251 \
-e GitSync__RepositoryUrl="https://gitee.com/LongbowEnterprise/BootstrapBlazor.git" \
-e GitSync__CronSchedule="0 3 * * *" \
-e GitSync__OutputDir="/app/data/OutputRAG" \
-e AI__BaseUrl="https://api.openai.com/v1" \
-e AI__ApiKey="YOUR_API_KEY" \
-e AI__Model="gpt-4o" \
-v /your/data/path:/app/data \
bootstrapblazor-mcp

⚙️ Configuration

Edit appsettings.json or use environment variables (Docker-friendly):

{
"GitSync": {
"RepositoryUrl": "https://gitee.com/LongbowEnterprise/BootstrapBlazor.git",
"CronSchedule": "0 3 * * *",
"LocalPath": "/app/data/BootstrapBlazorRepo",
"OutputDir": "/app/data/OutputRAG"
},
"AI": {
"BaseUrl": "https://api.openai.com/v1",
"ApiKey": "YOUR_API_KEY_HERE",
"Model": "gpt-4o"
}
}
KeyDescriptionDefault
GitSync:RepositoryUrlURL of the BootstrapBlazor source repositoryGitee mirror
GitSync:CronScheduleCron expression for auto-sync0 3 * * * (3 AM daily)
GitSync:LocalPathLocal path to clone the repo into/app/data/BootstrapBlazorRepo
GitSync:OutputDirOutput directory for generated Markdown/app/data/OutputRAG
AI:BaseUrlOpenAI-compatible API base URLhttps://api.openai.com/v1
AI:ApiKeyAPI key for the AI service
AI:ModelModel name to usegpt-4o

🔌 MCP Integration

Connecting from Claude Desktop

Add the following to your Claude Desktop config (claude_desktop_config.json):

{
"mcpServers": {
"bootstrapblazor": {
"url": "http://localhost:5251/mcp"
}
}
}

Connecting from Cursor

In Cursor settings, add an MCP server pointing to http://localhost:5251/mcp.

Available MCP Tools

ToolDescription
GetComponentListReturns a list of all available BootstrapBlazor components
SearchComponentKeywordSearches for components matching a keyword
GetComponentDocsReturns the raw API table + code samples for a component
AskComponentExpertAnswers a natural-language question about a component (uses AI if enabled)

🌐 REST API

For non-MCP integrations (e.g., Dify, FastGPT):

MethodEndpointDescription
GET/api/componentsList all component names
GET/api/components/search?keyword={kw}Search components by keyword
GET/api/components/{name}/docsGet raw docs for a component
GET/api/components/{name}/ask?q={question}Ask an AI-powered question

🖥️ Admin Dashboard

Navigate to http://localhost:5251 to access the Blazor admin UI. Log in with the credentials configured in appsettings.json (default: see your settings).

Features:

  • View and edit server configuration
  • Manually trigger Git sync
  • Monitor sync status and logs
  • Toggle AI integration on/off

🛠️ Tech Stack

LayerTechnology
FrameworkASP.NET Core (.NET 10)
UIBootstrapBlazor (Blazor Server)
MCPModelContextProtocol SDK 0.9
AI IntegrationMicrosoft.Extensions.AI + OpenAI
Git SyncLibGit2Sharp
SchedulingCoravel
i18nASP.NET Core Localization

📁 Project Structure

BootstrapBlazor.McpServer/
├── Components/ # Blazor UI components (Admin pages, App shell)
├── Services/
│ ├── McpService.cs # MCP tool definitions
│ ├── DocsExtractorService.cs # Docs extraction logic (reflection + XML + Razor)
│ ├── GitSyncInvocable.cs # Git clone/pull + trigger extraction
│ ├── AiIntegrationService.cs # OpenAI-compatible HTTP client
│ └── AppSettingsManager.cs # Read/write appsettings.json at runtime
├── Locales/ # i18n JSON files (zh-CN, en-US)
├── Program.cs # App startup & endpoint mapping
├── Dockerfile # Container build definition
└── appsettings.json # Default configuration

📄 License

This project is licensed under the MIT License. See LICENSE for details.


🤝 Contributing

Contributions are welcome! Please open an issue or submit a pull request.

About

BootstrapBlazor Documents & Source Code MCP Server for Copilot

Resources

Stars

19 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages