company_profile
Research a company from its website: name, description, socials, emails, key pages, pricing mentions, tech stack.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Company website, e.g. stripe.com |
Research a company from its website: name, description, socials, emails, key pages, pricing mentions, tech stack.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Company website, e.g. stripe.com |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It does disclose the scope of what is extracted, which is genuinely useful, but says nothing about crawl depth, number of pages fetched, cost/latency, or failure behavior for unreachable sites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action, then a compact enumeration of outputs. No filler, no repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read tool with no annotations and no output schema, the field enumeration effectively serves as return-value documentation. Minor gaps around depth and handling of unreachable sites keep it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
A single parameter with 100% schema description coverage ('Company website, e.g. stripe.com'), so the schema does the work. The description reinforces that the input is a website rather than a name, but adds no format or normalization detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Research a company from its website') and enumerates exactly what is extracted (name, description, socials, emails, key pages, pricing, tech stack). That enumeration implicitly separates it from siblings like site_audit and sitemap_urls, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Research a company from its website' implies the use case (company profiling from a single domain), but there is no explicit when-to-use versus site_audit, page_to_json, or sitemap_urls, and no stated prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.