LexDania MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@LexDania MCP Serverask about the Danish Environmental Protection Act"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
LexDania MCP Server
A Model Context Protocol (MCP) server running on Cloudflare Workers. It enables AI models to query, structurally inspect, and perform RAG-based Q&A over Danish legislation published on Retsinformation.dk using their underlying LexDania XML.
Getting Started
Prerequisites
Node.js &
pnpmCloudflare Wrangler CLI (
pnpm install -g wrangler)Gemini API Key
Installation
pnpm installLocal Development
Create a
.dev.varsfile in the root:GEMINI_API_KEY=your-gemini-api-key FILE_SEARCH_STORE=fileSearchStores/your-store-id MCP_AUTH_TOKEN=your-secret-bearer-tokenStart the development server:
pnpm dev
Deployment
pnpm deployRelated MCP server: MCP Server Legifrance
Connection
Add the following to your MCP client configuration (e.g., claude_desktop_config.json):
{
"mcpServers": {
"lexdania": {
"url": "https://lexdania.pacmate.dk/mcp",
"headers": {
"Authorization": "Bearer <your-mcp-auth-token>"
}
}
}
}Features & Tools
Exposes the following tools to MCP clients:
lexdania_ask_document: Free-text Q&A over Danish legislative documents using Gemini File Search.lexdania_query_document: Execute exact, namespace-aware XPath queries against a law's LexDania XML. Returns matched XML structures and aligned plain-text strings. The default (unprefixed) namespace is mapped tod:.lexdania_profile_document: Get a structural profile (root tag, schema variant, tag counts, depth, and namespaces) of a law's XML.lexdania_metadata: Fetch and parse JSON-LD metadata for a Danish legislation document by its ELI path or URL (returns title, document type, dates, ministry, status, and relationship edges).lexdania_compare_structure: Diff elements and attributes across multiple documents to identify parser drift and schema variants.
Project Structure
├── src/
│ ├── index.ts # Worker entrypoint (routing & auth)
│ ├── http/ # HTTP authentication logic
│ ├── mcp/ # MCP server composition & tools
│ │ └── tools/ # Tool implementations (ask, query, structure, metadata, compare)
│ └── services/ # Core services (Gemini store, XML parsing)
├── test/ # Vitest suite
└── wrangler.jsonc # Cloudflare Workers configurationLicense
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Cloudflare Workers MCP server: ai-model-router
Cloudflare Workers MCP server: ai-gateway
Cloudflare Workers MCP server: ai-crawler-policy
Cloudflare Workers MCP server: llm-output-quality-monitor
Related MCP Servers
- FlicenseDqualityNot gradedmaintenanceA Model Context Protocol server implementation that provides structured, AI-friendly access to eRegulations data, making it easier for AI models to answer user questions about administrative procedures.419 npm-
- AlicenseNot gradedqualityDmaintenanceA server implementing the Model Context Protocol to allow direct access to French legal resources (laws, codes, case law) from compatible Large Language Models like Claude, enabling interactive legal research through the Legifrance API.65MIT
- FlicenseNot gradedqualityCmaintenanceA deployable authentication-free MCP (Model Context Protocol) server on Cloudflare Workers that allows you to add custom tools and connect to AI clients like Claude Desktop or Cloudflare AI Playground.-
- FlicenseNot gradedqualityCmaintenanceA Cloudflare Workers-based MCP server that enables deployment of custom tools accessible via the Model Context Protocol without authentication requirements.-