UK Due Diligence

Registre officiel Autres

UK due diligence — Companies House, Charity Commission, Land Registry, Gazette, HMRC VAT

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http uk-due-diligence 'https://uk-due-diligence-mcp.fly.dev/mcp'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "uk-due-diligence": {
            "type": "http",
            "url": "https://uk-due-diligence-mcp.fly.dev/mcp"
        }
    }
}
PYPI package uk-due-diligence-mcp
Claude Code
claude mcp add uk-due-diligence -- uvx uk-due-diligence-mcp==1.0.3
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "uk-due-diligence": {
            "command": "uvx",
            "args": [
                "uk-due-diligence-mcp==1.0.3"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. uk-due-diligence-mcp
  2. Data sources
  3. Quick start
  4. Tools
  5. Examples
  6. Limitations
  7. Configuration
  8. Project structure
  9. Licence

uk-due-diligence-mcp

Official-source UK due-diligence data for AI agents.

Search Companies House, Charity Commission, The Gazette and HMLR price-paid data, plus screen names against the OFSI, OFAC, EU and UN sanctions lists. Exposes atomic MCP tools for company ownership, officers, cross-company appointment history, secured charges, insolvency notices and related registry evidence — the consuming agent decides how to investigate, not the server.

Every data source is a legally-mandated register with a free official API. Zero paywalls.


Data sources

RegisterAPIAuthCoverage
Companies Houseapi.company-information.service.gov.ukAPI key (free)UK-wide
Charity Commissionapi.charitycommission.gov.ukAPI key (free)England & Wales
HMLR Land Registrylandregistry.data.gov.uk (SPARQL)NoneEngland & Wales
The Gazettethegazette.co.uk (Linked Data)None (read)UK-wide
OFSI / OFAC / EU / UN sanctionsconsolidated list filesNoneInternational

Quick start

Hosted (no install)
{
  "mcpServers": {
    "uk-due-diligence": {
      "type": "http",
      "url": "https://uk-due-diligence-mcp.fly.dev/mcp"
    }
  }
}
Local (uvx)
{
  "mcpServers": {
    "uk-due-diligence": {
      "type": "stdio",
      "command": "uvx",
      "args": ["uk-due-diligence-mcp"]
    }
  }
}

See Configuration for the environment variables it needs.


Tools

Companies House

ToolDescription
company_searchSearch by name/keyword, filter by status/type
company_profileStatus, filing compliance, registered address, has_charges summary
company_officersDirectors/secretaries; each carries an officer_id
company_pscBeneficial owners, PSC chain, overseas-corporate-PSC flag
officer_appointmentsFull appointment history for a person by officer_id — including dissolved or insolvent companies not named anywhere else
company_chargesComplete secured-charge history: status, dates, secured parties, what each charge covers
disqualified_searchSearch disqualified directors by name
disqualified_profileFull disqualification record: period, Act, associated companies

Charity Commission

ToolDescription
charity_searchSearch by name, filter by registration status
charity_profileFull record: trustees, income/expenditure, governing document

HMLR Land Registry

ToolDescription
land_title_searchPrice Paid Index sale transactions by postcode — not title ownership (see Limitations)

The Gazette

ToolDescription
gazette_insolvencyCorporate insolvency notices across the Gazette's notice-code taxonomy (codes 2401-2465)
gazette_noticeFull legal wording of a specific notice

Sanctions

ToolDescription
sanctions_screenScreen a name against the OFSI/OFAC/EU/UN consolidated lists

Cross-register

ToolDescription
searchFan-out search across all registers — returns IDs (for ChatGPT deep research)
fetchFetch a structured record by ID returned from search

Examples

Resolve "TAS Engineering" to a company number and check whether it has any outstanding charges.

→ company_search to find the company number, then company_charges for the full secured-debt picture (not just the has_charges summary).

Has Gareth Davies (director of company 06333469) been connected to any other companies, including ones that no longer exist?

→ company_officers to get his officer_id, then officer_appointments to surface every company he's held an appointment at, current or historic.

Is "MEL Precision Limited" in the middle of insolvency proceedings, and what does that actually mean legally?

→ gazette_insolvency to find the notices, then gazette_notice to read the full legal wording before drawing conclusions from the notice label alone.

Screen "Acme Trading Ltd" and its officers against sanctions lists.

→ company_officers for the officer names, then sanctions_screen against the company name and each officer.


Limitations

Things worth knowing before trusting output:

  • land_title_search returns Price Paid transactions, not ownership. It does not return current proprietor/title data — HMLR's Price Paid Index only records historic sale transactions.
  • Sanctions screening is exact/alias matching, not compliance clearance. A company/entity legal name matches reliably; person names with transliteration variants may not. An empty result is not a guarantee of clearance, and a hit on a common name may need disambiguation.
  • has_charges: null means the check could not be confidently completed — a charges-endpoint outage, or a charge with an unrecognized status. Treat it as unresolved, not as "no charges."
  • officer_appointments returns historical relationships. Companies House doesn't auto-resign a director when a company enters insolvency — check company_status on each appointment, not just resigned_on.
  • Official-source data can be incomplete or delayed. These are the same registers a human would check, with the same latency and gaps.

Configuration

VariableRequired forWhere to get it
CH_API_KEYAll Companies House toolsdeveloper.company-information.service.gov.uk — free
CHARITY_API_KEYCharity Commission toolsapi-portal.charitycommission.gov.uk — free

HMLR, The Gazette, and the sanctions lists require no credentials.


Project structure

uk-due-diligence-mcp/
├── server.py           # FastMCP init, tool/resource registration, transport config
├── companies_house.py  # company_search/profile/officers/psc, officer_appointments, company_charges
├── disqualified.py     # disqualified_search, disqualified_profile
├── charity.py          # charity_search, charity_profile
├── land_registry.py    # land_title_search (SPARQL Price Paid Index)
├── gazette.py          # gazette_insolvency, gazette_notice
├── sanctions.py        # sanctions_screen (OFSI/OFAC/EU/UN consolidated lists)
├── search_fetch.py     # search, fetch (cross-register fan-out)
├── models.py           # Pydantic v2 output models
├── http_client.py      # Shared httpx clients, retry backoff, error formatting
├── fly.toml
├── Dockerfile
├── pyproject.toml
└── .env.example

Licence

MIT

Questions fréquentes

Qu'est-ce que UK Due Diligence ?

UK due diligence — Companies House, Charity Commission, Land Registry, Gazette, HMRC VAT

Comment installer UK Due Diligence ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http uk-due-diligence 'https://uk-due-diligence-mcp.fly.dev/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour UK Due Diligence ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

UK Due Diligence est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient UK Due Diligence ?

Il est publié par paulieb89. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.