# UK Due Diligence MCP server

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

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-paulieb89-uk-due-diligence-mcp
- Repository: https://github.com/paulieb89/uk-due-diligence-mcp
- Website: https://bouch.dev

## Install
- Command: `uvx uk-due-diligence-mcp`
- Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- Auth: Not captured

## Setup notes
- Package: Pypi uk-due-diligence-mcp v1.0.3
- Remote endpoint: https://uk-due-diligence-mcp.fly.dev/mcp

## Tools
- company_search (Search Companies House) - Search the Companies House register by company name or keyword.

Returns a paginated list of matching companies with name, number,
status, SIC codes, incorporation date, and registered address.
Use company_profile for the full record once you have the company
number. Re-call with start_index=start_index+items_per_page to
fetch the next page. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- company_profile (Get Company Profile) - Fetch the full Companies House profile for a company number.

Returns status, registered address, SIC codes, filing compliance
(overdue accounts and confirmation statement flags), and whether
the company has outstanding charges. Use company_search first to
find the company number. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- company_officers (Get Company Officers) - Fetch active officers for a Companies House company number.

Returns directors, secretaries, and other active officers with
appointment dates, nationality, and country of residence.
Resigned officers are excluded. Pagination is handled internally —
do NOT pass items_per_page or start_index; this tool takes only
company_number. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- company_psc (Get Persons with Significant Control) - Fetch Persons with Significant Control (beneficial ownership) for a company.

Returns PSC entries with natures of control, nationality, and
country of residence. Flags overseas corporate PSC entries as a
beneficial ownership risk signal. Returns an explanatory note for
widely-held PLCs with no registrable PSC. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- charity_search (Search Charity Commission Register) - Search the Charity Commission register of England and Wales by name or keyword.

Returns matching charities with registration number, status, and
registration date. Use charity_profile for full details once you
have the charity number. The upstream `searchCharityName` endpoint
returns the full list in one shot — pagination is applied
client-side via offset/limit. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- charity_profile (Get Charity Profile) - Fetch the full Charity Commission profile for a charity number.

Returns trustees, latest income/expenditure, insolvency flags,
governing document type, classifications, and countries of operation.
Use charity_search first to find the charity number. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- disqualified_search (Search Disqualified Directors) - Check whether a named individual is banned from acting as a UK company director.

Use this tool when asked to check disqualified, banned, or barred directors.
Query must be an individual's name (e.g. "Richard Howson") — NOT a company
name, which always returns zero results.

Returns names, dates of birth, disqualification period snippets, and
officer IDs that can be used with disqualified_profile for full details. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- disqualified_profile (Get Disqualified Director Profile) - Fetch the full disqualification record for a director by officer ID.

Returns all disqualification orders: reason, Act/section cited,
disqualification period, and associated company names. Use
disqualified_search first to find the officer ID. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- land_title_search (Search Price Paid Transactions by Postcode) - Search HM Land Registry Price Paid Index by postcode or address.

Returns up to 10 recent sale transactions for the postcode: price,
date, address, property type, and tenure (Freehold/Leasehold).
Covers England and Wales only. Postcode gives the most reliable
results — a full address is also accepted and the postcode is
extracted automatically. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- gazette_notice (Get Gazette Notice Full Text) - Fetch the full legal wording of a Gazette notice by numeric notice ID.

Returns the complete JSON-LD linked-data record for the notice: parties,
legal basis, court, and full text. Use gazette_insolvency first to find
notice_numeric_id values. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- gazette_insolvency (Search Gazette Corporate Insolvency Notices) - Search The Gazette's insolvency notice index by entity name.

Searches the Gazette's insolvency endpoint which covers corporate
notice codes: winding-up orders (2443), administration orders (2448),
liquidator appointments (2452), striking-off notices (2460), and more.
Results are sorted by severity — winding-up orders and administration
orders appear first.

Each result includes a notice_numeric_id. Read the full legal wording
via the notice://{notice_numeric_id} resource.

The Gazette is the official UK public record. A notice here means
the event has been formally published and is legally effective. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- vat_validate (Validate UK VAT Number (HMRC)) - Validate a UK VAT number against the HMRC register.

Returns the trading name and address as registered with HMRC for VAT
purposes. The VAT-registered trading address often differs from the
Companies House registered address — that discrepancy is a due
diligence signal worth noting. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- search (Search UK Due Diligence Registers) - Search across all UK due diligence registers simultaneously.

Searches Companies House, Charity Commission, disqualified directors,
and Gazette insolvency notices in parallel. Returns a list of result
IDs — use fetch with each ID to retrieve the full record. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- fetch (Fetch Full Record from UK Due Diligence Register) - Fetch the full record for an ID returned by search.

Routes by prefix to the appropriate register:
- company:{number} → Companies House full profile
- charity:{number} → Charity Commission full profile
- disqualification:{officer_id} → Disqualified director full record
- notice:{notice_id} → Gazette notice full legal text Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- list_prompts - List all available prompts.

Returns JSON with prompt metadata including name, description,
and optional arguments. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp
- get_prompt - Get a prompt by name with optional arguments.

Returns the rendered prompt as JSON with a messages array.
Arguments should be provided as a dict mapping argument names
to values. Endpoint: https://uk-due-diligence-mcp.fly.dev/mcp

## Resources
Not captured

## Prompts
- due_diligence - UK Company Due Diligence Full due diligence check on a UK company across all registers. Arguments: entity_name
- charity_due_diligence - UK Charity Due Diligence Due diligence check on a UK registered charity. Arguments: charity_name
- director_check - Director Disqualification Check Check whether a named individual is disqualified as a UK company director. Arguments: director_name

## Metadata
- Owner: io.github.paulieb89
- Version: 1.0.3
- Runtime: Pypi
- Transports: STDIO, HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Apr 20, 2026
- Source: https://registry.modelcontextprotocol.io
