ukintel.uk — UK company, tender and grant intelligence
Companies House, Find a Tender and Find a Grant as paid JSON for agents. USDC via x402, no signup.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"ukintel": {
"url": "https://api.ukintel.uk/mcp"
}
}
}リモートエンドポイント
https://api.ukintel.uk/mcpstreamable-httpできること
ツール一覧
ツール(13)
🟡uk_preview(wing)
A genuine, freshly-computed sample so an agent can see the exact response shape before spending anything. Default: a real company verdict, rotating daily. Add ?wing=tenders for a real live-tender brief, or ?wing=grants for a real grant eligibility verdict - all rotating daily. Every response carries the same envelope: query, result, verdict, confidence, as_of, sources, attribution, notice, cost. Free. Returns: The identical envelope returned by the paid endpoints: /v1/company/{number}/verdict by default, /v1/tenders/{ocid}/brief with ?wing=tenders, /v1/grants/{id}/eligibility with ?wing=grants.
入力スキーマ
{
"type": "object",
"properties": {
"wing": {
"type": "string",
"enum": [
"company",
"tenders",
"grants"
],
"description": "Which product family to sample: company (default), tenders or grants."
}
},
"additionalProperties": false
}⚪uk_health
Liveness and upstream health. Free, because frameworks probe before they route money. Free. Returns: status, version, network, upstreams{}, rules_version, warnings[].
入力スキーマ
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢uk_company_search(q, limit)
Find a UK company by name. Returns the top 5 matches from the Companies House register with number, name, status and incorporation date. Taster tier - cheap enough to try on a whim before paying for a full profile or verdict. Costs $0.005 USDC per call (x402, Base mainnet). Returns: results[] of { company_number, name, status, incorporated, address_snippet }, plus total_matches.
入力スキーマ
{
"type": "object",
"properties": {
"q": {
"type": "string",
"minLength": 2,
"maxLength": 160,
"description": "Company name or fragment to search for."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 5,
"default": 5,
"description": "Number of matches to return, 1-5. Defaults to 5."
}
},
"required": [
"q"
],
"additionalProperties": false
}⚪uk_company_profile(number, detail)
One UK company as clean structured JSON: status, incorporation date, company type, SIC codes, registered office, accounts and confirmation-statement due dates with overdue booleans, and officer counts. Sourced live from Companies House. Costs $0.02 USDC per call (x402, Base mainnet). Returns: result = { name, company_number, status, type, incorporated, registered_office, sic_codes[], accounts{}, confirmation_statement{}, officers{ active, total, resigned_last_12m }, age_years }.
入力スキーマ
{
"type": "object",
"properties": {
"number": {
"type": "string",
"pattern": "^([A-Z]{2})?[0-9]{6,8}$",
"description": "UK company number. 8 characters; two-letter prefixes are supported (SC = Scotland, NI = Northern Ireland, OC = LLP)."
},
"detail": {
"type": "string",
"enum": [
"full"
],
"description": "Set to 'full' to add filing history (last 10) and anonymised officer records, and to lift the ~800 token response cap."
}
},
"required": [
"number"
],
"additionalProperties": false
}⚪uk_company_verdict(number, detail)
Should an agent trust this UK company? Returns a 0-100 verdict and low_risk/caution/high_risk band, with every rule that fired named in the response and the register value that triggered it: STATUS_DISSOLVED, STRIKE_OFF_ACTIVE, ACCOUNTS_OVERDUE, NO_ACTIVE_DIRECTORS, OFFICER_CHURN, FS_SIC_NOT_FCA and 9 more. Rules are deterministic and published, so you can audit the verdict or re-weight it. Never model-scored. Costs $0.10 USDC per call (x402, Base mainnet). Returns: Everything the profile returns, plus verdict = { score 0-100, band low_risk|caution|high_risk, flags[{code,detail}], fca{}, narrative }.
入力スキーマ
{
"type": "object",
"properties": {
"number": {
"type": "string",
"pattern": "^([A-Z]{2})?[0-9]{6,8}$",
"description": "UK company number. 8 characters; two-letter prefixes are supported (SC = Scotland, NI = Northern Ireland, OC = LLP)."
},
"detail": {
"type": "string",
"enum": [
"full"
],
"description": "Set to 'full' to add filing history (last 10) and anonymised officer records, and to lift the ~800 token response cap."
}
},
"required": [
"number"
],
"additionalProperties": false
}⚪uk_company_fca(number)
Is this UK company regulated by the Financial Conduct Authority? Returns register status, a permissions summary and any warnings - sold separately from the full verdict because fintech-vetting agents often want only this. Costs $0.02 USDC per call (x402, Base mainnet). Returns: result.fca = { checked, regulated, frn, firm_name, status, permissions_summary, warnings[], note }. When the register is unavailable, checked=false and the reason is named - never a 500.
入力スキーマ
{
"type": "object",
"properties": {
"number": {
"type": "string",
"pattern": "^([A-Z]{2})?[0-9]{6,8}$",
"description": "UK company number. 8 characters; two-letter prefixes are supported (SC = Scotland, NI = Northern Ireland, OC = LLP)."
}
},
"required": [
"number"
],
"additionalProperties": false
}🟢uk_tenders_search(q, cpv, region, value_min, value_max, ...)
Live UK public-sector tenders from Find a Tender and Contracts Finder in one call. Returns the top 10 matching notices as one-paragraph plain-English briefs with buyer, value, deadline, CPV codes (honest null when the notice carries none) and the official notice link. Searches a 6-hourly refreshed index - no signup with either portal needed. Costs $0.05 USDC per call (x402, Base mainnet). Returns: result = { total_matched, returned, notices[] of { ocid, title, buyer, value, stage, published, deadline, days_remaining, region, cpv, summary, source{name, notice_url} }, excluded{} } - excluded{} reports notices honest-nulled out by cpv/region/value/deadline filters.
入力スキーマ
{
"type": "object",
"properties": {
"q": {
"type": "string",
"maxLength": 200,
"description": "Keywords, synonym-expanded (e.g. 'cleaning' also finds janitorial and hygiene services). At least one of q, cpv or region is required."
},
"cpv": {
"type": "string",
"description": "CPV code prefix filter, comma-separated (e.g. 909,45233). Notices without CPV codes are excluded and counted."
},
"region": {
"type": "string",
"description": "UK nation or English region: scotland, wales, northern-ireland, london, north-east, north-west, yorkshire, east-midlands, west-midlands, east-of-england, south-east, south-west, england."
},
"value_min": {
"type": "integer",
"minimum": 0,
"description": "Minimum stated contract value in GBP."
},
"value_max": {
"type": "integer",
"minimum": 0,
"description": "Maximum stated contract value in GBP."
},
"deadline_after": {
"type": "string",
"format": "date",
"description": "Only notices whose submission deadline is on or after this date (YYYY-MM-DD)."
},
"stage": {
"type": "string",
"enum": [
"tender",
"planning"
],
"description": "tender (open competitions, default both) or planning (early engagement)."
}
},
"additionalProperties": false
}⚪uk_tender_brief(ocid)
One tender as a full agent-ready dossier: parsed requirements summary, buyer, value, complete timeline with working-days-remaining, lots, document links, submission route and the official notice URL. CPV codes are null when the source release carries none - we report the register, we never guess. Costs $0.10 USDC per call (x402, Base mainnet). Returns: result = { ocid, title, buyer, value, stage, published, deadline, days_remaining, region, cpv, summary, description, lots, documents[], submission_url, timeline{}, source{} }.
入力スキーマ
{
"type": "object",
"properties": {
"ocid": {
"type": "string",
"pattern": "^ocds-[a-z0-9]{6}-[A-Za-z0-9][A-Za-z0-9-]{0,80}$",
"description": "The OCDS contracting-process id, e.g. ocds-h6vhtk-06df8b (FTS) or ocds-b5fd17-… (Contracts Finder). Exactly as returned by /v1/tenders/search."
}
},
"required": [
"ocid"
],
"additionalProperties": false
}🟡uk_tenders_fit_score(supplier, filters, top)
Send a supplier profile (what you do, keywords, regions, value band, certifications) and get the best-fitting live UK tenders, each scored 0-100 by deterministic published rules across five factors - relevance, value fit, geography, timeline, buyer history - each with its numerator AND denominator so you can re-weight client-side, plus a what-to-emphasise note on the top matches. Rules score; a model never does. Costs $0.20 USDC per call (x402, Base mainnet). Returns: result = { considered, matches[] of { ...notice brief..., fit: { score, band strong|possible|weak, factors{ relevance/of, value_fit/of_v, geography/of_g, timeline/of_t, buyer_history/of_b }, flags[], rules_version }, emphasise } }.
入力スキーマ
{
"type": "object",
"properties": {
"supplier": {
"type": "object",
"description": "The supplier profile to match against live tenders.",
"properties": {
"what_we_do": {
"type": "string",
"description": "Plain-English capability statement"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"regions": {
"type": "array",
"items": {
"type": "string"
},
"description": "UK nations/regions served"
},
"value_band": {
"type": "array",
"items": {
"type": "integer"
},
"minItems": 2,
"maxItems": 2,
"description": "[min, max] comfortable contract value in GBP"
},
"certifications": {
"type": "array",
"items": {
"type": "string"
}
},
"cpv": {
"type": "array",
"items": {
"type": "string"
},
"description": "CPV code prefixes you deliver against"
}
},
"required": [
"what_we_do"
]
},
"filters": {
"type": "object",
"description": "Optional pre-filters (same fields as /v1/tenders/search)."
},
"top": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"supplier"
],
"additionalProperties": false
}🟢uk_grants_search(q, region, org_type, min, max, ...)
Live UK grant funding calls from GOV.UK Find a Grant in one call: name, funder, amount range, opening/closing dates, who can apply, one-line summary and the official source link. Filter by keywords, nation, applicant type and amount band. Indexed daily from the official listing - the service has no API of its own, so this is the machine-readable version. Costs $0.10 USDC per call (x402, Base mainnet). Returns: result = { total_matched, returned, grants[] of { id, name, funder, amounts{min,max,text}, window{opens,closes,open_now,days_to_close}, who_can_apply, org_types, regions, summary, criteria_parsed, criteria_basis seed|llm|listing|null, source_url }, excluded{} }.
入力スキーマ
{
"type": "object",
"properties": {
"q": {
"type": "string",
"maxLength": 200,
"description": "Keywords matched against grant names, summaries, funders and descriptions (light stemming). At least one criterion is required."
},
"region": {
"type": "string",
"description": "UK nation: england, scotland, wales, northern-ireland (or uk for UK-wide only)."
},
"org_type": {
"type": "string",
"description": "Applicant type: individual, business, charity, community_group, public_body, local_authority, education (synonyms like sole-trader, cic, council are mapped)."
},
"min": {
"type": "integer",
"minimum": 0,
"description": "Only grants whose maximum award is at least this many GBP."
},
"max": {
"type": "integer",
"minimum": 0,
"description": "Only grants whose minimum award is at most this many GBP."
},
"open_now": {
"type": "string",
"enum": [
"true",
"false"
],
"description": "Default true: only grants currently open for applications. Set to false to include closed/not-yet-open listings."
}
},
"additionalProperties": false
}🟡uk_grants_match(project, top)
Send a project profile (what it is, who you are, where, how much you need) and get back the live UK grants it could actually get - ranked eligible-first with a per-criterion pass/fail table for every match, from criteria parsed once at ingest from each grant's own eligibility text. Ineligible grants are excluded and counted, never dressed up as options. Deterministic rules; no language model touches the verdicts. Costs $0.15 USDC per call (x402, Base mainnet). Returns: result = { considered, matches[] of { grant summary + eligibility { band eligible|uncertain, score, criteria[{code,requirement,pass,detail}], missing[], flags[] } , relevance }, excluded{ineligible, closed} }.
入力スキーマ
{
"type": "object",
"properties": {
"project": {
"type": "object",
"description": "The project profile to match against live grants.",
"properties": {
"description": {
"type": "string",
"description": "Plain-English project description"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"org_type": {
"type": "string",
"description": "individual | business | charity | community_group | public_body | local_authority | education"
},
"region": {
"type": "string",
"description": "england | scotland | wales | northern-ireland"
},
"amount_needed": {
"type": "integer",
"description": "Funding sought, GBP"
},
"params": {
"type": "object",
"description": "Numeric facts criteria may reference, e.g. { land_ha: 3.5, employees: 12 }",
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"org_type"
]
},
"top": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"project"
],
"additionalProperties": false
}🟢uk_grant_eligibility(id, org_type, region, declare)
One grant, one project: a deterministic eligibility verdict with the full criteria table - each criterion quoted from the grant's own eligibility text, marked pass/fail/undeclared - plus what is missing to firm it up and indicative funding. Criteria are parsed once at ingest, never guessed at request time; if the full text is not parsed yet the verdict uses Find a Grant's listing fields, flagged PARTIAL_CRITERIA, and criteria_provenance says so. Costs $0.15 USDC per call (x402, Base mainnet). Returns: result = { grant{name,funder,window,amounts,source_url}, criteria[{code,requirement,pass,detail}], missing[], failed[], indicative_funding, criteria_provenance{source,complete,parsed_at,eligibility_text_available} }, verdict = { score, band eligible|uncertain|ineligible, flags[] }.
入力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{1,120}$",
"description": "Grant id: the Find a Grant slug exactly as returned by /v1/grants/search (e.g. england-woodland-creation-offer-ewco-1), or a curated short alias like ewco."
},
"org_type": {
"type": "string",
"description": "Applicant type slug (individual, business, charity, community_group, public_body, local_authority, education)."
},
"region": {
"type": "string",
"description": "Where the project is: england, scotland, wales, northern-ireland."
},
"declare": {
"type": "object",
"additionalProperties": {
"type": [
"string",
"number",
"boolean"
]
},
"description": "Extra facts this grant's criteria ask for, as declared key/values (e.g. { \"land_ha\": 3.5, \"management_control\": true }). Each criterion names the parameter it reads, so a first call tells you what to declare on the second."
}
},
"required": [
"id"
],
"additionalProperties": false
}🟢uk_funder_dossier(name)
Who actually funds things like yours: one UK funder's giving history aggregated from the 360Giving open-data corpus - grants made, total and typical award, size distribution, yearly pattern, most recent named awards - plus any of their grant schemes live on Find a Grant right now. Licences are respected per dataset (share-alike data is excluded from the numbers, and every recent-award row carries its source licence). Costs $0.20 USDC per call (x402, Base mainnet). Returns: result = { funder{name,ids}, match_quality, giving { grants_made, total_awarded_gbp, years, size_distribution_gbp{min,p25,median,p75,max,mean}, yearly{}, typical_award_gbp }, recent_awards[] (each with licence + publisher), live_grants_now[], coverage }.
入力スキーマ
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2,
"maxLength": 120,
"description": "Funder name or slug, e.g. national-lottery-heritage-fund, \"Esmée Fairbairn Foundation\", or a GB-CHC-… org id."
}
},
"required": [
"name"
],
"additionalProperties": false
}推奨プロンプト
uk_company_searchuk_company_searchコミュニティ
エビデンス