danskcvrapi-mcp
v1.0.0
Published
Official MCP server for DanskCvrApi — gives AI agents (Claude Desktop, Claude Code, Cursor, etc.) tools to look up Danish companies, financials, industries and statistics from the CVR register.
Downloads
166
Maintainers
Readme
danskcvrapi-mcp
Official MCP server (Model Context Protocol) for DanskCvrApi — gives AI agents such as Claude Desktop, Claude Code and Cursor direct access to Danish company data from the CVR register.
The agent can look up companies, search, fetch financial statements, production units, persons and statistics — without writing a single API call.
Prerequisites
An API key from https://danskcvrapi.dk/dashboard/keys (Hobby plan is free: 1,000 calls/month).
Setup
Claude Desktop / Cursor / Windsurf
Add to your MCP config (claude_desktop_config.json, ~/.cursor/mcp.json, …):
{
"mcpServers": {
"danskcvrapi": {
"command": "npx",
"args": ["-y", "danskcvrapi-mcp"],
"env": {
"DANSKCVRAPI_KEY": "sk_live_your_key_here"
}
}
}
}Claude Code (CLI)
claude mcp add danskcvrapi \
--env DANSKCVRAPI_KEY=sk_live_your_key_here \
-- npx -y danskcvrapi-mcpConfiguration (env)
| Variable | Required | Description |
|---|---|---|
| DANSKCVRAPI_KEY | yes | API key (Bearer). |
| DANSKCVRAPI_URL | no | Override base URL (default https://api.danskcvrapi.dk). |
Tools
27 tools across 7 categories:
Lookup & Search
get_company— full company object by CVR numbersearch_companies— full-text search by name / CVR / P-numberautocomplete_companies— fast as-you-type suggestionsadvanced_search— 40+ filters for lead generation and segmentation (Pro+)batch_get_companies— look up up to 100 companies at once (Pro+)get_companies_by_address— find companies at a given addresscompare_companies— side-by-side comparison of 2-5 companiesvalidate_cvr— offline modulus-11 validation (no API call)
Company Sub-Resources
get_company_group— ownership graph: owners and subsidiariesget_company_roles— management and ownership rolesget_company_history— change history (name, address, industry, status)get_company_production_units— all P-numbers / branchesget_company_financial_statements— XBRL annual reports (Pro+)
Production Units & Persons
get_production_unit— single production unit by P-numberget_person— person with all company affiliationssearch_persons— search persons by name
Credit Score
get_credit_score— computed credit score and financial health rating (Pro+)
Statistics
get_stats_totals— overall register key figuresget_stats_top— top lists (e.g. largest industries)get_stats_by_industry— company count by industry (DB07)get_stats_by_municipality— company count by municipalityget_stats_by_postal_code— company count by postal codeget_stats_by_company_type— company count by legal formget_stats_foundations_per_year— new foundations per yearget_net_growth— net growth (foundations minus dissolutions) over time (Pro+)
Replication
get_replication_events— change feed for data warehouse syncget_latest_sequence_number— current cursor position in the event feed
Reference Data
list_industries— DB07 industry codes with nameslist_municipalities— all Danish municipalities with codeslist_regions— five Danish regions with codesexplain_field— plain-text explanation of any CVR/financial field
Every call respects your key's scopes and plan limits exactly as the REST API does.
Example
You (to Claude): "Find Novo Nordisk in CVR and tell me their status, industry and latest employee count."
Claude calls search_companies + get_company and responds with structured data.
You: "Show me all active software companies in Copenhagen with 10-50 employees."
Claude calls advanced_search with the appropriate filters.
API Paths
All tools call https://api.danskcvrapi.dk/v1/…:
| Tool | Endpoint |
|---|---|
| get_company | GET /companies/{cvr} |
| search_companies | GET /companies/search |
| autocomplete_companies | GET /companies/autocomplete |
| advanced_search | GET /search/advanced |
| batch_get_companies | POST /companies/batch |
| get_companies_by_address | GET /companies/by-address |
| get_company_group | GET /companies/{cvr}/group |
| get_company_roles | GET /companies/{cvr}/roles |
| get_company_history | GET /companies/{cvr}/history |
| get_company_production_units | GET /companies/{cvr}/production-units |
| get_company_financial_statements | GET /companies/{cvr}/financial-statements |
| get_production_unit | GET /production-units/{pnummer} |
| get_person | GET /persons/{id} |
| search_persons | GET /persons/search |
| get_credit_score | GET /credit-score/{cvr} |
| get_stats_totals | GET /stats/totals |
| get_stats_top | GET /stats/top |
| get_stats_by_industry | GET /stats/industries |
| get_stats_by_municipality | GET /stats/municipalities |
| get_stats_by_postal_code | GET /stats/postal-codes |
| get_stats_by_company_type | GET /stats/company-types |
| get_stats_foundations_per_year | GET /stats/foundations-per-year |
| get_net_growth | GET /search/net-growth |
| get_replication_events | GET /replication/companies/events |
| get_latest_sequence_number | GET /replication/companies/latest-sequence-number |
| list_industries | GET /industries |
| list_municipalities | GET /municipalities |
| list_regions | GET /regions |
Links
- Guide: https://danskcvrapi.dk/guides/mcp
- API docs: https://danskcvrapi.dk/docs
- Support: https://danskcvrapi.dk/contact
License
MIT
