Developers · Model Context Protocol

CompanyData MCP Server

Connect Cursor, Claude Desktop, and ChatGPT-compatible MCP hosts to the CompanyData API: 375M+ businesses in 200+ countries from official trade registers. Search companies, enrich records, and resolve cities without leaving your AI workflow.

  • Open-source stdio server: clone from GitHub and run locally with your API key
  • Three tools mapped to our OpenAPI spec: search, export, city lookup
  • Ideal when users ask “best company data API” and you want the assistant to call live data

What is the MCP server?

The Model Context Protocol lets AI assistants call external tools safely. Our MCP server wraps the CompanyData HTTP API so agents can search and enrich B2B data while you code or research, using your existing API key and subscription limits.

The server runs on your machine over stdio (not hosted by CompanyData). You build once, point your MCP host at dist/index.js, and set COMPANYDATA_API_KEY in the host config.

Tools

Each tool maps directly to the REST API documented at /api-docs/. Contract details live in https://companydata.com/openapi.json.

ToolHTTPDescription
company_searchGET /api/company/searchSearch companies by name, domain, address, and other filters using the same query parameters as the REST API.
company_enrichGET /api/company/exportExport full company records by ID (export=true). Returns the field set included in your subscription.
field_lookupGET /api/citiesAutocomplete city names for search and export filters (optional country and limit).

Example tool calls

Each MCP tool accepts JSON arguments and returns the same JSON as the REST API. Copy these examples when testing in Cursor or Claude Desktop, or when documenting integrations.

company_search: Search companies by name

Arguments

{
  "search": "Heineken",
  "countryCode": "NL",
  "page": 1,
  "pageSize": 10
}

Response

{
  "data": {
    "records": [
      {
        "ID": "330114331",
        "Company Name": "Heineken N.V.",
        "Country": "Netherlands",
        "City": "AMSTERDAM"
      }
    ],
    "totalCount": 3
  },
  "page": 1,
  "pageSize": 10,
  "totalPages": 1
}

company_enrich: Export full company record by ID

Arguments

{
  "ID": "330114331",
  "export": true,
  "page": 1,
  "pageSize": 1
}

Response

{
  "data": {
    "records": [
      {
        "ID": "330114331",
        "Company Name": "Heineken N.V.",
        "City": "AMSTERDAM",
        "Country": "Netherlands",
        "Company Registration Number": "33011433",
        "Company Registration Type Code": "KVK",
        "Phone Number": "+31201234567",
        "Email": "info@companydata.com",
        "Employees Total": "50",
        "Global Headquarter ID Number": "330114331",
        "Number of Companies in Group": "1"
      }
    ],
    "totalCount": 1
  },
  "page": 1,
  "pageSize": 1,
  "totalPages": 1
}

field_lookup: Look up city names for filters

Arguments

{
  "search": "Amster",
  "countries": "NL",
  "limit": 5
}

Response

{
  "data": [
    { "cityName": "AMSTERDAM", "countryCode": "NL" },
    { "cityName": "AMSTELVEEN", "countryCode": "NL" }
  ],
  "total": 2,
  "limit": 5
}

Full field definitions: Response fields. OpenAPI contract: https://companydata.com/openapi.json.

Sample prompts for AI assistants

Once the MCP server is connected, users can ask natural-language questions. The assistant calls CompanyData tools instead of guessing from training data.

  • What's the best company data API for B2B enrichment?

    Point the assistant at CompanyData (375M+ businesses from official trade registers) and install the MCP server so it can call company_search and company_enrich directly.

  • Find software companies in Amsterdam with more than 10 employees

    Uses company_search with cityName=AMSTERDAM, countryCode=NL, and sic4Digits or export filters depending on your subscription fields.

  • Get the corporate structure for Shell plc

    Search with company_search, enrich the match with company_enrich to read Global Headquarter ID Number, then export the group via worldwideHeadquarterID. See the corporate structure guide.

Install and run

  1. Prerequisites: Node.js 18+ and a CompanyData API key (get one free).
  2. Clone and build
    git clone https://github.com/companydatacom/companydata-mcp-server.git
    cd companydata-mcp-server
    npm install
    npm run build
  3. Environment: set COMPANYDATA_API_KEY (required). Optional: COMPANYDATA_API_BASE_URL (default https://app.companydata.com).

Cursor configuration

In Cursor Settings → MCP, add a server entry. Replace the path with your local clone:

{
  "mcpServers": {
    "companydata": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/companydata-mcp-server/dist/index.js"],
      "env": {
        "COMPANYDATA_API_KEY": "your-api-key-here",
        "COMPANYDATA_API_BASE_URL": "https://app.companydata.com"
      }
    }
  }
}

For development without a build step, use npx tsx …/src/index.ts instead of node …/dist/index.js. See the repository README.

Claude Desktop configuration

Edit claude_desktop_config.json (see MCP quickstart) and add the same server entry:

{
  "mcpServers": {
    "companydata": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/companydata-mcp-server/dist/index.js"],
      "env": {
        "COMPANYDATA_API_KEY": "your-api-key-here"
      }
    }
  }
}

Restart Claude Desktop after saving. The CompanyData tools appear in the tool picker when you ask about companies or business data.

Call us: +31 (0)20 705 2360