Get federal contract details
get_contract_detailsGet full details of a contract by reference or solicitation number.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| reference | Yes | Reference or solicitation number |
get_contract_detailsGet full details of a contract by reference or solicitation number.
| Name | Required | Description | Default |
|---|---|---|---|
| reference | Yes | Reference or solicitation number |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds no additional behavioral context such as response format, record coverage, or error conditions, beyond restating that it returns full details.
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?
Single sentence with no filler, front-loaded verb, and no redundant restatement of the title. Every word adds meaning.
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-only lookup, the description is essentially sufficient: it names the identifier and the expected result ('full details'). However, with no output schema, it leaves the exact returned fields unspecified, which is a minor gap.
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 100% and the description repeats the schema's wording ('Reference or solicitation number') without adding examples, formats, or edge-case guidance. Baseline of 3 applies because the schema carries the parameter documentation.
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 clear verb ('Get'), specific resource ('full details of a contract'), and the exact lookup key ('reference or solicitation number'). This distinguishes it from search-based siblings like search_contracts and summarize_contracts without needing to open the schema.
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 description implies the tool should be used when a reference or solicitation number is in hand, but does not explicitly state when to prefer this over alternatives or how to obtain the identifier (e.g., via search_contracts). No exclusions or fallback guidance is provided.
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.