Skip to main content
Glama

Search Companies

search_companies
Read-onlyIdempotent

Search global company registries by name across 140+ jurisdictions. Returns company name, jurisdiction, status, type, incorporation date, and registered address. REQUIRES your own OpenCorporates API token via _apiKey — their public API is closed and keyless calls return 401. For keyless global company lookup use gleif search_lei instead. Example: search_companies({query:"Tesla", country:"us", _apiKey:"..."})

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesCompany name to search (e.g., "Acme Corp")
_apiKeyNoYour OpenCorporates API token (required — get one at https://opencorporates.com/api_accounts/new)
countryNoISO 2-letter country code (e.g., "us", "gb", "de")

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesThe search query used
totalYesTotal number of matching companies
returnedYesNumber of companies returned in this response
companiesYesList of matching companies

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / _apiKey
      Added value: +{
      +  "description": "Your OpenCorporates API token (required — get one at https://opencorporates.com/api_accounts/new)",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already provide readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds beyond that by disclosing the need for an API key, the error behavior for keyless calls (401), and the scope of results (name, jurisdiction, status, etc.). No contradictions.

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 concise (3 sentences plus an example) and front-loads the core purpose. Every sentence adds value: purpose, return fields, requirement/alternative, and example. No unnecessary words.

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 the tool's complexity (3 parameters, 140+ jurisdictions), and full annotation and schema coverage, the description provides all necessary context: prerequisites, error conditions, return fields, and an example. With an output schema existing, further detail on return values is unnecessary.

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?

The input schema has 100% description coverage for all three parameters. The description adds value by explaining why _apiKey is required (public API is closed), providing an example of usage, and clarifying the country parameter as ISO 2-letter code. This goes beyond the schema's basic descriptions.

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 clearly states the tool's purpose: 'Search global company registries by name across 140+ jurisdictions.' It specifies the verb (search), resource (company registries), and scope (global). It also distinguishes itself from the sibling 'gleif search_lei' by noting it requires an API key.

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 explicitly guides when to use the tool (when you have an OpenCorporates API token) and when not to (for keyless global lookup, use 'gleif search_lei'). It also mentions the required authentication and the consequence of missing the API key (401 error).

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.