GOV.UK Design System MCP
GOV.UK Design System MCP
TypeScript MCP server that serves locally-crawled GOV.UK Design System guidance from SQLite FTS5.
Features
Manual crawler restricted to approved GOV.UK Design System sections.
SQLite-backed storage at
data/govuk-design-system.db.FTS5 search with deterministic ranking and snippets.
MCP tools:
search(query: string)fetch(id: string)version()
STDIO transport adapter isolated from core logic.
Setup
bun install
cp .env.example .envBuild the Local Dataset
bun run crawlRun MCP Server
bun run startAdd This MCP to Developer Tools
The server uses STDIO transport, so most MCP-compatible tools can run it with a command.
Use this command in your MCP client configuration:
bun run /absolute/path/to/govuk-frontend-mcp/src/index.tsIf your client supports separate command and args, use:
command:
bunargs:
["run", "/absolute/path/to/govuk-frontend-mcp/src/index.ts"]cwd:
/absolute/path/to/govuk-frontend-mcp
Example: Claude Code (MCP config)
{
"mcpServers": {
"govuk-design-system": {
"command": "bun",
"args": [
"run",
"/absolute/path/to/govuk-frontend-mcp/src/index.ts"
],
"cwd": "/absolute/path/to/govuk-frontend-mcp"
}
}
}Example: Cursor / VS Code style MCP config
∏
"mcpServers": {
"govuk-design-system": {
"type": "stdio",
"command": "bun",
"args": [
"run",
"/absolute/path/to/govuk-frontend-mcp/src/index.ts"
],
"cwd": "/absolute/path/to/govuk-frontend-mcp"
}
}
}Example: Docker command for clients that run shell commands
docker compose run --rm govuk-design-system-mcp bun run src/index.tsAfter connecting, the MCP should expose:
search(query: string)fetch(id: string)version()
Tip: run bun run crawl whenever you want to refresh the local GOV.UK data before using the MCP in your tool.
Docker Compose
docker compose up --buildTest
bun test
bun run typecheckLatest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/georgeherby/govuk-frontend-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server