register_manufacturer_interest
Record interest only after explicit user approval. Does not enroll or verify a company.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| consent | Yes | ||
| company_name | Yes | ||
| idempotency_key | Yes |
Record interest only after explicit user approval. Does not enroll or verify a company.
| Name | Required | Description | Default |
|---|---|---|---|
| consent | Yes | ||
| company_name | Yes | ||
| idempotency_key | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare write, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuinely new behavioral context: a human-consent gate and the fact that no enrollment or verification side effect occurs, which an agent cannot infer from the annotations.
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?
Two short sentences with no filler, and the approval constraint is front-loaded before the scope negation. Every clause carries information.
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 write tool with a complex nested schema, no output schema, and 0% parameter documentation, twelve words is thin. Nothing covers idempotency behavior, the purpose enum choice between DRAFT and INTEREST, or what the caller gets back after recording.
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?
Schema description coverage is 0% across 3 required params, including a nested consent object and a nested MultilingualText company_name. The description only thematically gestures at the consent requirement; it says nothing about idempotency_key semantics, the consent.purpose enum values, or the multilingual name structure, so it does not compensate for the coverage gap.
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 ('Record interest') and immediately bounds it with 'Does not enroll or verify a company,' which separates it from enrollment/verification flows. It doesn't explicitly distinguish it from the closest sibling, create_manufacturer_draft, so it stops short of a 5.
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?
Gives an explicit precondition ('only after explicit user approval') and a clear exclusion ('does not enroll or verify'), so the agent knows the gating condition. It never names the alternative sibling to use when the user actually wants a draft or enrollment, leaving the routing implicit.
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.