Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Inicia sesión con Google para escribir reseñas.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Nordic Data

de Mnymannversión 1.5.6i★ 1iComputadora o nube
Nombre en el registroio.github.Mnymann/nordic-data

Cómo instalar

Resumen

Descripción del creador (original en inglés)

Company, KYB, VAT, sanctions, LEI and address data for 15 EU countries.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Computadora o nube
  • Transporte: stdio, Streamable HTTP
  • Categoría: Derecho y datos públicos
  • Debes completar: NORDIC_API_KEY, Authorization

Instalación

Elige la app de IA que usas y copia la configuración.

Pasó 4/4 revisiones · Lo que preguntas pasa por el servidor del autor (nordic-data-mcp-production.up.railway.app)

Primero: ¿qué IA usas?

Elige tu app y los pasos aparecen abajo.

Funciona con Claude · unos 5 min

Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo) · Configúralo una vez en claude.ai o en la app de escritorio y úsalo en el chat · las cuentas gratis pueden añadir 1

  1. Regístrate y crea una clave de Nordic Data

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.

    Cómo obtener la clave está en el README del autor, más abajo

  2. Abre la página Connectors de Claude

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  3. Pulsa “+ Add” → “Add custom connector” y completa estos 2 campos

    Copia cada valor al campo con el mismo nombre en Claude y pulsa Continue

    Name · NombreNordic Data
    Remote MCP server URL · Direcciónhttps://nordic-data-mcp-production.up.railway.app/mcp/auth

    En Request headers, añade este nombre y valor

    Nombre del headerAuthorization
    ValorBearer <pega tu clave aquí>

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

    Deja Authentication como lo detectó Claude y pulsa Add

  4. Actívalo en un chat

    +ConnectorsNordic Data

  5. Pruébalo

    Usa Nordic Data y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Claude dice que está usando Nordic Data o muestra una herramienta de Nordic Data en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión

ChatGPT todavía no puede conectar Nordic Data

Nordic Data necesita tu propia clave para conectarse, pero la ayuda de OpenAI solo describe el inicio de sesión con OAuth; no hay una opción de clave que hayamos podido verificar

Lo que puedes hacer en su lugar

A · Usa una app que pueda conectar Nordic Data

  • Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo) · Configúralo una vez en claude.ai o en la app de escritorio y úsalo en el chat · las cuentas gratis pueden añadir 1
  • Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)
  • Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)
  • Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)

B · Otros en Derecho y datos públicos que funcionan con ChatGPT

Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave

Funciona con Claude Code · unos 5 min

Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)

  1. Regístrate y crea una clave de Nordic Data

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.

    Cómo obtener la clave está en el README del autor, más abajo

  2. Abre la Terminal

    Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell

  3. Pega este comando y pulsa Enter

    claude mcp add --transport http nordic-data https://nordic-data-mcp-production.up.railway.app/mcp/auth --header 'Authorization: your-value'

    Cambia “your-value” por tu clave antes de pulsar Enter

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  4. Escribe /mcp en Claude Code

    Deberías ver Nordic Data en la lista como conectado

  5. Pruébalo

    Usa Nordic Data y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Claude Code dice que está usando Nordic Data o muestra una herramienta de Nordic Data en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Funciona con Cursor · unos 5 min

Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)

  1. Regístrate y crea una clave de Nordic Data

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.

    Cómo obtener la clave está en el README del autor, más abajo

  2. Pulsa este botón para abrir Cursor

    Abrir en Cursor

    Cursor te pedirá confirmar; pulsa Install

  3. Escribe tu clave

    En la configuración de Nordic Data, Authorization está vacío; añade tu clave y guarda

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  4. Abre el chat de IA de Cursor en modo Agent

  5. Pruébalo

    Usa Nordic Data y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si Cursor dice que está usando Nordic Data o muestra una herramienta de Nordic Data en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Funciona con VS Code · unos 5 min

Necesitas una clave de Nordic Data (regístrate en el sitio del autor; puede tener costo)

  1. Regístrate y crea una clave de Nordic Data

    Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Puede tener costo.

    Cómo obtener la clave está en el README del autor, más abajo

  2. Pulsa este botón para abrir VS Code

    Abrir en VS Code

    VS Code te pedirá confirmar; pulsa Install

  3. Escribe tu clave

    En la configuración de Nordic Data, Authorization está vacío; añade tu clave y guarda

    Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie

  4. Abre el chat de IA de VS Code en modo Agent

  5. Pruébalo

    Usa Nordic Data y dime qué puedes hacer por mí; luego muéstrame una cosa

    ✓ Si VS Code dice que está usando Nordic Data o muestra una herramienta de Nordic Data en la respuesta, ya está conectado

Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión

Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps

Ver todas las apps que usan MCP →

Dirección para apps que se conectan por la web

Direcciónhttps://nordic-data-mcp-production.up.railway.app/mcp/auth

La configuración JSON está en “Para desarrolladores”, abajo

¿Te atascaste? Pregunta a quien usa Nordic Data💬 Conversación →
Para desarrolladores: comandos de Terminal y configuración JSON

Por la web

Claude Code

claude mcp add --transport http nordic-data https://nordic-data-mcp-production.up.railway.app/mcp/auth --header 'Authorization: your-value'

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "nordic-data": {
      "url": "https://nordic-data-mcp-production.up.railway.app/mcp/auth",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "nordic-data": {
      "type": "http",
      "url": "https://nordic-data-mcp-production.up.railway.app/mcp/auth",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

Instalado en tu computadora

Claude Code

claude mcp add nordic-data --env NORDIC_API_KEY=your-value --env NORDIC_DEFAULT_COUNTRY=your-value --env NORDIC_VERBOSE_ERRORS=your-value -- npx -y nordic-data-mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "nordic-data": {
      "command": "npx",
      "args": [
        "-y",
        "nordic-data-mcp"
      ],
      "env": {
        "NORDIC_API_KEY": "your-value",
        "NORDIC_DEFAULT_COUNTRY": "your-value",
        "NORDIC_VERBOSE_ERRORS": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "nordic-data": {
      "command": "npx",
      "args": [
        "-y",
        "nordic-data-mcp"
      ],
      "env": {
        "NORDIC_API_KEY": "your-value",
        "NORDIC_DEFAULT_COUNTRY": "your-value",
        "NORDIC_VERBOSE_ERRORS": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "nordic-data": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "nordic-data-mcp"
      ],
      "env": {
        "NORDIC_API_KEY": "your-value",
        "NORDIC_DEFAULT_COUNTRY": "your-value",
        "NORDIC_VERBOSE_ERRORS": "your-value"
      }
    }
  }
}

Valores que debes completar

  • NORDIC_API_KEY secreto obligatorio env
    Your Nordic Data API key — get one at https://addonnordic.com (free tier: 100 lookups/day)
  • NORDIC_DEFAULT_COUNTRY env
    Optional ISO 3166-1 alpha-2 country code (lowercase) to assume when a tool call omits the country argument. One of: dk, no, se, fi, ie, uk, fr, de, cz, pl, lv, ee, nl, be, lu.
  • NORDIC_VERBOSE_ERRORS env
    Optional. Set to 'true' to include upstream HTTP status and request-id details in error messages. Useful for debugging.
  • Authorization secreto obligatorio HTTP header
    Bearer ndk_... — your personal API key from https://addonnordic.com

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

De un vistazo

Descargas por semanai
70/sem
Licenciai
Sin licencia indicada
Conexión
Computadora o nube
Transporte
stdio, streamable-http
Última versióni
1.5.6
Publicado en el registroi
16 sept 2026
Último cambio de códigoi
10 nov 2026
Creador
Mnymann
Paquetes
npm: nordic-data-mcp
Estado en el registro
Activo

Qué apps pueden usarlo

Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.

Se conectan por internet en

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

Se ejecutan en tu computadora en

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

Todas las apps, con ventajas y desventajas →

Qué puede hacer

Nombres y descripciones de las herramientas tal como los informó el servidor el 9 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.

  • lookup_company

    Call before onboarding a supplier or customer to confirm the legal entity exists and is active. Look up basic company data (name, address, status, industry, VAT registration, founding date) from official European business registries. Supports 15 countries: DK (CVR), NO (Brønnøysu

  • validate_vat

    Call before issuing an invoice, processing a cross-border payment, or storing a counterparty's VAT number. Validate a VAT registration number for any of the 27 EU member states against the official EU VIES service (DK is checked against the national CVR register). Returns validit

  • screen_sanctions

    Screen one or more person or company names against the UN, EU, UK (FCDO UK Sanctions List) and US OFAC sanctions lists plus PEPs (745K+ entries, UN direct and the rest via OpenSanctions). Typical use: counterparty checks before onboarding or processing a payment. Returns per-name

  • kyb_full

    Run before a consequential decision — onboarding a counterparty, approving a payment, extending credit, or signing a contract. Full Know-Your-Business master report for a company across 15 EU countries (DK, NO, SE, FI, IE, UK, FR, DE, CZ, PL, LV, EE, NL, BE, LU). Aggregates 9 sec

  • autocomplete_address

    Address autocomplete with coordinates. Sources: DAWA (DK, official address register), Kartverket/Geonorge (NO, official), BAN (FR, official Base Adresse Nationale), and OpenStreetMap Nominatim (SE, FI). Returns ranked address suggestions with lat/lng and a match confidence. Suppo

  • lookup_lei

    Look up a Legal Entity Identifier (LEI) via GLEIF — the global standard for entity identification. Returns legal name, registered address, status, parent + ultimate parent relationships, and child entities (subsidiaries). Also supports reverse lookup from a national company numbe

  • company_enriched

    Company registry data plus national industry statistics in one call. Returns `company` (same shape as lookup_company) and `industryStats` — a time series from the national statistics office for the company's industry code (currently Danmarks Statistik for DK); `industryStats.avai

  • fr_history

    French company history timeline. Returns one event per change to the company's name, activity (NAF code), status (active/closed), legal form, or social-economy flag, derived from INSEE Sirene 3.11's bitemporal periodesUniteLegale array. Includes 'initial: ' events that show the s

  • list_endpoints

    Discovery meta-tool. Lists ALL available Nordic Data API data endpoints (HTTP method, path, short description) by reading the backend's live OpenAPI spec at runtime — far beyond the curated high-level tools. Use this to discover capabilities the dedicated tools do not cover, then

  • get_endpoint_schema

    Discovery meta-tool. Returns the full parameter and response schema for a single Nordic Data API endpoint (path + method), read from the backend's live OpenAPI spec with $refs resolved inline. Use after list_endpoints to learn exactly which parameters an endpoint takes before cal

  • call_endpoint

    Discovery meta-tool. Executes a read-only HTTP request against the Nordic Data API for any data endpoint discovered via list_endpoints, and returns the response. Authenticates with the same scoped API key as the curated tools. Strictly read-only: only GET/HEAD requests are permit

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 11 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub Mnymann, dueña del repo

  • ✓ Superada

    Sigue en mantenimiento

    Último cambio de código: ayer

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • ✓ Superada

    El endpoint responde

    Respondió en 121 ms (HTTP 200)

  • – No aplica

    Inicio de sesión con OAuth

    No hace falta iniciar sesión

  • ✓ Superada

    Sin instrucciones ocultas en las descripciones de herramientas

    Leímos 11 descripciones de herramientas y no encontramos instrucciones ocultas para la IA

Conversación

Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.

Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.

Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.

Inicia sesión con Google para publicar

Reseñas de usuarios

Aún no hay reseñas

Inicia sesión con Google para escribir una reseña

Comparado con otros en Derecho y datos públicosi

  • Más estrellas que el 86% de los otros 1804 servidores de esta categoría
  • Publicado en el registro más recientemente que el 38% de los otros 1804 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 1804 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Nordic Data?

Superó 4 de 4 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

Debes completar: NORDIC_API_KEY, Authorization

¿Se ejecuta en mi computadora o en la nube?

Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez ayer, y la última versión (1.5.6) llegó al registro hace 2 meses.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funciona en apps que aceptan MCP remoto, como ChatGPT Business o superior.

¿Qué puedo usar en su lugar?

En la misma categoría: Korean Law MCP, Global law, Tw Legal Rag

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Korean Law MCP

Korean law: statutes, precedents, ordinances, treaties and citation verification (법제처 API).

de chrisryugjMuy usado★ 2,9 milActualizado hace 8 días

Se ejecuta en la nube

Global law

The law of nearly every country on earth, any date: read it, see what changed it, check citations.

de lexifinaEn crecimiento★ 1,9 milActualizado ayer

Se ejecuta en la nube✓ lexifina.com

Tw Legal Rag

Taiwan law MCP server: 22M court judgments, statutes, agency rulings, with citation checks

de aa0101181514En crecimiento★ 345Actualizado hace 5 días

Se ejecuta en la nube

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

Nordic Data MCP Server

A Model Context Protocol server that gives AI agents (Claude, Cursor, Claude Code, ChatGPT, Copilot, etc.) direct access to official European business data across 15 European countries.

Look up companies, validate VAT numbers, run KYB reports, screen against sanctions lists, autocomplete addresses, and resolve LEI ownership — all from inside your AI assistant.

DK · NO · SE · FI · IE · UK · FR · DE · CZ · PL · LV · EE · NL · BE · LU

NL and DE require a Starter+ subscription (free-tier API keys receive HTTP 402 upgrade_required). On paid tiers, NL calls cost 5x quota units and DE calls cost 3x; all other countries cost 1x.


Quick start

1. Get an API key

Sign up at addonnordic.com and grab your NORDIC_API_KEY. Free tier available.

2. Add to Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%/Claude/claude_desktop_config.json (Windows):

{

"mcpServers": { "nordic-data": { "command": "npx", "args": ["-y", "nordic-data-mcp"], "env": { "NORDIC_API_KEY": "YOUR_KEY_HERE" } } } }

Restart Claude Desktop. You should see "nordic-data" appear in the tools menu.

3. Add to Cursor

In Cursor settings → MCP → Add new server, or edit ~/.cursor/mcp.json:

{

"mcpServers": { "nordic-data": { "command": "npx", "args": ["-y", "nordic-data-mcp"], "env": { "NORDIC_API_KEY": "YOUR_KEY_HERE" } } } }

4. Add to Claude Code
claude mcp add nordic-data --env NORDIC_API_KEY=YOUR_KEY_HERE -- npx -y nordic-data-mcp
5. Add to ChatGPT (Pro, Business, or Enterprise)

ChatGPT supports remote MCP servers as custom connectors. No API key needed from you — the hosted server handles upstream authentication.

  1. ChatGPT → Settings → Connectors → Add custom connector
  2. URL: https://nordic-data-mcp-production.up.railway.app/mcp
  3. Done — all 11 tools are available immediately.

Custom connectors require a ChatGPT Pro, Business, Team, or Enterprise plan.

6. Add to Claude.ai (web)

Same hosted endpoint, no local install:

  1. Claude.ai → Settings → Connectors → Add custom connector
  2. URL: https://nordic-data-mcp-production.up.railway.app/mcp
  3. Done.

Available tools

ToolWhat it does
lookup_companyBasic company data from official registries (CVR, Brønnøysund, Bolagsverket, Companies House, INSEE, etc.)
validate_vatValidate a VAT number for the 27 EU member states against VIES
screen_sanctionsBulk screen up to 1000 names against UN/EU/UK/OFAC/PEP lists (UK = FCDO UK Sanctions List; 745K+ entries)
kyb_fullMaster Know-Your-Business report — identity, persons, financials, LEI, VAT, sanctions, adverse media, risk score
autocomplete_addressAddress autocomplete with coordinates for DK (DAWA), NO (Kartverket), FR (BAN), SE and FI (OpenStreetMap Nominatim)
lookup_leiGLEIF Legal Entity Identifier lookup — forward, reverse, and parent/children relationships
company_enrichedCompany registry data + national industry statistics in one call (DK, NO, SE, FI)
fr_historyFrench company history timeline (name, activity, status, legal-form changes) from INSEE Sirene bitemporal data
list_endpointsDiscovery: list all read-only data endpoints in the underlying API (230+), with optional keyword filter
get_endpoint_schemaDiscovery: full parameter + response schema for one endpoint, before calling it
call_endpointDiscovery: execute a read-only request (GET/HEAD, plus three allowlisted POST screening queries) against any discovered endpoint
Example agent prompts

"Look up CVR 61056416 in Denmark"

→ calls lookup_company { country: "dk", id: "61056416" } → Carlsberg A/S

"Run a full KYB report on Equinor (NO 923609016)"

→ calls kyb_full { country: "no", id: "923609016" }

"Is LU26375245 a valid VAT number?"

→ calls validate_vat { country: "LU", vat_number: "26375245" }

"Screen these names against sanctions: Vladimir Putin, Acme Corp, John Smith"

→ calls screen_sanctions { names: [...] }

"Find the LEI for Tesco UK (00445790) and include parent and subsidiaries"

→ calls lookup_lei { mode: "reverse", country: "uk", id: "00445790" }


Country / ID format reference

CountryID typeFormat
DKCVR8 digits
NOOrganisasjonsnummer9 digits
SEOrganisationsnummer10 digits (with or without dash)
FIY-tunnusNNNNNNN-D (7 digits + check digit)
IECRO number1–7 digits
UKCompanies House8 chars (digits, or prefix like SC, NI, OC)
FRSIREN9 digits
DELEI or HRBLEI = 20 alphanum; HRB = prefix + digits
CZIČO8 digits
PLNIP / REGON / KRSNIP=10, REGON=9/14, KRS=10
LVReģistrācijas nr.11 digits
EERegistrikood8 digits
NLKvK-nummer8 digits
BEBCE/KBO10 digits
LURCSLB + digits

The table above applies to lookup_company, kyb_full and lookup_lei (reverse mode). company_enriched covers DK, NO, SE and FI; autocomplete_address covers DK, NO, SE, FI and FR.

For validate_vat, country codes are uppercase VIES codes for the 27 EU member states — use EL (not GR) for Greece. The United Kingdom and Norway are not supported.


Configuration

The only environment variable you need to set is:

VariableRequiredDescription
NORDIC_API_KEYyesYour API key from addonnordic.com

That's it. The MCP server connects to the hosted Nordic Data API for you.


Self-hosting (remote HTTP transport)

For remote MCP hosting (e.g. Anthropic Connectors, Smithery, web-based clients), deploy the bundled Streamable HTTP transport:

npm install

npm run build NORDIC_API_KEY=sk_... npm run start:http # listens on :$PORT (default 3000)

Endpoints:

  • GET /healthz — health check (returns version + status)
  • ALL /mcp — public MCP endpoint. No key required; all upstream calls are billed to the server's own NORDIC_API_KEY (freemium / discovery). Per-IP rate-limited.
  • ALL /mcp/auth — authenticated MCP endpoint. Requires Authorization: Bearer ndk_... on every request; each call is billed to that customer's own key + quota.

Both are session-based via the Mcp-Session-Id header.

Connecting a remote client

This server uses static API-key authentication, not OAuth. How you connect depends on your client:

  • Header-capable clients (Claude Code, Cursor, Smithery, Claude.ai / ChatGPT custom connectors): point them at …/mcp/auth and supply your key as Authorization: Bearer ndk_.... Each request is billed to your own tenant + quota.
  • Generic / auto-discovery clients that only know "URL + OAuth": point them at the public …/mcp (no key). Otherwise such clients attempt OAuth Dynamic Client Registration (POST /register) and fail — this server has no OAuth endpoints by design and answers them with a clear JSON oauth_not_supported error (not a sign-in flow).
  • Local clients: prefer the stdio package — npx -y nordic-data-mcp with NORDIC_API_KEY set (see Quick start above).

Full OAuth 2.1 (so arbitrary external clients can self-onboard with their own key) is a planned Phase-2 item, not yet implemented.

A railway.toml is included for one-click deploy on Railway:

  1. New Project → Deploy from GitHub repo → select Mnymann/nordic-data-mcp
  2. Set Root Directory to nordic-data-mcp
  3. Add env var NORDIC_API_KEY
  4. Railway auto-detects the config, builds, and exposes a public HTTPS URL

Design notes

  • Thin adapter. No business logic, no caching, no transformations. Each tool maps 1:1 to a Nordic Data API endpoint.
  • No PII in logs. Request and response bodies are never logged.
  • API key required. The process refuses to start without NORDIC_API_KEY.
  • Rate limiting. The backend enforces per-key quotas; the HTTP transport additionally applies a per-IP limit on the public /mcp endpoint as defense-in-depth (tunable via PUBLIC_RATE_LIMIT / PUBLIC_RATE_WINDOW_MS). Caching is handled upstream.
  • Inputs are validated with zod before any HTTP call.

Contributing

Issues and PRs welcome at github.com/Mnymann/nordic-data-mcp.

Please do not include API keys, request bodies, or response payloads in bug reports.


Disclaimer

Nordic Data returns informational decision-support aggregated from official and public sources. It is not legal, compliance, financial, or professional advice, and not a definitive determination. KYB reports, sanctions/PEP matches, adverse-media hits, and risk scores are signals to review, not verdicts — verify independently and apply your own professional judgment before acting. Use of the service is subject to the AddonNordic Terms.


License

MIT © AddonNordic ApS