Skip to main content
Glama
kaylum54

companies-house-screening-mcp

by kaylum54

Screen a list of companies

screen_companies
Read-onlyIdempotent

Screen up to 50 UK companies at once against Companies House, returning a table with status, age, and signals. Unresolved names and skipped entries are flagged for follow-up.

Instructions

Use this whenever the question is about MORE THAN ONE company — a list, a comparison, "which of these", a batch from procurement, anything with several names or numbers in it. Prefer it over calling company_snapshot repeatedly: it costs a quarter of the requests and returns a table you can read at a glance. Screens up to 50 companies and returns one row each: status, age, and which signals were found. Names that match more than one company are never guessed at; they come back under unresolved with their candidates so you can ask which was meant. Anything skipped for want of rate-limit budget comes back under not_screened with the reason, so the table is never quietly shorter than the list you passed in. Rows carry signal codes only — call company_snapshot on one company number for the detail behind them. Officers are excluded by default because they cost an extra request per company; sections_used says what the signals could see.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
companiesYesCompany names or numbers. Mixed input is fine. Maximum 50 per call.
include_chargesNoInclude charges. On by default.
include_officersNoFetch officers too, enabling the no_active_officers and recent_officer_departures signals. Off by default: it adds one request per company.
include_insolvencyNoInclude insolvency cases. On by default.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
metaYesProvenance and budget for this answer.
screenedYes
requestedYes
unresolvedYesInputs that could not be resolved to exactly one company. Never guessed at.
not_screenedYesInputs deliberately skipped, with the reason. Nothing is dropped silently.
sections_usedYesSignals in this table can only reflect these sections. Officers are off by default.
Install Server

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/ openWorld/ idempotent annotations, the description discloses key behaviors: ambiguous names go under unresolved with candidates, rate-limit skips go under not_screened with reasons, rows carry only signal codes, officers are excluded by default because of extra request cost, and sections_used reports what signals could see. This gives the agent a full model of how results and limits are represented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average, but every sentence earns its place by covering a distinct behavioral or usage fact: batching cost, result rows, unresolved handling, not_screened handling, signal codes, officer defaults, and sections_used. It is front-loaded with the most important usage rule and avoids fluff or redundant restatements of the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with this complexity (batch input, multiple opt-in flags, ambiguous matches, rate-limit constraints, output codes), the description covers all operational concerns: limits, defaults, cost implications, edge cases, and how to get detail. Since an output schema exists, the job of explaining return values is largely covered, and the description still adds useful context like signal-code behavior and sections_used.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds genuine semantic value for include_officers by tying it to specific signals (no_active_officers, recent_officer_departures) and explaining the default-off behavior and extra request cost. It also clarifies the companies parameter semantics implicitly by describing mixed names/numbers and the 50-cap, though the schema already covers the format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a precise scope: 'MORE THAN ONE company — a list, a comparison, "which of these", a batch from procurement'. It names the resource (companies), the action (screen), and the output shape (one row each: status, age, signals). It also explicitly contrasts with company_snapshot for single-company detail, making the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives direct usage guidance: prefer this over repeated company_snapshot calls because it costs a quarter of the requests and returns a glanceable table. It also tells the agent when to fall back to company_snapshot ('call company_snapshot on one company number for the detail behind them'). This is explicit when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kaylum54/companies-house-screening-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server