Skip to main content
Glama
e-RUP KNF MCP Server

e-RUP KNF MCP Server

by Kymylyy

e-RUP KNF MCP Server

TypeScript MCP server that wraps the public KNF e-RUP registry API at https://e-rup.knf.gov.pl/JSON.

License

This project is licensed under the MIT License. See LICENSE.

Related MCP server: KRS Poland MCP Server

Security

To report vulnerabilities, see SECURITY.md.

Requirements

  • Node.js 18+

  • npm

Setup

npm install

Run

Development:

npm run dev

Build + start:

npm run build
npm start

MCP Configuration (stdio)

Example MCP client entry:

{
  "mcpServers": {
    "erup": {
      "command": "node",
      "args": ["/absolute/path/to/erup2.0-mcp/dist/index.js"]
    }
  }
}

For local development with tsx:

{
  "mcpServers": {
    "erup-dev": {
      "command": "npx",
      "args": ["tsx", "/absolute/path/to/erup2.0-mcp/src/index.ts"]
    }
  }
}

Tools

  • search_entities: Search and filter entity listing with pagination and sorting.

  • get_entity: Full detail record for a single entity id.

  • get_entity_services: Authorized services for an entity by service type.

  • get_entity_agents: Paged agents list for an entity.

  • get_entity_branches: Paged branches list for an entity.

  • get_entity_history: Status history timeline for an entity.

  • list_entity_types: KNF taxonomy list for ENT_TYP (cached in memory).

  • get_registry_stats: Count-only query (limit: 0) for optional filters.

Known KNF API Quirks

  • List filters must use internal codes:

    • entity_type: PSD_PI, PSD_EPI@BP, ...

    • status: ES_1, ES_2

  • Using display names like Wpisany in list filters returns zero rows without an error.

  • Upstream can return HTTP 200 with status: "error" in JSON. The server treats this as a failure.

  • SER_LIS encodes commas as ,; this server decodes values before returning structured service lines.

Testing

Run all local unit tests:

npm test

Run opt-in live tests against https://e-rup.knf.gov.pl/JSON:

ERUP_LIVE_TESTS=1 npm run test:live

Live tests are skipped by default unless ERUP_LIVE_TESTS=1.

Quality Gates

npm run lint
npm run typecheck
npm test

Available Tools

8 tools
get_entityB

Get full details of a single e-RUP entity.

Inputs: entity_id (required).

get_entity_agentsC

Get agents associated with an entity.

Inputs: entity_id (required), limit, offset.

get_entity_branchesC

Get branches associated with an entity.

Inputs: entity_id (required), limit, offset.

get_entity_historyB

Get status history for an e-RUP entity.

Inputs: entity_id (required).

get_entity_servicesC

Get payment service authorizations for an entity.

Inputs: entity_id (required), service_type.

get_registry_statsC

Return only the count of entities matching optional filters.

Inputs: name, nip, knf_number, entity_type, +4 more.

list_entity_typesA

List all entity type codes and descriptions from KNF taxonomy.

Inputs: no named parameters.

search_entitiesC

Search and filter entities in the KNF e-RUP registry.

Inputs: name, nip, knf_number, entity_type, +8 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of e-RUP entities (details, agents, branches, history, services) plus registry-level operations (search, stats, types). There is no ambiguity or overlap.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern in snake_case (e.g., get_entity, get_entity_agents, search_entities). The naming is predictable and uniform.

    Tool Count5/5

    With 8 tools covering entity retrieval, sub-resources, search, and stats, the count is well-scoped for a read-only registry lookup server. No extraneous tools.

    Completeness5/5

    The tool surface fully covers the domain of querying e-RUP entities: entity details, related data (agents, branches, history, services), search, counts, and type taxonomy. There are no obvious gaps for a read-only service.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Provides access to Poland's largest business registry database, enabling company search, beneficiary checks, and financial document retrieval via natural language.
      1
      -
    • A
      license
      A
      quality
      C
      maintenance
      Provides clean, typed access to the Polish REGON business register (GUS BIR1), enabling AI assistants to look up companies by NIP, REGON, or KRS and retrieve structured data like name, address, and legal form.
      6
      1
      MIT