companies-house-mcp

このMCPサーバーは、UKの企業情報にアクセスするためのAPIを提供し、45以上のエンドポイントを通じて詳細なデータを取得できます。企業の登録情報や住所、破産情報などを簡単に取得できるため、企業分析やリサーチに非常に便利です。

GitHubスター

3

ユーザー評価

未評価

お気に入り

0

閲覧数

7

フォーク

0

イシュー

0

README
Companies House MCP Server

Companies House MCP Server - Demo

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

What it does

This MCP server provides comprehensive access to UK company information through 45+ endpoints, including:

Company Information
Search Capabilities
  • Company search - basic and advanced search with multiple filters
  • Search all - unified search across all resource types
  • Officer search - find company officers by name
  • Disqualified officers search - search disqualified directors
  • Alphabetical search - companies by name prefix
  • Dissolved companies search - find dissolved companies
Officers & Appointments
  • Directors and officers - current and past company officials
  • Individual officer appointments - specific appointment details
  • Officer appointment history - all appointments for an officer
  • Officer disqualifications - corporate and natural person disqualifications
Filing & Documents
  • Filing history - accounts, annual returns, and other documents
  • Individual filing items - specific document details
Ownership & Control
  • Persons with significant control (PSC) - beneficial ownership
  • PSC individuals, corporate entities, and legal persons - detailed PSC information
  • PSC statements - notifications and declarations
  • PSC verification states and full records
Financial
  • Registered charges - mortgages and debentures
  • Individual charge details - specific charge information
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
Company Information Tools
search_companies

Search for companies by name or company number

{
  "query": "OpenAI",
  "items_per_page": 20,
  "start_index": 0
}
get_company_profile

Get detailed company information

{
  "company_number": "13448796"
}
get_registered_office_address

Get the registered office address

{
  "company_number": "13448796"
}
get_registers

Get information about company registers

{
  "company_number": "13448796"
}
get_insolvency

Get company insolvency information

{
  "company_number": "13448796"
}
get_exemptions

Get company exemptions

{
  "company_number": "13448796"
}
get_uk_establishments

Get UK establishments of a foreign company

{
  "company_number": "FC123456"
}
Search Tools
advanced_company_search

Advanced search with multiple filters

{
  "company_name": "Tech",
  "company_status": "active",
  "incorporated_from": "2020-01-01",
  "incorporated_to": "2024-12-31",
  "items_per_page": 20
}
search_all

Search across all resource types

{
  "query": "technology",
  "items_per_page": 20
}
search_officers

Search for company officers

{
  "query": "John Smith",
  "items_per_page": 20
}
search_disqualified_officers

Search for disqualified officers

{
  "query": "Smith",
  "items_per_page": 20
}
alphabetical_search

Search companies alphabetically

{
  "query": "AAA",
  "items_per_page": 20
}
dissolved_search

Search dissolved companies

{
  "query": "Old Company",
  "items_per_page": 20
}
Officers Tools
get_officers

Get list of company officers

{
  "company_number": "13448796",
  "register_type": "directors",
  "items_per_page": 35
}
get_officer_appointment

Get specific officer appointment details

{
  "company_number": "13448796",
  "appointment_id": "AbCdEfGh"
}
get_officer_appointments_list

Get all appointments for an officer

{
  "officer_id": "OFFICER123",
  "items_per_page": 35
}
get_corporate_officer_disqualification

Get corporate officer disqualification details

{
  "officer_id": "CORP123"
}
get_natural_officer_disqualification

Get natural person disqualification details

{
  "officer_id": "PERSON123"
}
Filing History Tools
get_filing_history

Get company filing history

{
  "company_number": "13448796",
  "category": "accounts",
  "items_per_page": 25
}
get_filing_history_item

Get specific filing details

{
  "company_number": "13448796",
  "transaction_id": "MzM4NTY3"
}
Charges Tools
get_charges

Get list of company charges

{
  "company_number": "13448796",
  "items_per_page": 25
}
get_charge_details

Get specific charge details

{
  "company_number": "13448796",
  "charge_id": "CHARGE123"
}
Persons with Significant Control Tools
get_persons_with_significant_control

Get list of PSCs

{
  "company_number": "13448796",
  "items_per_page": 25
}
get_psc_individual

Get individual PSC details

{
  "company_number": "13448796",
  "psc_id": "PSC123"
}
get_psc_corporate_entity

Get corporate entity PSC details

{
  "company_number": "13448796",
  "psc_id": "CORP-PSC123"
}
get_psc_legal_person

Get legal person PSC details

{
  "company_number": "13448796",
  "psc_id": "LEGAL-PSC123"
}
get_psc_statements_list

Get PSC statements

{
  "company_number": "13448796",
  "items_per_page": 25
}
get_psc_statement

Get specific PSC statement

{
  "company_number": "13448796",
  "statement_id": "STMT123"
}

Additional PSC tools available:

  • get_psc_individual_beneficial_owner
  • get_psc_individual_verification
  • get_psc_individual_full_record
  • get_psc_corporate_entity_beneficial_owner
  • get_psc_legal_person_beneficial_owner
  • get_psc_super_secure
  • get_psc_super_secure_beneficial_owner
Architecture

The codebase follows a modular architecture for maintainability and scalability:

src/
├── api/                 # API client modules
│   ├── base-client.ts   # Base HTTP client with auth
│   ├── company-api.ts   # Company endpoints
│   ├── search-api.ts    # Search endpoints
│   ├── officers-api.ts  # Officers endpoints
│   ├── filing-api.ts    # Filing history endpoints
│   ├── charges-api.ts   # Charges endpoints
│   ├── psc-api.ts       # PSC endpoints
│   └── client.ts        # Main API client aggregator
├── handlers/            # MCP request handlers
│   ├── company-handlers.ts
│   ├── search-handlers.ts
│   ├── officers-handlers.ts
│   ├── filing-handlers.ts
│   ├── charges-handlers.ts
│   └── psc-handlers.ts
├── tools/               # Tool definitions
│   └── tools-definition.ts
├── types/               # TypeScript types & schemas
│   ├── company.ts
│   ├── search.ts
│   ├── officers.ts
│   ├── filing.ts
│   ├── charges.ts
│   ├── psc.ts
│   └── index.ts
└── mcp-server.ts        # Main MCP server
Development
# Run tests
npm test

# Type checking
npm run typecheck

# Linting
npm run lint

# Build
npm run build

# Run locally
npm run dev
API Rate Limits

The Companies House API has rate limits:

  • 600 requests per 5 minutes per API key
  • Some endpoints may have additional restrictions
License

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

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

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

作者情報
Stefano Amorelli
Tallinn, Estonia

25

フォロワー

95

リポジトリ

2

Gist

0

貢献数