ukintel.uk — UK company, tender and grant intelligence
by ukintel.uk · remote · no sign-in to list tools · v1.3.0 · published by uk.ukintel
Companies House, Find a Tender and Find a Grant as paid JSON for agents. USDC via x402, no signup.
13 tools: 2 do something that can't be undone, 7 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone2Claude Code: ask: see these tools
- Changes things7Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http ukintel https://api.ukintel.uk/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
13 tools
Can't be undone 2Claude Code: ask
uk_grants_matchSend 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/f…No findings
Why it is in this group
- The description's first verb is "send": a word for sending, and what is sent cannot be taken back.
Description, as the server wrote it 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} }.
uk_tenders_fit_scoreSend 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 ac…No findings
Why it is in this group
- The description's first verb is "send": a word for sending, and what is sent cannot be taken back.
Description, as the server wrote it 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 } }.
Changes things 7Claude Code: ask
uk_company_fcaIs this UK company regulated by the Financial Conduct Authority?No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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.
uk_company_profileOne UK company as clean structured JSON: status, incorporation date, company type, SIC codes, registered office, accounts and confirmation-statement due dates with overdue booleans…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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 }.
uk_company_verdictShould an agent trust this UK company?No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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 }.
uk_funder_dossierWho 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, yearl…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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 }.
uk_grant_eligibilityOne 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 …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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[] }.
uk_healthLiveness and upstream health.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Liveness and upstream health. Free, because frameworks probe before they route money. Free. Returns: status, version, network, upstreams{}, rules_version, warnings[].
uk_tender_briefOne 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 o…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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{} }.
Only reads 4Claude Code: allow
uk_company_searchFind a UK company by name.No findings
Why it is in this group
- The name "uk_company_search" says "search": a word for reading.
Description, as the server wrote it 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.
uk_grants_searchLive 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.No findings
Why it is in this group
- The name "uk_grants_search" says "search": a word for reading.
Description, as the server wrote it 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{} }.
uk_previewA genuine, freshly-computed sample so an agent can see the exact response shape before spending anything.No findings
Why it is in this group
- The name "uk_preview" says "preview": a word for reading.
Description, as the server wrote it 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.
uk_tenders_searchLive UK public-sector tenders from Find a Tender and Contracts Finder in one call.No findings
Why it is in this group
- The name "uk_tenders_search" says "search": a word for reading.
Description, as the server wrote it 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.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.3.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http ukintel https://api.ukintel.uk/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__ukintel__uk_preview",
"mcp__ukintel__uk_company_search",
"mcp__ukintel__uk_tenders_search",
"mcp__ukintel__uk_grants_search"
],
"ask": [
"mcp__ukintel__uk_health",
"mcp__ukintel__uk_company_profile",
"mcp__ukintel__uk_company_verdict",
"mcp__ukintel__uk_company_fca",
"mcp__ukintel__uk_tender_brief",
"mcp__ukintel__uk_tenders_fit_score",
"mcp__ukintel__uk_grants_match",
"mcp__ukintel__uk_grant_eligibility",
"mcp__ukintel__uk_funder_dossier"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as ukintel. Review it before you use it.