MCPpedia last refreshed this data
Adventure Works MCP Server is an MCP server that provides other tools to AI agents. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 69/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"adventure-works-mcp-server": {
"url": "<see-readme-for-url>"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
An end-to-end portfolio sample showing a React frontend, a .NET 10 JSON-RPC MCP gateway, Azure SQL grounding, managed identity authentication, Key Vault secret references, Application Insights, GitHub Actions, GHCR, and low-cost Azure hosting.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in other
deja-vu: local memory over the session histories of forty-three coding agents.
专门为 agent 打造的 agent 搜索工具,具备多语言搜索能力,覆盖中文/英文/学术/代码/购物/金融/新闻/百科。
Searchable football data provider documentation for AI coding agents. Like Context7 for football data.
Create a Scandit account, get trial license keys and set up the Scandit SDK in your app.
MCP Security Weekly
Get CVE alerts and security updates for Adventure Works MCP Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An end-to-end portfolio sample showing a React frontend, a .NET 10 JSON-RPC MCP gateway, Azure SQL grounding, managed identity authentication, Key Vault secret references, Application Insights, GitHub Actions, GHCR, and low-cost Azure hosting.
This repository is a self-directed portfolio project, not client or employer work product. It exists to demonstrate hands-on ability across a full stack: cloud infrastructure as code, a governed data-access API, identity and secret management, observability, and CI/CD, wired together end to end rather than left as disconnected samples.
flowchart LR
User[Browser] --> Frontend[Azure Blob Static Website<br/>React/Vite assets]
Frontend -->|HTTPS + CORS| Gateway[Azure Container Apps Consumption<br/>.NET 10 MCP gateway]
Gateway -->|Entra token via user-assigned identity| SQL[Azure SQL Database<br/>AdventureWorksLT]
Gateway -->|Key Vault reference| Vault[Azure Key Vault<br/>Anthropic API key]
Gateway --> Insights[Application Insights]
Insights --> Logs[Log Analytics Workspace]
GitHub[GitHub Actions] -->|OIDC + blob upload| Frontend
GitHub -->|GHCR push| Registry[GitHub Container Registry]
Registry -->|Public image pull| Gateway
The default deployment is intentionally public and low-cost. This repository is a public portfolio/sample deployment, not a production network design. The public posture is a deliberate trade-off to keep the system accessible from Codespaces and local VS Code while minimizing fixed networking cost. Production deployments for real data should move behind private networking, private DNS, and a WAF/API gateway.
| Layer | Azure resource | Responsibility |
|---|---|---|
| Frontend | Blob Static Website | Serves the compiled Vite/React application. |
| API | Container Apps Consumption | Runs the .NET gateway with health probes and limited horizontal scaling. |
| Container image | GHCR | Stores and distributes the gateway image. |
| Data | Azure SQL serverless database | Stores and queries the AdventureWorksLT sample data. |
| Secret store | Azure Key Vault | Stores the Anthropic API key outside Terraform state. |
| Identity | User-assigned managed identity | Reads Key Vault and authenticates to SQL. |
| Observability | Application Insights + Log Analytics | Collects application, platform, and diagnostic telemetry. |
| Delivery | GitHub Actions + Azure OIDC | Tests code, publishes the image, and uploads frontend assets without long-lived Azure credentials. |
The gateway provides governed, read-only database access through a JSON-RPC MCP endpoint. The chat endpoint uses Claude only after a tool result has been retrieved:
sequenceDiagram
participant B as Browser
participant F as Blob frontend
participant G as Container App gateway
participant I as Managed identity
participant D as Azure SQL
B->>F: Load index.html and assets
B->>G: POST /api/v1/mcp initialize
G-->>B: JSON-RPC initialize result
B->>G: POST /api/v1/mcp tools/list
G-->>B: Tool definitions and input schemas
B->>G: POST /api/v1/mcp tools/call { schema, table, limit }
G->>I: Request SQL access token
I->>D: Authenticate as gateway identity
G->>D: Read schema metadata or safe table rows
D-->>G: Table metadata or rows
G->>G: Exclude credential columns; redact and mark personal, contact, and location columns
G-->>B: MCP text response
/api/v1/mcp returns governed SQL context through JSON-RPC tool results. POST /api/v1/chat uses Anthropic only after retrieving an approved MCP tool result; it never sends database entities or unapproved columns to the provider.
The gateway is split into explicit ownership boundaries:
Core/DTOs: MCP request, response, tool, and content contracts.Data/Scaffolded: database-first EF Core context and generated SalesLT entities. Regenerate generated files rather than editing them