companies-house-mcp

stefanoamorelli/companies-house-mcp

3.3

If you are the rightful owner of companies-house-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Access UK company data through the Companies House API directly in MCP clients.

Tools
6
Resources
0
Prompts
0

Companies House MCP Server

Access UK company data through the Companies House API directly in MCP clients.

What it does

This MCP server lets you search and retrieve information about UK companies, including:

Setup

Get an API key

  1. Register at Companies House Developer Hub
  2. Create an application to get your API key

Install

The server is available on npm and can be run directly using npx:

npm install -g companies-house-mcp-server

Or use it directly with npx (recommended):

npx companies-house-mcp-server

Configure Claude Desktop

Add to your Claude Desktop config:

Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "companies-house": {
      "command": "npx",
      "args": ["-y", "companies-house-mcp-server"],
      "env": {
        "COMPANIES_HOUSE_API_KEY": "your_api_key_here"
      }
    }
  }
}

Build from source (optional)

If you want to build from source:

git clone https://github.com/stefanoamorelli/companies-house-mcp.git
cd companies-house-mcp
npm install
npm run build

# Then use in Claude Desktop config:
{
  "mcpServers": {
    "companies-house": {
      "command": "node",
      "args": ["/absolute/path/to/companies-house-mcp/dist/index.js"],
      "env": {
        "COMPANIES_HOUSE_API_KEY": "your_api_key_here"
      }
    }
  }
}

Available Tools

search_companies

Tool: search_companies
API Endpoint: GET /search/companies
Documentation: Company Search API

Example queries:

  • "Find companies named Tesla"
  • "Search for company number 12345678"
  • "Look up British Airways companies"
{
  "query": "OpenAI",
  "items_per_page": 20,
  "start_index": 0
}

get_company_profile

Tool: get_company_profile
API Endpoint: GET /company/{company_number}
Documentation: Company Profile API

Example queries:

  • "Get details for company 13448796"
  • "Show me the profile of OpenAI UK Limited"
  • "What's the status of company number 00000001?"
{
  "company_number": "13448796"
}

get_officers

Tool: get_officers
API Endpoint: GET /company/{company_number}/officers
Documentation: Officers API

Example queries:

  • "Who are the directors of company 13448796?"
  • "List all officers for Tesla UK"
  • "Show me the company secretaries"
{
  "company_number": "13448796",
  "register_type": "directors"
}

get_filing_history

Tool: get_filing_history
API Endpoint: GET /company/{company_number}/filing-history
Documentation: Filing History API

Example queries:

  • "Show recent filings for company 13448796"
  • "What accounts has this company filed?"
  • "Get the annual returns history"
{
  "company_number": "13448796",
  "category": "accounts"
}

get_persons_with_significant_control

Tool: get_persons_with_significant_control
API Endpoint: GET /company/{company_number}/persons-with-significant-control
Documentation: PSC API

Example queries:

  • "Who owns more than 25% of company 13448796?"
  • "Show beneficial owners"
  • "List persons with significant control"
{
  "company_number": "13448796"
}

get_charges

Tool: get_charges
API Endpoint: GET /company/{company_number}/charges
Documentation: Charges API

Example queries:

  • "Does company 13448796 have any mortgages?"
  • "Show registered charges"
  • "List all debentures for this company"
{
  "company_number": "13448796"
}

Development

# Run tests
npm test

# Type checking
npm run typecheck

# Build
npm run build

License

GNU Affero General Public License v3.0 - see file for details.

For commercial licensing options, contact: stefano@amorelli.tech

© 2025 Stefano Amorelli (https://amorelli.tech)