Skip to main content
Glama

Lookup Company

lookup_company
Read-onlyIdempotent

Look up a company on its official register: search by name to find candidates, or fetch a single company by its number to get the full public record. UK companies come from Companies House (registered name, number, status, incorporation date, registered office address, SIC codes, directors/officers, and filing deadlines). Irish companies come from the CRO (registered name, CRO number, status, company type, incorporation date, registered address and the annual return date); a CRO number is digits only. Use this during onboarding to find and confirm the user's company ("is this your company?"). Read-only: it does NOT save anything; use link_company to save the confirmed company. If the result says the lookup is not available, tell the user plainly and take their company details directly with update_company. French companies come from the Annuaire des Entreprises (registered name, SIREN, status, legal form, incorporation date, registered address, activity code and officers); search by name or by SIREN (9 digits). Other countries have no register lookup; ask the user for their company details directly.

Input Schema

NameRequiredDescriptionDefault
queryNoCompany name to search for (returns up to ~10 candidates with number, status, and address). Use when you have a name but not a number.
companyNoWhich company to read, by name or id, when the account has more than one (see list_companies). Leave it out to use the only company, or the default.
company_numberNoExact company number to fetch the full record + directors + deadlines. Use once you know the number (e.g. after the user confirms a search candidate).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

The description adds substantial behavioral context beyond the readOnlyHint and openWorldHint annotations. It explicitly says the tool does not save anything, points to link_company for saving, and explains the fallback behavior when the register lookup is unavailable. It also discloses the country-specific data sources and record contents, which helps set expectations for an open-world lookup.

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 front-loaded with the core lookup behavior and then organized by country source and fallback path. Although detailed, every section earns its place because there is no output schema and the field lists tell the agent what kind of record to expect. There is no filler or repeated boilerplate.

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?

Given an open-world read-only lookup with no output schema, the description is complete enough for an agent to call it correctly. It covers search versus fetch, country support and data sources, returned field categories, onboarding intent, save behavior, and fallback handling. No critical gap remains for the agent to invoke or explain the result.

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 description coverage is 100%, so the schema already documents the three parameters well. The description still adds useful country-specific semantics: CRO numbers are digits only, SIREN numbers are 9 digits, and search may be by name or SIREN. The main parameter meaning is therefore reinforced beyond the schema rather than merely repeated.

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 states a specific verb and resource: look up a company on its official register. It clearly distinguishes the two modes, searching by name for candidates versus fetching a single full record by company number. It also names link_company and update_company as related tools, so the agent can tell what this tool is responsible for.

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?

It gives explicit usage context: use during onboarding to find and confirm the user's company, search by name when the number is unknown, and fetch by number once a candidate is confirmed. It also spells out alternatives: use link_company to save, use update_company if lookup is unavailable, and collect details directly for unsupported countries. This is unusually complete routing guidance.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.