Save a recompete radar
save_recompete_radarSave a rolling radar for awards entering an inferred recompete window.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cadence | No | daily | |
| enabled | No | ||
| filters | Yes | ||
| window_days | No | ||
| delivery_channels | No |
save_recompete_radarSave a rolling radar for awards entering an inferred recompete window.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cadence | No | daily | |
| enabled | No | ||
| filters | Yes | ||
| window_days | No | ||
| delivery_channels | No |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false (readOnlyHint=false, openWorldHint=false, idempotentHint=false, destructiveHint=false), providing no safety or behavioral cues. The description only says 'Save', which implies a mutation, but it does not disclose whether the radar is persisted, whether it triggers notifications, whether saving with an existing name overwrites, or how 'inferred recompete window' is calculated. Since annotations are uninformative, the description carries the burden but fails to add meaningful behavioral transparency.
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?
The description is a single sentence, concise and front-loaded, with no unnecessary words. It efficiently conveys the core action and subject. However, it may be overly terse for the tool's complexity, but that is a completeness issue rather than a conciseness flaw. For what it attempts to say, it is well-structured.
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?
The tool has 6 parameters including a nested object, no output schema, and all-false annotations. The description is severely under-specified: it does not define 'rolling radar', explain what 'inferred recompete window' means, clarify the role of filters, or describe the result of the save operation. An agent cannot correctly invoke this tool without additional knowledge, especially given the presence of sibling tools like 'update_recompete_radar' that are not distinguished.
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%, and the description does not explain any parameter semantics. While property names like 'name', 'filters', 'cadence', etc., are self-explanatory at a basic level, domain-specific parameters such as 'filters' (with fields like psc, naics, set_aside, recipient_uei) and 'delivery_channels' are not elaborated. The description does not compensate for the lack of schema descriptions, leaving the agent to infer how these parameters configure the radar.
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?
The description uses a specific verb and resource: 'Save a rolling radar for awards entering an inferred recompete window.' This clearly indicates the action (save/create) and the target (a rolling radar for recompete awards), distinguishing it from 'find' tools. However, the term 'rolling radar' is somewhat vague without further explanation, and it doesn't explicitly differentiate from the sibling 'update_recompete_radar' or 'save_opportunity_search' beyond the obvious save vs. update distinction.
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 provides no guidance on when to use this tool versus alternatives. It does not mention that this is for creating a new radar while 'update_recompete_radar' is for modifying an existing one, nor does it explain prerequisites like requiring a valid set of filters. The context is implied only by the verb 'save' and the sibling tool names, but no explicit when-to-use or when-not-to-use guidance is given.
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.
Most tools have clear boundaries (e.g., get_award vs search_awards, get_business_profile vs get_vendor). Some overlap exists in pairs like find_recompetes/find_recompetes_for_business and search_opportunities/search_opportunities_for_business, though the latter are differentiated by profile context.
All tools follow a consistent verb_noun snake_case pattern (get_, search_, update_, watch_, save_, etc.) with no stylistic deviations. Naming is highly predictable across the entire set.
At 39 tools, the surface is excessively large. While the domain is broad, many tools could be combined or parameterized (e.g., get_business_awards and get_vendor_awards, multiple search variants). This creates overhead for agents and dilutes focus.
The tool set covers the core lifecycle: opportunity/award searching and retrieval, business profile updates, saved searches, watches, exclusions, and reference data. Minor gaps such as award amendments or more granular exclusion handling exist, but the surface is fundamentally complete.