# Prometiam company data: MCP server quickstart

prometiam-risk-mcp 0.4.54 gives an MCP client 36 tools over the Prometiam company data API: official company-register records, corporate events, insolvency notices, sanctions screening (beta), VAT and LEI checks and monitoring. Page: https://www.prometiam.com/mcp

## Install (no key, no signup)

Run `npx -y prometiam-risk-mcp`. Without a key it uses a shared demo key (rate-limited for everyone who uses it; company search, records, VAT, LEI and insolvency work, sanctions and corporate events answer 403 upgrade_required).

Claude Desktop (claude_desktop_config.json) and Cursor (.cursor/mcp.json):

```json
{
  "mcpServers": {
    "prometiam-risk": {
      "command": "npx",
      "args": ["-y", "prometiam-risk-mcp"]
    }
  }
}
```

Claude Code:

```bash
claude mcp add prometiam-risk -- npx -y prometiam-risk-mcp
```

VS Code (.vscode/mcp.json):

```json
{
  "servers": {
    "prometiam-risk": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "prometiam-risk-mcp"]
    }
  }
}
```

## Hosted endpoint (no install)

The same 36 tools are served over Streamable HTTP at https://api.prometiam.com/functions/v1/mcp: no npx and no local process. Send your own key as Authorization: Bearer rk_live_... (X-API-Key works too). With no key it runs in demo mode on the shared demo key (30 requests a minute and 2,000 calls a day for everyone, the quota the npx demo shares); in demo mode some tools, such as sanctions_screen and events_search, answer upgrade_required. The endpoint holds no data and no secret: each tool call is one API request, priced in credits like the REST call (sanctions screening is beta). Your own key works only from a client that can send a request header.

Claude Code (any terminal; add --scope project to write a shared .mcp.json):

```shell
claude mcp add --transport http prometiam https://api.prometiam.com/functions/v1/mcp --header "Authorization: Bearer rk_live_..."
```

Cursor (.cursor/mcp.json in the project, or ~/.cursor/mcp.json for every project):

```json
{
  "mcpServers": {
    "prometiam": {
      "url": "https://api.prometiam.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer ${env:PROMETIAM_API_KEY}" }
    }
  }
}
```

VS Code (.vscode/mcp.json (the key is servers, not mcpServers; the prompt keeps the key out of the file)):

```json
{
  "servers": {
    "prometiam": {
      "type": "http",
      "url": "https://api.prometiam.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer ${input:prometiam-key}" }
    }
  },
  "inputs": [
    { "type": "promptString", "id": "prometiam-key", "description": "Prometiam API key", "password": true }
  ]
}
```

Windsurf (mcp_config.json):

```json
{
  "mcpServers": {
    "prometiam": {
      "serverUrl": "https://api.prometiam.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer ${env:PROMETIAM_API_KEY}" }
    }
  }
}
```

claude.ai and ChatGPT connectors: not yet. They need OAuth sign-in, which the hosted endpoint does not offer yet.

## With your own key

Start the 14-day free trial (500 credits, card required, nothing charged for 14 days): https://www.prometiam.com/signup?utm_source=mcp_page. Then add `"env": { "PROMETIAM_API_KEY": "rk_live_..." }` next to `args`, or for Claude Code:

```bash
claude mcp add prometiam-risk -e PROMETIAM_API_KEY=rk_live_... -- npx -y prometiam-risk-mcp
```

An empty value or the placeholder `rk_live_your_key_here` is ignored and the demo key is used.

## Test it

Ask: "Search for companies named Inditex in Spain." The client calls `companies_search` and returns INDUSTRIA DE DISEÑO TEXTIL, S.A, NIF A15075062, active, legal form SA, Arteixo, LEI 549300TTCXZOGZM2EY83.

## Tools, credits per call and the plan that runs them

A successful call costs credits; errors cost nothing.

| Tool | Credits | Plan |
|---|---|---|
| companies_search | 1 | Free |
| company_detail | 1 | Free |
| company_by_identifier | 1 | Free |
| companies_lookup | 1 per item | Free |
| company_financials | 25 | Scale |
| people_search | 2 | Starter |
| person_detail | 2 | Starter |
| directors_network | 2 | Free |
| events_search | 2 | Starter |
| events_timeline | 2 | Starter |
| event_detail | 2 | Starter |
| insolvency_search | 2 | Free |
| insolvency_notices_search | 2 | Free |
| insolvency_check | 2 per item | Free |
| insolvency_record | 2 | Free |
| sanctions_screen | 3 | Professional |
| sanctions_screen_batch | 3 per name | Professional |
| sanctions_entity | 1 | Professional |
| sanctions_changes | 1 | Starter |
| sanctions_watch (changes your account) | 0 | Starter |
| sanctions_unwatch (changes your account) | 0 | Starter |
| sanctions_watchlist | 0 | Starter |
| vat_validate | 1 | Free |
| lei_lookup | 1 | Free |
| lei_search | 1 | Free |
| lei_relationships | 1 | Free |
| monitor_list | 0 | Free |
| monitor_get | 0 | Free |
| monitor_subscribe (changes your account) | 0 | Free |
| monitor_stop (changes your account) | 0 | Free |
| procurement_awards | 2 | Free |
| procurement_buyer | 2 | Free |
| procurement_buyers | 2 | Free |
| procurement_relationship | 2 | Free |
| coverage | 0 | Free |
| account | 0 | Free |

## Errors

- 401 `unauthorized`: The key is missing, wrong or revoked. With the MCP server, leave the key out to use the demo key.
- 403 `upgrade_required`: The call needs a plan that includes it; the body names the plan and the price.
- 429 `rate_limit_exceeded`: Per-minute or daily limit; wait the Retry-After seconds. The shared demo key is limited for everyone who uses it.

## Limits

- Sanctions screening is beta. PEP screening (an option on sanctions_screen) is beta and Spain only, with no relatives or close associates.
- Insolvency notices are corporate only, in sixteen markets: FR, DE, GB, AT, CH, NO, FI, US, NL, DK, HR, SE, ES, LV, EE and SG. Contains CVR data (Erhvervsstyrelsen), CC BY 4.0.
- Monitoring covers every live country except France and Chile: status change, dissolution, sanctions match and corporate events. Only monitor_subscribe, monitor_stop, sanctions_watch and sanctions_unwatch change anything in your account; every other tool is read-only.
- Officers come from Spain, France, the United Kingdom and Norway; Poland’s are on the company record with natural persons masked by the register. Every other country is company records only: no officers and no registry-compliance signal. Sole traders and other natural persons are not served in most registers; the country guides and /data list each register’s exclusions.
- Corporate events are gazette notices for Spain, France and the United Kingdom (Switzerland also from the Swiss Official Gazette of Commerce) and register-change events for the other live countries, dated when the change first appears in the register data. Ireland, Poland and Norway: register-change events only, none before 14 Oct 2026.
- Germany is LEI-registered entities and companies listed in the energy market register, not an extract of the Handelsregister. The Netherlands is LEI-registered entities with a KVK number (GLEIF), not the Dutch commercial register (Handelsregister, KVK). The United States is company records only: nine state registers plus SEC filers and LEI holders, not every US company.
- Financial statements (company_financials) are annual accounts as filed in GB, FR, DK, SE, NO, LV, FI (digitally filed), EE, RO and LT (headline figures), CO and US (SEC filers), plus listed companies in ES, PL, HR, BE and BR; Scale plan and above, 10 calls a month on lower plans.

## Same data over REST

Base URL https://api.prometiam.com/functions/v1/risk-api, header `Authorization: Bearer <key>`, OpenAPI at https://www.prometiam.com/openapi.json, docs at https://www.prometiam.com/risk-api/docs, short index for assistants at https://www.prometiam.com/llms.txt.
