Govparse Government Data Gateway
Server Details
Pay-per-call US government data: carrier safety, visa sponsors, contracts, employer risk.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.1/5 across 31 of 38 tools scored.
Each tool targets a distinct domain and specific action (e.g., FDA approvals vs clearances vs recalls; firmstanding business360 dossier vs search vs screen). Even overlapping concepts like 'business360' vs 'business360_lookup' are distinguished by input (UUID vs name+state). No two tools appear to do the same thing.
All tools use a consistent lowercase snake_case pattern with domain prefix (e.g., fda_*, firmstanding_*, fmcsa_*, govcon_*). Action words (search, lookup, screen, feed, stats) follow predictable usage. The naming is uniform and easy to parse.
38 tools is on the higher end but appropriate for a comprehensive government data gateway spanning multiple agencies and datasets. Each domain has a reasonable number of tools (e.g., FMCSA: 7, OFLC: 6). Could potentially be trimmed slightly, but overall well-scoped for the stated purpose.
The tool surface covers the major government data sources comprehensively: FDA (approvals, clearances, recalls), FMCSA (carrier census, safety, insurance, etc.), FSIS, DOJ/OFLC, OSHA/EPA/DOL enforcement, SEC insider filings, clinical trials, VA facilities/opportunities/vendors, and federal contracting. No obvious gaps for the stated gateway purpose.
Available Tools
81 toolsbuild_parseAInspect
Compose a lead-generation Parse from what you sell and who you target. Returns the signals/legs it watches, a plain-English restatement, a per-Parse narrative, a fit score, the expected new-leads-per-period rate, and a small free sample. This is the FREE preview of get_leads.
| Name | Required | Description | Default |
|---|---|---|---|
| parse | No | Alternatively, the `parse` object returned by build_parse — replays the exact composed intent so a preview and its paid pull match. | |
| query | No | OPTIONAL value-prop LABEL only (what you sell) — it does NOT select the Parse and is never inferred. The Parse is composed ONLY from an explicit selection: a `preset_id`, or `target_entity` + `buying_moments`. | |
| states | No | Two-letter US state codes to scope to; empty = nationwide. | |
| industry | No | An industry slug from list_industries (e.g. "freight-factoring", "pharma-sales") — scopes/labels the pick. Not a selector on its own. | |
| preset_id | No | Alternatively, a curated-Parse or preset id (from list_industries) to compose a proven Parse. | |
| attributes | No | Ideal-customer descriptors, e.g. ["small / emerging", "multi-location"]. | |
| target_entity | No | Structured pick: the entity you SELL TO. Taken verbatim (never guessed), so a pharma-brand seller can't be mis-targeted onto physicians. | |
| buying_moments | No | Structured pick: library template ids (buying-moment ids) from build_parse/list_industries output. Each maps to a real signal. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It transparently lists what the tool returns (signals/legs, plain-English restatement, narrative, fit score, expected rate, free sample) and states it is a 'FREE preview', conveying the preview nature. It does not detail limitations like the deterministic selection rule, but the schema description covers that. No contradictions with annotations (none provided).
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 two sentences: the first states purpose and enumerates return values, the second highlights the free-preview relationship to get_leads. It is front-loaded with the primary action and zero filler. Every sentence adds meaningful context.
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?
Given the tool's complexity (8 params, nested objects, no output schema), the description lists return values but not their structure. However, the schema description is extremely rich and supplies the selection logic, making the combined context sufficient for an agent to invoke correctly. The description clearly frames the tool's role relative to get_leads, which is essential context for a preview tool.
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?
The input schema has 100% parameter coverage with detailed descriptions, including the nested 'parse' object, enums, and the role of 'query'. The tool description adds only a high-level paraphrase ('what you sell and who you target') without new parameter-specific details. Since schema coverage is complete, the baseline of 3 is appropriate, though the description does reinforce the intended user-facing intent.
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 clearly states the verb 'Compose' and the resource 'lead-generation Parse', specifying it transforms 'what you sell and who you target'. It explicitly distinguishes itself from the paid sibling 'get_leads' by calling itself the 'FREE preview'. This makes the tool's purpose immediately clear and unique among the large sibling set.
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 explicitly positions build_parse as the free preview of get_leads, implying use for composing and testing before purchasing actual leads. It doesn't explicitly exclude alternatives like list_industries, but the 'FREE preview' framing provides clear context. The schema description adds detailed usage rules (explicit selection via preset_id or target_entity+buying_moments, query as label only), further guiding correct usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cms_timely_care_deltaAInspect
Which hospitals' emergency-department throughput is degrading period-over-period? Windows the CMS Timely & Effective Care snapshots to compute each hospital's latest-vs-prior change on a measure (default OP_18b median ED time; higher = worse). Filter by measure, state, facility_id, direction (worse | better | any), min_pct_change, min_delta, and min_sample. Returns latest_score, prior_score, delta, and pct_change — the founder's ED-staffing-pressure tell. CMS Care Compare public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Hospital state code(s), CSV. | |
| offset | No | Rows to skip. | |
| measure | No | Measure id to compare across periods (default OP_18b). | |
| direction | No | worse (default) | better | any. | |
| min_delta | No | Minimum absolute change in the chosen direction. | |
| min_sample | No | Minimum latest-period sample size. | |
| facility_id | No | CMS CCN(s), CSV. | |
| min_pct_change | No | Minimum period-over-period % change in the chosen direction. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explains the tool computes latest-vs-prior change and notes data is public-domain. It mentions pricing but does not disclose rate limits, error handling, or how periods are determined. It does not contradict any 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?
The description is three sentences, front-loads the purpose, and each sentence adds value: problem statement, computation explanation, filter/return summary including pricing. No redundant 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?
Given 9 parameters and no output schema, the description covers the main computation, defaults, and return columns. It lacks edge-case explanations (e.g., missing prior periods) but is fairly complete for its complexity.
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 coverage is 100% with minimal descriptions. The description adds meaning by specifying default measure (OP_18b), default direction (worse), and the returned fields (latest_score, prior_score, delta, pct_change). This enhances understanding beyond the schema alone.
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 starts with a clear question 'Which hospitals' emergency-department throughput is degrading period-over-period?' and then explains the tool computes changes between periods. It distinguishes from sibling cms_timely_care_search by focusing on period-over-period delta rather than raw snapshots.
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 mentions 'the founder's ED-staffing-pressure tell' implying a use case but does not explicitly state when to use this tool versus alternatives like cms_timely_care_search. No when-not or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cms_timely_care_searchAInspect
How is a hospital's emergency department performing on CMS timely-care measures? Search CMS 'Timely and Effective Care - Hospital' by state, facility_id (CCN), measure (OP_18b median ED time, OP_22 left-without-being-seen, SEP_1...), condition, city, min/max score, reporting-period end, or latest_only. Returns per-hospital score, sample, measure period, and snapshot. CMS Care Compare public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City fragment. | |
| sort | No | score | sample | period_end :asc|:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Hospital state code(s), CSV. | |
| offset | No | Rows to skip. | |
| measure | No | Measure id(s), CSV (OP_18b, OP_22, SEP_1...). | |
| condition | No | Condition fragment. | |
| max_score | No | Maximum numeric score. | |
| min_score | No | Minimum numeric score. | |
| period_end | No | Exact reporting-period end date (YYYY-MM-DD). | |
| facility_id | No | CMS CCN(s), CSV. | |
| latest_only | No | true = only each facility×measure's most recent period. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses return fields (score, sample, period, snapshot) and notes it's public-domain, but does not mention auth, rate limits, error handling, or confirm read-only behavior. Adequate but not exhaustive.
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-sentence description plus pricing note. Front-loaded with the core question, then enumerates filterable fields, then states returns. Every sentence adds value without redundancy.
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?
Given 12 parameters, 100% schema coverage, no output schema, and no annotations, the description is fairly complete. It explains data source (CMS Care Compare) and pricing, and lists key outputs. Could elaborate on output structure but sufficient.
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 coverage is 100% (all 12 parameters have descriptions). The description adds value by listing example measures, hinting at CSV usage for state/facility_id/measure, and mentioning min/max score and latest_only. This goes beyond the schema descriptions.
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?
Description clearly states verb (search), resource (CMS timely-care measures for hospitals), and scope (emergency department). It lists key parameters and return fields. However, it does not explicitly differentiate from sibling tools like cms_timely_care_delta, so it misses some 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?
Description implies usage for retrieving timely-care measures by various filters but lacks explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or context for selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
enrich_contactAInspect
Reveal the decision-maker at a target company (named person, title, work email, LinkedIn), third-party enriched. PAID: connect with your API key (a SaaS key spends 1 enrichment credit; a metered key is billed per reveal) or pay keyless via an x402 USDC payment. Never returns a government record; always source:enriched.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | A specific person name, if already known. | |
| state | No | State/region hint to disambiguate common names. | |
| title | No | Desired role/seniority, e.g. "VP Operations", "owner". | |
| domain | No | Company web domain — the single strongest match hint. | |
| company | Yes | Target company / employer / carrier legal name. Required. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the tool is paid, third-party enriched, and returns decision-maker details. It also specifies it never returns government records. However, it lacks details on error handling, rate limits, what happens if no decision-maker is found, or authentication specifics beyond the API key.
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 concise and front-loads the main action. It covers all necessary points in a single paragraph. However, it could be slightly more structured (e.g., separate sections for payment, constraints) to improve readability without adding length.
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?
Given no output schema, the description explicitly states the return values (named person, title, work email, LinkedIn) and a constraint (no government records). This provides sufficient context for the agent to understand what to expect, completing the tool's documentation effectively.
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 coverage is 100%, so baseline is 3. The description adds value by contextualizing parameters: stating company is required, domain is the strongest hint, and listing name, state, title as hints. This helps the agent understand parameter relationships beyond the schema's individual descriptions.
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 clearly states the tool reveals a decision-maker at a target company, including specific attributes (person, title, email, LinkedIn). It distinguishes itself from siblings by mentioning it is third-party enriched and never returns government records, which is unique among the listed tools.
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 clear conditions for use: it is a paid tool requiring an API key or x402 USDC payment, and it never returns government records. However, it does not explicitly compare to sibling tools like get_leads or other enrichment tools, missing an opportunity for when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
epa_feed_rcraAInspect
What does the full RCRAInfo hazardous-waste handler roster look like, handler by handler? Bulk feed over EPA RCRAInfo in handler-id order: facility, city, state, generator status, roles (LQG/SQG/VSQG/transporter/TSDF), and NAICS — a large-quantity generator or TSDF is an EHS-services / environmental-consulting target. Flat rows, cursor-paginated up to 1000/page, filterable by state, generator status, NAICS, or LQG/TSDF/transporter flags. A standing roster (no per-record registration date). [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| lqg | No | true = large-quantity generators only. | |
| tsdf | No | true = treatment/storage/disposal facilities only. | |
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV. | |
| state | No | State code(s), CSV. | |
| active | No | false = include inactive handler sites (default: active only). | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| transporter | No | true = hazardous-waste transporters only. | |
| generator_status | No | Generator status(es), CSV: LQG | SQG | VSQG | Non-Generator. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses ordering by handler-id, cursor pagination up to 1000/page, filters available, and that it is a standing roster without per-record registration dates. It also mentions pricing. However, it does not discuss authentication or rate limits, but these are less critical for a read-only feed.
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 dense paragraph, front-loaded with purpose. Every sentence adds value, including pricing. It is slightly long but efficient, with no wasted words.
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?
Given no output schema, the description lists returned fields (facility, city, state, generator status, roles, NAICS), explains pagination and filters, and mentions pricing. It covers the essential context for a bulk feed tool, though a sample or field types could further improve completeness.
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?
The input schema has 100% description coverage for all 9 parameters. The description adds contextual grouping (e.g., filterable by state, generator status, NAICS, or flags) but does not provide additional meaning beyond the schema's individual parameter descriptions. According to guidelines, baseline is 3, so this is appropriate.
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 explicitly states it is a bulk feed of the full RCRAInfo handler roster, listing handlers in handler-id order with details like facility, city, state, generator status, roles, and NAICS. It distinguishes from the sibling epa_rcra_handlers_search by being a feed/paginated list versus a search tool.
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 clearly indicates this tool is for bulk retrieval of all handler records with cursor pagination and filtering options. While it does not explicitly state when not to use it or mention alternatives, the context and naming imply it is for comprehensive feed access vs. specific searches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
epa_rcra_handlers_searchAInspect
Which hazardous-waste handlers operate in a market? Search EPA RCRAInfo (every registered hazardous-waste generator, transporter, and treatment/storage/disposal facility) by company, state, city, generator status (LQG/SQG/VSQG), NAICS industry, or handler role (transporter, TSDF, active). Returns the handler (entity-resolved where possible), address, generator status, and role flags — an EHS vendor's entire regulated universe, not just ECHO hits. EPA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| lqg | No | true = large-quantity generators only. | |
| city | No | City fragment. | |
| sort | No | facility_name | generator_status :asc|:desc. Default facility_name:asc. | |
| tsdf | No | true = operating treatment/storage/disposal facilities only. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS prefix(es), CSV (e.g. 32 = manufacturing, 3251 = basic chemicals). | |
| state | No | State code(s), CSV. | |
| active | No | true = currently-active handler sites only. | |
| offset | No | Rows to skip. | |
| company | No | Handler/company name — suffix/punctuation-insensitive. | |
| entity_id | No | Resolved employer entity UUID (pivots to business360). | |
| handler_id | No | EPA RCRA handler ID(s), CSV. | |
| transporter | No | true = hazardous-waste transporters only. | |
| generator_status | No | LQG | SQG | VSQG | Non-Generator (CSV). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses public-domain nature, pricing per row, return fields (handler, address, status, roles), and indicates it's a read operation. Does not discuss rate limits or authentication, but these are standard for public APIs. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with a question, then capability, then return fields, then pricing. Every sentence adds value with no redundancy or fluff. Well-structured for quick understanding.
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?
Given 14 parameters, no output schema, and no annotations, the description covers all relevant aspects: what data is searched, filter options, return fields, and pricing. It also provides business context (EHS vendor universe). Pagination is implied via limit/offset parameters in schema. Complete for a search tool.
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%, so baseline is 3. The description summarizes filter categories (company, state, etc.) but does not add significant new meaning beyond the schema parameter descriptions. The schema descriptions are adequate, so the tool description adds minimal extra value.
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 starts with a specific question, states the tool searches EPA RCRAInfo for registered hazardous-waste handlers, and distinguishes itself from ECHO by claiming it returns the entire regulated universe. The verb 'search' and resource are clear, and it differentiates from sibling tools like epa_tri_search.
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 usage when one needs RCRA handler data filtered by various criteria. It provides context (e.g., 'EHS vendor's entire regulated universe') but does not explicitly exclude other tools or provide when-not-to-use guidance. Lacks explicit alternatives naming.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
epa_tri_searchAInspect
Which facilities report toxic chemical releases? Search the EPA Toxics Release Inventory (TRI Basic Data) by facility or parent company, state, chemical, CAS number, NAICS, reporting year, chemical class (carcinogen, PBT, PFAS), or minimum release amount. Returns the facility (entity-resolved where possible), parent company, chemical, and on/off-site release totals — the emissions universe for environmental, remediation, and EHS sellers. EPA public-domain; amounts self-reported. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| cas | No | CAS number(s), CSV. | |
| pbt | No | true = persistent bioaccumulative toxic (PBT) chemicals only. | |
| pfas | No | true = PFAS chemicals only. | |
| sort | No | total_releases | tri_year | facility_name :asc|:desc. Default total_releases:desc. | |
| year | No | TRI reporting year(s), CSV. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS prefix(es), CSV. | |
| state | No | State code(s), CSV. | |
| offset | No | Rows to skip. | |
| company | No | Facility or parent-company name — suffix/punctuation-insensitive. | |
| chemical | No | Chemical name fragment. | |
| facility | No | Facility name fragment. | |
| entity_id | No | Resolved employer entity UUID. | |
| carcinogen | No | true = OSHA-carcinogen chemicals only. | |
| min_total_releases | No | Minimum total on+off-site release amount (reported unit, usually pounds). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the data is public-domain and self-reported, mentions pricing ($0.05/row), and implies read-only usage. It does not mention rate limits, authentication, or pagination behavior, but the nature of a search tool is reasonably clear. No contradiction with 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?
The description is packed into four sentences that are front-loaded with the core purpose, followed by detail on filters, output, and caveats. It is efficient but could potentially be tightened slightly without loss.
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?
Given the lack of an output schema, the description adequately explains the return fields (facility, parent company, chemical, release totals) and provides pricing and source context. With 15 parameters, it covers the main usage scenarios. Minor omission: no mention of sorting or pagination behavior in the description, though those are in the schema.
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%, but the description adds context beyond parameter names: it explains that results are 'entity-resolved where possible', includes parent company and release totals, and notes that amounts are self-reported. This enhances understanding beyond the parameter descriptions alone.
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 starts with a clear question, specifies the EPA TRI Basic Data source, enumerates the many filter dimensions (facility, company, state, chemical, etc.), and states what is returned (facility, parent company, chemical, release totals). It thoroughly distinguishes this tool from sibling tools that cover other regulatory domains.
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 notes the tool is for 'environmental, remediation, and EHS sellers' but does not explicitly state when to use this tool versus siblings (e.g., epa_rcra_handlers_search). No when-not-to-use or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
faa_aircraft_searchAInspect
Who owns which aircraft, and what did they just register? Search the FAA aircraft registry by registrant/owner, N-number, manufacturer, model, type_aircraft, type_registrant (1 individual/3 corp/7 LLC), state, city, status, fractional-only, or certificate-issue date (registered_since — new-ownership tell). Returns the aircraft (make/model/type/year/seats) and its entity-resolved registrant. FAA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| mfr | No | Manufacturer name fragment. | |
| city | No | Registrant city fragment. | |
| sort | No | cert_issue_date | last_action_date | year_mfr :asc|:desc. Default cert_issue_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| model | No | Model name fragment. | |
| since | No | Last-action date on/after this date (YYYY-MM-DD). | |
| state | No | Registrant state code(s), CSV. | |
| offset | No | Rows to skip. | |
| status | No | Registration status code(s), CSV (V = valid). | |
| n_number | No | N-number(s), CSV (leading N optional). | |
| entity_id | No | Resolved registrant entity UUID (pivots to business360). | |
| fractional | No | true = fractional-ownership aircraft only. | |
| registrant | No | Registrant/owner name — suffix/punctuation-insensitive. | |
| type_aircraft | No | Type-aircraft code(s), CSV (4 fixed-wing single, 5 fixed-wing multi, 6 rotorcraft). | |
| type_registrant | No | Registrant-type code(s), CSV (1 individual, 3 corporation, 7 LLC). | |
| registered_since | No | Certificate-issue date on/after this date (YYYY-MM-DD) — new registrations/ownership. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the source (FAA public-domain records), pricing ($0.05/row), and return contents. However, it does not explicitly state the tool is read-only or mention rate limits. Given the search nature and public data, this is adequate but not exhaustive.
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 dense paragraph that packs a lot of information without waste. It front-loads the purpose. While slightly lengthy, every sentence adds value. It could be broken into bullets for clarity, but remains concise.
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?
Given 16 parameters with full schema coverage, no output schema, and no required params, the description explains what is returned (aircraft make/model/type/year/seats, registrant), sets expectations with pricing, and covers key search dimensions. It is sufficient for an agent to understand the tool's output and use.
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 coverage is 100%, so baseline is 3. The description adds value by explaining parameter codes (e.g., type_registrant: 1 individual, 3 corp, 7 LLC) and contextual hints (e.g., registered_since as 'new-ownership tell'). It enhances understanding beyond schema examples.
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 clearly identifies the tool's purpose: searching the FAA aircraft registry by multiple criteria. It lists specific fields (owner, N-number, manufacturer, etc.) and states what is returned (aircraft details and registrant). This distinguishes it from sibling tools like faa_deregistrations_search.
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 usage for any FAA aircraft registry query, listing many search parameters and highlighting use cases like new registrations via 'registered_since'. It does not explicitly state when not to use it or compare with alternatives, but the context of sibling tools suggests differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
faa_deregistrations_searchAInspect
Which aircraft were just deregistered (sold, exported, scrapped, or repossessed)? Search FAA aircraft deregistrations (cancel date >= 2022) by last registrant/owner, N-number, mailing state, status, or cancel date (since/before) — the asset-disposal / ownership-exit event for auctioneers, dealers, and asset-based lenders. Returns the aircraft, its last entity-resolved registrant, and the cancel date. FAA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | cancel_date | last_action_date :asc|:desc. Default cancel_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Cancel date on/after this date (YYYY-MM-DD). | |
| state | No | Mailing state code(s), CSV. | |
| before | No | Cancel date on/before this date (YYYY-MM-DD). | |
| offset | No | Rows to skip. | |
| status | No | Status code(s), CSV. | |
| n_number | No | N-number(s), CSV (leading N optional). | |
| entity_id | No | Resolved registrant entity UUID. | |
| registrant | No | Last registrant/owner name — suffix/punctuation-insensitive. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses data source, cost, cancel date constraint (>=2022), and what is returned. It does not cover rate limits or auth but is fairly transparent for a search tool.
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 front-loaded with a question and efficiently covers purpose, use case, returns, and cost. It is slightly verbose but each sentence earns its place.
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?
Given no output schema, the description adequately describes what is returned, search criteria, and source. It lacks pagination behavior details but is mostly complete for a search tool with 10 optional parameters.
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 coverage is 100% with detailed parameter descriptions. The description adds no new semantic information beyond listing some search criteria, so baseline 3 is appropriate.
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 clearly states the tool searches FAA aircraft deregistrations with a specific verb and resource. It distinguishes from siblings like faa_aircraft_search by focusing on deregistrations (ownership-exit events) and lists key search criteria.
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 clear context for use, targeting auctioneers, dealers, and asset-based lenders. It implies the tool is for ownership-exit events but does not explicitly name alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fcc_licenses_searchAInspect
Who just got a new or modified FCC wireless license (a buildout tell)? Search the FCC ULS license transactions (microwave, land-mobile private/commercial, paging, broadcast-aux) by licensee company, call sign, radio_service, service_group, state, city, status, applicant_type, FRN, grant date (granted_since), or last-action date (since). Returns the license, its entity-resolved licensee, radio service, status, and dates. FCC public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| frn | No | FCC Registration Number(s), CSV. | |
| city | No | Premise city fragment. | |
| sort | No | grant_date | last_action_date | call_sign :asc|:desc. Default last_action_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Last-action date on/after this date (YYYY-MM-DD) — recent transactions. | |
| state | No | Premise state code(s), CSV. | |
| offset | No | Rows to skip. | |
| status | No | License status code(s), CSV (A = active). | |
| company | No | Licensee company/agency name — suffix/punctuation-insensitive. | |
| call_sign | No | Call sign(s), CSV. | |
| entity_id | No | Resolved licensee entity UUID (pivots to business360). | |
| granted_since | No | Grant date on/after this date (YYYY-MM-DD) — surfaces new license grants. | |
| radio_service | No | FCC radio service code(s), CSV (e.g. MW microwave, IG industrial/business, PW public safety). | |
| service_group | No | microwave | land-mobile-private | land-mobile-commercial | paging | land-mobile-broadcast-aux (CSV). | |
| applicant_type | No | Applicant type code(s), CSV (B business, C corp, G govt, I individual, L limited-liability, P partnership). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It states the tool is read-only (FCC public-domain records) and mentions cost per row. However, it does not disclose other behaviors like idempotency, rate limits, or whether it modifies data. The description is adequate but could add more safety context.
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 two sentences long, with the purpose front-loaded. Every word adds value: it states the function, filter categories, returns, and cost. No wasted text.
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 complex tool with 15 parameters and no output schema, the description covers the main filter groups and return fields. It explains the pricing and data source. However, it omits pagination details and behavior for unspecified parameters, but the schema partially fills that 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 coverage is 100%, and the description adds value beyond the schema by explaining what each parameter filters (e.g., 'granted_since surfaces new license grants') and summarizing the return data. This helps the agent understand how parameters relate to the output.
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 clearly states the tool searches FCC ULS license transactions and specifies what it returns (license, entity-resolved licensee, radio service, status, dates). It uses specific verbs and resources, distinguishing it from siblings that focus on other government datasets.
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 lists many filter parameters but does not explicitly state when to use this tool versus alternatives or when not to use it. Among siblings, no other tool searches FCC licenses, so it is implicitly the tool for that purpose, but guidance on exclusion is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_approvals_drugsAInspect
Which companies just won an FDA drug approval or supplement? Search openFDA drug/drugsfda applications by sponsor company, application type (NDA/ANDA/BLA), route, marketing status, most-recent approval date (since), or original market-entry date (first_approval_after). Returns the applicant company (entity-resolved where possible), brand/ingredient/dosage, and approval dates — a day-one commercial/partnership target list for pharma sellers and CROs. openFDA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | latest_approval_date | original_approval_date :asc|:desc. Default latest_approval_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| route | No | Route-of-administration fragment. | |
| since | No | Most recent approval/supplement on/after this date (YYYY-MM-DD). | |
| offset | No | Rows to skip. | |
| company | No | Applicant/sponsor company — suffix/punctuation-insensitive. | |
| entity_id | No | Resolved employer entity UUID (pivots to business360). | |
| application_type | No | NDA | ANDA | BLA (CSV). | |
| marketing_status | No | Prescription | Over-the-counter | Discontinued. | |
| first_approval_after | No | Original approval (market entry) on/after this date (YYYY-MM-DD) — surfaces new market entrants. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses important behavioral traits: the data source ('openFDA public-domain records'), pricing ('$0.05/row'), and entity resolution for applicant companies. It also lists the returned fields (brand, ingredient, dosage, approval dates). No contradictions or hidden side effects are noted.
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 four sentences, each adding value. The first sentence sets the context, the second lists search fields, the third describes the output, and the fourth provides source and pricing. It is front-loaded and efficient, though the sentence about returns could be slightly more concise.
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?
Given the 10 parameters (none required) and no output schema, the description covers purpose, search criteria, return fields, and even pricing and data source. It is complete enough for an agent to understand when and how to use the tool, though a few more details on typical output structure would be beneficial.
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%, so the baseline is 3. The description adds minimal new meaning beyond the schema: it groups parameters by category (sponsor company, application type, etc.) and mentions 'suffix/punctuation-insensitive' for company, which is already in the schema. It does not significantly enhance understanding of the parameters.
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 opens with a targeted question ('Which companies just won an FDA drug approval or supplement?') and clearly identifies the resource as FDA drug approvals/supplements. It lists specific searchable fields (sponsor company, application type, route, etc.) and distinguishes itself from sibling tools like fda_clearances_devices and fda_recalls_search by focusing exclusively on drugs.
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 explicitly states the searchable criteria and the intended use case ('a day-one commercial/partnership target list for pharma sellers and CROs'). While it does not directly state when not to use or name alternatives, the sibling tools are in different domains (devices, recalls, warning letters), so the usage context is implicitly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_clearances_devicesAInspect
Which companies just cleared or got FDA approval for a medical device? Search openFDA device 510(k) clearances and PMA premarket approvals by applicant company, pathway (510k/pma), FDA product code, advisory-committee specialty (e.g. Cardiovascular), applicant state, or decision date (since). Returns the applicant company (entity-resolved where possible), device name, product code, and decision date — a fresh target list for device and component sellers. openFDA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | decision_date | date_received :asc|:desc. Default decision_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Decision (clearance/approval) date on/after this date (YYYY-MM-DD). | |
| state | No | Applicant state code(s), CSV (510(k) only). | |
| offset | No | Rows to skip. | |
| company | No | Applicant company — suffix/punctuation-insensitive. | |
| pathway | No | 510k | pma (CSV). | |
| entity_id | No | Resolved employer entity UUID. | |
| product_code | No | FDA product code(s), CSV. | |
| advisory_committee | No | Medical specialty panel fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that data comes from openFDA public-domain records, returns specific fields, and mentions entity resolution. However, it does not state whether the tool is read-only, any rate limits, or error behavior. The price mention adds 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 two sentences, front-loaded with an engaging question. It efficiently conveys purpose, filtering options, output, source, and price. Every sentence is informative, though the second sentence is somewhat dense. It could be slightly more concise without losing content.
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?
Given the 10 parameters (all described in schema), no annotations, and no output schema, the description covers the main use case, filters, and output. It mentions the data source (openFDA) and price. It lacks details on pagination or error handling, but these are reasonable omissions. The description is complete enough for an agent to understand the tool's function.
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%, so the schema already documents each parameter. The description adds value by stating the output fields (applicant company, device name, product code, decision date) which are not in the schema. It also clarifies the 'company' parameter with 'suffix/punctuation-insensitive' and 'entity-resolved where possible', going 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?
The description clearly states the tool's purpose: searching FDA device 510(k) clearances and PMA approvals by various criteria. It distinguishes itself from siblings like fda_approvals_drugs and fda_recalls_search by specifying 'device' and 'medical device'. It also mentions specific outputs and target users.
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 clear usage context: it answers 'Which companies just cleared or got FDA approval for a medical device?' and lists filtering options. It implies when to use this tool via the question and the 'fresh target list for sellers' phrase. However, it does not explicitly state when not to use it or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_feed_approvalsAInspect
Which drugs did the FDA just approve, and who is the sponsor? Bulk feed over openFDA Drugs@FDA approvals, newest-first by approval date — a new approval or supplement is a commercial-launch moment. Cursor-paginated up to 1000/page, filterable by sponsor, submission type (ORIG/SUPPL), marketing status, or since. Rows carry the sponsor, application number/type, brand names, active ingredients, dosage/route, and marketing status. Observational public records, never a clinical recommendation. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only approvals dated on or after this date (YYYY-MM-DD). | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| sponsor | No | Sponsor company name fragment. | |
| submission_type | No | ORIG (original approval) | SUPPL (supplement). | |
| marketing_status | No | Marketing status fragment (Prescription, Over-the-counter, Discontinued...). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the sorting order (newest-first), pagination (cursor, up to 1000/page), filtering options, and pricing ($0.05/row). It also notes the data is observational and not a clinical recommendation. However, it does not mention rate limits, authentication requirements, or whether the tool is read-only.
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 front-loaded with an engaging question, then clearly states the purpose and capabilities. While not extremely concise, every sentence adds value. The pricing is noted at the end. It could be slightly shorter but 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?
For a feed tool with 6 optional parameters and no output schema, the description lists the output fields (sponsor, application number/type, brand names, etc.), explains pagination and filtering, and mentions pricing. It provides sufficient context for an agent to understand what the tool returns and how to use it.
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?
The input schema has 100% description coverage, so each parameter is already documented. The tool description reiterates the filterable fields and adds enum values for submission_type (ORIG/SUPPL), but does not add significant new meaning beyond the schema. Baseline 3 is appropriate.
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 clearly states it is a bulk feed over openFDA Drugs@FDA approvals, sorted newest-first by approval date. It specifies the resource (FDA approvals) and the action (bulk feed with cursor pagination). This distinguishes it from sibling tools like fda_approvals_drugs (search) and fda_feed_clearances (devices).
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 usage for obtaining recent approvals in bulk, but does not explicitly state when to use this tool versus alternatives like fda_approvals_drugs or fda_feed_clearances. It provides context for pagination and filtering but lacks direct comparison or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_feed_clearancesAInspect
Which medical devices did the FDA just clear or approve, and who is the applicant? Bulk feed over openFDA 510(k) clearances and PMA approvals, newest-first by decision date — a new clearance is a device launch. Cursor-paginated up to 1000/page, filterable by applicant, state, product code, pathway (510k/pma), advisory committee, or since. Rows carry the applicant, device name, product code, advisory committee, pathway, and decision. Observational public records, never a recommendation. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only decisions dated on or after this date (YYYY-MM-DD). | |
| state | No | Applicant state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| pathway | No | Regulatory pathway: 510k | pma. | |
| applicant | No | Applicant (manufacturer) name fragment. | |
| committee | No | FDA advisory-committee / specialty panel fragment (Cardiovascular, Radiology...). | |
| product_code | No | FDA product code (3-letter). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the data source (openFDA), ordering, pagination (cursor-based, up to 1000), filtering capabilities, and row contents. It also mentions pricing ($0.05/row) and that it is observational and not a recommendation. This provides good behavioral context beyond the schema.
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 well-structured, front-loading the core purpose and then detailing pagination, filtering, row content, and disclaimer. Each sentence adds value, though it is somewhat lengthy. It could be slightly more concise but remains effective.
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?
Given 8 parameters with full schema coverage and no output schema, the description adequately explains the feed operation, pagination, filtering, and row contents. It mentions the data source and a disclaimer. It could improve by specifying the exact return format, but it is largely complete.
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%, so baseline is 3. The description adds context about cursor pagination and feed behavior but does not significantly enhance parameter meaning beyond the schema's descriptions (e.g., 'Rows per page (default 500, cap 1000).').
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 clearly states it provides a bulk feed of FDA 510(k) clearances and PMA approvals, ordered newest-first. It specifies the verb (feed/query), resource (devices cleared or approved), and distinguishes from sibling tools like fda_clearances_devices by emphasizing 'bulk feed' and 'cursor-paginated'.
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 usage for retrieving the latest clearances in bulk and mentions filtering options. It includes a caution about public records being non-recommendations. However, it does not explicitly compare to alternative tools or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_feed_warninglettersAInspect
Which firms just received an FDA Warning Letter — an open compliance-gap and remediation clock? Bulk feed over the FDA Warning Letters index, newest-first by issue date: recipient firm, product area (drugs/devices/food/tobacco…), issuing office, alleged-violation subject, and the response / close-out clock. Flat rows, cursor-paginated up to 1000/page, filterable by product_area, subject, close-out state, or since. Observational records — an alleged violation, never an adjudication. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only letters issued on or after this date (YYYY-MM-DD). | |
| closed | No | true = closed-out letters only; false = open (no close-out) only. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| office | No | Issuing FDA center / district office fragment (e.g. Center for Drug Evaluation and Research). | |
| subject | No | Alleged-violation subject fragment (e.g. CGMP, Adulterated, Unapproved New Drug). | |
| product_area | No | Product area(s), CSV: drugs | devices | biologics | food | dietary-supplement | cosmetics | tobacco | veterinary | other. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description fully carries the burden. It discloses cursor-pagination, filtering, ordering (newest-first), and observational nature. It also includes pricing, which is useful. Minor lacking: no mention of rate limits or auth.
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 reasonably concise at three sentences, front-loaded with the core question. Every sentence adds value, though it could be slightly tighter.
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?
Despite no output schema or annotations, the description explains the purpose, output fields, filtering, pagination, constraints, and pricing. It is comprehensive for a feed tool.
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 coverage is 100%, so baseline is 3. The description adds context by listing returned fields and mentioning filters, but doesn't add significant meaning beyond what the parameter descriptions already provide.
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 clearly states it's a bulk feed of FDA Warning Letters, newest-first, with specific fields. It distinguishes from sibling `fda_warningletters_search` by emphasizing it's a feed and observational.
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 usage for bulk listing and filtering, but doesn't explicitly say when to use this feed vs. the search sibling. It mentions 'Bulk feed' but lacks direct guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_recalls_searchAInspect
Which companies have an open or recent FDA drug/device recall? Search openFDA drug + device enforcement (recall) reports by recalling firm, product type (Drugs/Devices), classification (Class I/II/III), status, state, or initiation date (since). Returns the recalling company (entity-resolved where possible), classification, reason, product, and dates — a remediation and competitive-displacement trigger for quality and med-device sellers. openFDA public-domain records; observational. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | recall_initiation_date | report_date :asc|:desc. Default recall_initiation_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Recall initiated on/after this date (YYYY-MM-DD). | |
| state | No | Recalling-firm state code(s), CSV. | |
| offset | No | Rows to skip. | |
| status | No | Ongoing | Terminated | Completed (CSV). | |
| company | No | Recalling firm — suffix/punctuation-insensitive. | |
| entity_id | No | Resolved employer entity UUID. | |
| product_type | No | Drugs | Devices (CSV). | |
| classification | No | Class I | Class II | Class III (CSV). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It mentions 'observational' and 'public-domain records', indicating read-only nature, but lacks details on pagination, data freshness, or rate limits. Adequate but not thorough.
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 information-dense but well-structured, starting with a question and covering source, filters, outputs, and price. Slightly lengthy but each sentence adds value.
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 search tool with 10 parameters and no output schema, the description lists output fields, source, and pricing. It adequately prepares the agent for usage, though could detail return structure more.
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?
Parameters are fully covered in the schema (100% coverage). The description adds value by grouping filter types (e.g., 'by recalling firm, product type...') and summarizing the search capability, going beyond mere schema repetition.
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 clearly states it searches openFDA enforcement reports by recalling firm, product type, classification, etc., and lists the output fields. It distinguishes from sibling FDA tools like fda_approvals_drugs and fda_warningletters_search by focusing specifically on recalls.
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 when to use (for recall information) and lists available filters, but does not explicitly exclude cases or name alternatives. Context from sibling tool names provides differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fda_warningletters_searchAInspect
Which FDA-regulated firms have an open FDA warning letter? Search the FDA Warning Letters index by company, product area (drugs, devices, biologics, food, dietary-supplement, cosmetics, tobacco, veterinary), issuing office, subject (CGMP, adulterated, misbranded), open/closed status, or issue/posted date. Returns the recipient firm (entity-resolved where possible), issuing office, subject, and response/close-out dates — a documented compliance gap and remediation trigger. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | letter_issue_date | posted_date :asc|:desc. Default letter_issue_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Letter issue date on/after this date (YYYY-MM-DD). | |
| closed | No | false = open letters (no close-out) only; true = closed-out only. | |
| offset | No | Rows to skip. | |
| company | No | Recipient company name — suffix/punctuation-insensitive. | |
| subject | No | Subject / alleged-violation fragment. | |
| entity_id | No | Resolved employer entity UUID (pivots to business360). | |
| responded | No | true = a firm response letter is on record; false = none. | |
| posted_since | No | Posted date on/after this date (YYYY-MM-DD) — newly-published letters. | |
| product_area | No | drugs | devices | biologics | food | dietary-supplement | cosmetics | tobacco | veterinary | other (CSV). | |
| issuing_office | No | FDA center / district office fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, but description discloses return fields, pricing ($0.05/row), and the fact that it returns compliance gaps. Does not explicitly state read-only, but context implies it.
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 paragraph of ~100 words, front-loaded with key purpose, covers filters, return fields, and pricing efficiently. Could be slightly more structured but overall concise.
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?
With 12 parameters, no output schema, and no annotations, description provides a good overview: purpose, filters, return fields, and pricing. Missing pagination details but offset is in schema.
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%, so baseline is 3. Description provides overall context but does not add per-parameter meaning beyond schema descriptions.
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?
Description clearly states 'search the FDA Warning Letters index' with specific verb and resource, and lists available filters, distinguishing it from sibling FDA tools like approvals or recalls.
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?
No explicit guidance on when to use this tool versus alternatives, but the description implies its use for FDA warning letter data. Lacks 'when not to use' or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_business360AInspect
What do federal records show about this exact employer entity? The business360 dossier by entity UUID (from /v1/companies/search or /v1/business360/lookup): canonical identity plus per-source sections — OFLC visa filings, WHD wage enforcement, OSHA inspections/violations, EPA ECHO compliance, FMCSA carriers, LEIE/SAM exclusions — with match tiers, confidence, and per-source vintages disclosed. Public records; NOT a consumer report, no FCRA use. [price: $0.25/call]
| Name | Required | Description | Default |
|---|---|---|---|
| entityId | Yes | Employer entity UUID (path parameter), as returned by /v1/companies/search or a business360 lookup. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that the source is public records, not a consumer report (no FCRA use), mentions match tiers and confidence, and notes pricing ($0.25/call). This gives good transparency about the tool's nature and constraints.
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 two sentences long, each adding value: the first explains the tool's action and output sections, the second adds disclaimers and pricing. While a touch verbose, it remains efficient and front-loaded with key 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?
With one required parameter and no output schema, the description adequately summarizes the output sections (OFLC, WHD, OSHA, EPA, FMCSA, LEIE/SAM) and mentions confidence/vintages. It provides a solid high-level overview for an agent to decide whether to use this tool.
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?
The schema covers 100% of parameters, but the description adds meaningful context: the entityId is a UUID from specific search endpoints, and an example format is provided. This helps the agent understand where the value comes from and its required format 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?
The description clearly states it returns a 'business360 dossier' for an exact employer entity, specifying it compiles canonical identity and per-source sections from multiple federal databases. This distinguishes it from sibling tools like firmstanding_company_search (search) and firmstanding_business360_lookup (likely a different lookup).
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 tells the agent to use the entity UUID obtained from specific endpoints (/v1/companies/search or /v1/business360/lookup) and implies it is for a known entity. While it doesn't explicitly list when not to use or compare with siblings, the context of sibling tools (e.g., domain-specific tools for EPA, FAA) provides implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_business360_lookupAInspect
What do federal records show about this company, across every dataset at once? Flagship employer dossier by name + state: canonical identity from the entity graph, plus per-source sections — OFLC visa filings, WHD wage enforcement (back wages), OSHA inspections/violations (penalties), EPA ECHO facilities, FMCSA carriers, LEIE/SAM exclusion hits — match tiers and confidence disclosed. Public records, name/address-matched; NOT a consumer report, no FCRA use. [price: $0.25/call]
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Company name — legal suffixes and punctuation are normalized away ('Tyson Foods, Inc.' matches 'TYSON FOODS'). | |
| state | Yes | Two-letter state code the entity is keyed to. Example: 'AR'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavioral aspects: name/address matching, match tiers and confidence disclosed, public records nature, and pricing. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys purpose, sources, and caveats. It is front-loaded with the key use. Slightly verbose but well-structured for the information density.
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?
Given the tool has only 2 simple params and no output schema, the description provides sufficient context: what datasets are covered, matching methodology, confidence disclosure, and legal disclaimers. An agent can confidently select and invoke this tool.
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 coverage is 100%. The description adds context about name normalization (legal suffixes normalized away, case insensitive) and state being a two-letter code, which enhances understanding beyond the schema's brief examples.
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 clearly states it aggregates federal records across multiple datasets for a company, using name and state. It distinguishes itself from per-dataset sibling tools by being a 'flagship employer dossier' that provides a unified view.
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 explicitly says what the tool does (employer dossier by name+state), lists included data sources, and clarifies it is not a consumer report (no FCRA use). This helps an agent understand when to use it versus specialized tools like oflc_sponsor_dossier or osha inspections.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_company_searchAInspect
Which employers appear in federal enforcement and compliance records? Search 3.7M resolved employer entities by name (suffix/punctuation-insensitive, trigram-indexed), state, linked source (whd, osha, echo, oflc, fmcsa, leie, sam_exclusions), NAICS prefix, or source-count range. Returns entity IDs for the business360 dossier plus identity, address, and source/record counts. total_matched caps at 1000 — narrow when capped. Not a consumer report; no FCRA use. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Company name fragment — normalized before matching ('Swift Transportation Co. of Arizona, LLC' → 'SWIFT TRANSPORTATION'). Example: 'swift transportation'. | |
| sort | No | field:direction — source_count | record_count | last_seen. Default 'source_count:desc'. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV. Example: '3116' covers animal processing. | |
| state | No | Entity state code(s), CSV. Example: 'AZ'. | |
| offset | No | Rows to skip, for paging. | |
| source | No | Only entities with linked records in these sources (CSV): whd | osha | echo | oflc | fmcsa | leie | sam_exclusions. | |
| source_count_max | No | Maximum number of distinct federal sources the entity appears in. | |
| source_count_min | No | Minimum number of distinct federal sources the entity appears in (1-7). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description takes on full burden. It discloses name matching behavior (suffix/punctuation-insensitive, trigram-indexed), the 1000 cap, and that it is not a consumer report (no FCRA use). Pricing is also noted. Missing details on timeout or exact response structure, but overall informative.
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 concise (4 sentences), front-loaded with the purpose, and each sentence adds essential information: purpose, matching details, output, cap warning, and pricing. No redundant or missing parts.
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?
Given no output schema, the description sufficiently describes return fields (entity IDs, identity, address, source/record counts). It also covers the cap and pricing. Could be more complete with pagination behavior or data recency, but it is adequate for an agent to use correctly.
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 coverage is 100% with descriptions and examples for all 9 parameters. The description adds context beyond the schema, such as the matching normalization and the meaning of 'source'. This helps an agent select correct values.
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 opens with a clear question and states it searches 3.7M employer entities by name and various filters. It specifies the resource (federal enforcement and compliance records) and the action (search), distinguishing it from sibling tools like firmstanding_business360 which retrieves a specific dossier.
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 clear context: what entities are searched, what is returned, and a warning about the 1000 cap. It also notes the pricing model. However, it does not explicitly mention when to use this tool vs. alternatives such as firmstanding_business360_lookup or other search tools, though the purpose is distinct enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_feed_distressAInspect
Which businesses carry public-record distress markers? One observational row per subject across ten tracked marker types — WARN notice, Form 5500 participant drop, final filing, or Schedule H asset decline, IRS auto-revocation, SEC NT / 8-K / going-concern filings, FMCSA authority revocation, active enforcement case — with per-marker counts, dates, and details. Ticker/CIK-mapped where identifier-verified, basis disclosed. Counts as filed, never a score. NOT a consumer report, no FCRA use. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only subjects with a marker event dated on or after this date (YYYY-MM-DD). | |
| state | No | Subject state code(s), CSV. Some subjects carry no state (identified by EIN/CIK only). | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| marker | No | Only subjects carrying this marker key: warn_notice_180d | active_participants_drop_20pct_yoy | final_form5500_filing | irs_auto_revocation_1y | nt_late_filing_180d | form8k_distress_item_180d | going_concern_language_1y | fmcsa_authority_revocation_180d | active_enforcement_case. | |
| min_markers | No | Only subjects carrying at least this many distinct marker types (1-9). Default 1. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses key behavioral traits: returns one row per subject, includes counts, dates, and details, mentions data sources (WARN, Form 5500, etc.), and clarifies it is not a consumer report (no FCRA use). However, it does not discuss pagination behavior beyond listing the cursor parameter.
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 paragraph that front-loads the core purpose. It is information-dense but not overly verbose. Every sentence adds value, though it could be more structured with bullet points for clarity.
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?
Given the lack of an output schema, the description adequately explains what the tool returns: rows with per-marker counts, dates, and details. It also covers identifier mapping (ticker/CIK) and basis disclosure. The pricing note is a contextual bonus. No gaps remain for an agent to understand the tool's output.
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 coverage is 100% (every parameter has a description). The description adds context about marker types and output, but does not substantially enhance parameter meaning beyond the schema. For example, the 'marker' parameter's allowed values are already listed in the schema description, and the description merely restates them.
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 clearly states the tool's purpose: 'Which businesses carry public-record distress markers?' It lists the ten specific marker types and explains the output structure, distinguishing it from sibling tools like firmstanding_business360 or firmstanding_company_search by focusing solely on distress markers.
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 does not explicitly specify when to use this tool versus alternatives, nor does it provide exclusion criteria. It implicitly indicates its niche (distress markers) but lacks contrast with sibling tools or guidance on when to choose it over other firmstanding tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_feed_enforcementAInspect
Which employers were hit with new federal enforcement actions since a given date? Bulk feed of OSHA inspections (violated standards, penalties, abatement dates), EPA ECHO formal enforcement actions (SNC/HPV flags, penalties), and DOL WHD concluded wage cases (back wages, statutes) — flat rows, cursor-paginated up to 1000/page, each resolved to the FirmStanding entity graph where a match exists, with tier and confidence disclosed. Public records; NOT a consumer report, no FCRA use. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV. Example: '3116' covers animal processing. | |
| since | Yes | Include events dated on or after this date (YYYY-MM-DD). Required. | |
| state | No | Facility/employer state code(s), CSV. | |
| agency | No | Restrict to source agencies (CSV): osha | epa | whd. Default all three. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It details the types of records included, cursor pagination (up to 1000/page), entity graph matching with tier/confidence, and pricing. This is quite transparent, though it omits rate limits and authentication requirements.
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 concise and information-dense, covering agencies, data fields, pagination, entity matching, and legal disclaimer in a single sentence. It is front-loaded with the key question and contains no wasted words.
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?
Given the 6 parameters, full schema coverage, and no output schema, the description provides sufficient context: pagination behavior, default and max limits, entity matching, and source agencies. It is complete enough for an agent to use effectively.
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%, so the schema already documents each parameter. The description adds high-level context (e.g., 'since a given date') but does not significantly enhance individual parameter understanding beyond what the schema provides.
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 clearly states the tool provides a bulk feed of federal enforcement actions from OSHA, EPA, and DOL WHD with specific fields. It distinguishes from siblings like `firmstanding_screen_enforcement` and `firmstanding_feed_distress` by mentioning 'bulk feed' and the specific agencies.
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 starts with a question ('Which employers were hit with new federal enforcement actions since a given date?') that guides usage. It includes legal disclaimers (public records, not FCRA). While it does not explicitly state when not to use it or compare to siblings, the context is clear enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_screen_enforcementAInspect
Does this employer have federal enforcement history on file? One-call WHD + OSHA + EPA screen by company name and state: attested records_found verdict with per-source counts, severity totals (WHD back wages and penalties, OSHA current violation penalties, EPA ECHO 5-year penalties and SNC/HPV flags), most-recent action dates, and the latest records — with match tiers and confidence disclosed. Public records, name/address-matched; NOT a consumer report, no FCRA use. [price: $0.1/call]
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Company name — legal suffixes and punctuation normalized. | |
| state | Yes | Two-letter state code the employer is keyed to. Example: 'AR'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
In the absence of annotations, the description provides behavioral details: it uses public records, name/address-matched, discloses match tiers and confidence, and specifies the verdict and per-source counts. It does not mention side effects or authentication needs, but these are not critical for a read-only data lookup.
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 concise and well-structured, starting with a clear question, then detailing the scope, output fields, and a usage note. Every sentence adds value with no redundancy.
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?
Since there is no output schema, the description must explain the return values, and it does so thoroughly: per-source counts, severity totals, action dates, match tiers, and confidence. Combined with the schema for inputs, the description provides complete context for correct tool invocation.
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?
The input schema already has good descriptions (100% coverage). The description adds context: name should be normalized (legal suffixes and punctuation normalized), state is the employer's keyed state. This extra detail helps the agent understand parameter formatting 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?
The description clearly states the tool's purpose: to check if an employer has federal enforcement history (WHD, OSHA, EPA). It specifies the input (company name and state) and the output (counts, severity totals, etc.). The name and description distinguish it from siblings like firmstanding_screen_exclusions.
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 tells when to use: to screen an employer's enforcement history with a single call. It also notes it is not a consumer report and not for FCRA use. However, it does not explicitly compare to alternative tools or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_screen_exclusionsAInspect
Is this company on a federal exclusion or debarment list? One-call screen of HHS OIG LEIE and SAM.gov exclusions by normalized business name (state optional): attested records_found verdict, per-list hit and currently-active counts, and the matching records with exclusion type, agency, and dates — plus entity-linked hits with disclosed match confidence. Name-matched public records; NOT a consumer report, no FCRA-regulated use (employment/credit/tenancy). [price: $0.1/call]
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Business name to screen — legal suffixes and punctuation normalized ('Purdue Pharma, L.P.' matches 'PURDUE PHARMA'). | |
| state | No | Optional two-letter state code to narrow the screen. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: one-call screen, name normalization, per-list counts, records with details, match confidence, and public records nature. Without annotations, the description carries the full burden and is adequately transparent.
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?
Efficient single paragraph with front-loaded purpose, covering output, restrictions, and price. Could be slightly more structured but is concise and informative.
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?
Despite no output schema, the description details the return structure (verdict, counts, records) and confirms the tool's scope. Inputs are fully covered by schema. Complete for a straightforward query tool.
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 coverage is 100% and the description adds minimal value beyond the schema (e.g., mentions normalization but schema already states it). Baseline of 3 is appropriate.
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 clearly states the tool screens companies against federal exclusion and debarment lists (HHS OIG LEIE, SAM.gov) and distinguishes from siblings like ofac_screen_sanctions by specifying the lists and FCRA disclaimer.
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?
Provides a usage limitation (not for FCRA-regulated use) but does not explicitly compare to alternatives or state when to use this tool over similar ones like ofac_screen_sanctions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
firmstanding_stats_companiesAInspect
How big is the FirmStanding employer entity graph right now? Headline aggregates: resolved employer entities and how many appear in 2+ federal sources, states covered, record links by source system (whd, osha, echo, oflc, fmcsa, leie, sam_exclusions), and raw records on file per dataset. [price: $0.001/call]
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It discloses that the tool returns aggregate counts and mentions the call cost ($0.001/call). Since it has no parameters and is clearly a read-only statistics endpoint, the description sufficiently conveys the non-destructive nature. However, it does not explicitly state idempotency or side-effect absence.
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 remarkably concise: two sentences that front-load the core question and then enumerate specific aggregates. Every word serves a purpose, including the pricing note. There is no fluff or repetition.
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?
Given no output schema, the description adequately lists the key output elements (resolved entities, source coverage, record links, raw records). However, it does not specify the return format (e.g., JSON structure) or provide examples. For a simple stats endpoint, this is sufficient but could be slightly more formal.
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?
The input schema has zero parameters, so the description naturally doesn't need to explain parameter meaning. According to guidelines, baseline for 0 parameters is 4. The description adds value by detailing the output fields, which is more relevant than parameter semantics in this case.
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 clearly states the tool's purpose: providing aggregate statistics about the FirmStanding employer entity graph. It asks 'How big is the FirmStanding employer entity graph right now?' and enumerates the specific aggregates (resolved entities, sources coverage, record links, raw records). This distinguishes it from sibling tools like firmstanding_company_search that focus on individual companies.
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 usage for obtaining overall graph statistics but does not explicitly state when to use this tool versus alternatives. No guidance on when not to use or prerequisites is provided. The purpose is self-explanatory, but clarity on exclusion criteria is lacking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_carrier360AInspect
What does the complete FMCSA file show for this carrier, in one call? The carrier360 dossier by USDOT number: census identity, operating-authority records with status-change history and revocations, active + historical insurance filings, the safety rating and review on file, the SaferGrade score with its component breakdown, 24-month inspection/violation and crash summaries vs national OOS baselines, and a merged recent-events timeline of authority and insurance changes. [price: $0.25/call]
| Name | Required | Description | Default |
|---|---|---|---|
| usdot | Yes | USDOT number (path parameter). Example: 43838. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It notes pricing ($0.25/call) and states 'in one call', implying a single request. However, it does not disclose read-only nature, rate limits, or potential response size. The behavioral details are adequate but not exhaustive.
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?
Description is a single dense but informative sentence listing all data components. It is not overly verbose and covers key points efficiently. Minor improvement could be structuring as a bullet list, but current form is acceptable.
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?
Given no output schema, the description thoroughly enumerates return data sections (census, authority history, insurance, safety rating, SaferGrade breakdown, inspection/crash summaries, timeline). It omits some interpretation details but is sufficient for domain users. Sibling tools provide context for alternatives.
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?
Only one parameter (usdot) with schema description providing example and type. Description does not add significant meaning beyond the schema. Since schema coverage is 100% and parameter is straightforward, baseline score of 3 is appropriate.
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?
Description clearly states it returns a comprehensive FMCSA dossier for a carrier by USDOT number, listing specific data components (census identity, authority records, insurance, safety rating, SaferGrade, inspections, crashes). This distinguishes it from sibling tools like fmcsa_carrier_lookup or fmcsa_carrier_score which focus on individual aspects.
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?
Description implies this is the one-call complete file, suggesting use when a full picture is needed. While it does not explicitly list alternatives or exclusions, the sibling tools' names and this description provide enough context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_carrier_lookupAInspect
What does the FMCSA census record show for this USDOT number? Legal/DBA name, entity type, MC number, address, phone, fleet size (power units, drivers), operating status, safety rating, and MCS-150 details for one motor carrier — the registration-of-record lookup behind 'who is this carrier?' [price: $0.01/call]
| Name | Required | Description | Default |
|---|---|---|---|
| usdot | Yes | USDOT number (path parameter). Example: 80321. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It indicates a read-only lookup and mentions pricing, but does not discuss side effects, authentication, rate limits, or any other behavioral traits beyond that.
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?
Description is front-loaded with the main question, then lists fields and pricing. It is concise but slightly verbose with the list; still effective and 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?
For a single-parameter tool with no output schema, the description adequately explains what the tool does and what it returns. Missing error handling or no-result behavior, but overall complete for typical use.
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 coverage is 100% (usdot parameter described), but description adds value by explaining that the parameter is a USDOT number and what the tool will return (list of fields). This goes beyond the schema's description.
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 explicitly states it looks up FMCSA census record by USDOT number, lists specific fields returned (name, address, fleet size, etc.), and distinguishes from sibling tools like search or vet by focusing on registration-of-record details.
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 is for identifying a carrier by USDOT number but does not explicitly mention when to use this vs alternatives like fmcsa_carrier_search or fmcsa_carrier_vet. No exclusions or context for choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_carrier_scoreAInspect
What SaferGrade score do FMCSA safety records produce for this carrier, and which components drive it? Returns the 0-100 score with letter grade and confidence, plus the observed inputs: 24-month inspection and out-of-service totals, driver/vehicle OOS rates vs the national baseline, crash summary, and the FMCSA safety rating on file. [price: $0.05/call]
| Name | Required | Description | Default |
|---|---|---|---|
| usdot | Yes | USDOT number (path parameter). Example: 54283. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It clearly describes the output (score, grade, confidence, inputs) and includes pricing. Although it does not explicitly state read-only behavior, the nature of the tool (returning a score) implies no side effects. The description is transparent enough for a simple query tool.
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 extremely concise: two sentences that front-load the core purpose, followed by a detailed list of returned components and pricing. No redundant information exists.
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?
Given the simple input (single parameter) and no output schema, the description completely covers what the tool returns and how it behaves. Every component of the output is listed, making it easy for an agent to understand the tool's value.
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?
The input schema covers 100% of parameters (one required string usdot with examples and description). The description does not add additional meaning beyond what the schema already provides, leading to a baseline score of 3.
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 clearly states the tool returns the SaferGrade score (0-100) along with its components, using a specific verb ('returns') and resource ('score for this carrier'). The output details (letter grade, confidence, inputs) differentiate it clearly from sibling tools like fmcsa_carrier_lookup or fmcsa_carrier360.
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 usage for retrieving a carrier's safety score, but does not explicitly state when to use this tool versus alternatives like fmcsa_carrier360 or fmcsa_carrier_vet. The context is clear, but explicit guidance on when-not-to-use would improve the dimension.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_carrier_searchAInspect
Which FMCSA-registered carriers match a name, state, entity type, fleet-size range, operating status, or authority status? Trigram name search over 4.4M+ census records — find a carrier's USDOT number, shortlist carriers in a lane state, or screen brokers vs carriers. Up to 100 rows per call, largest fleets first; total_matched caps at 1000 (total_matched_capped=true means narrow your filters). [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Carrier legal or DBA name fragment, case-insensitive (trigram match). Example: 'knight transportation'. | |
| sort | No | field:direction — power_units | total_drivers | usdot. Example: 'power_units:desc'. | |
| limit | No | Max rows to return (default 25, cap 100). | |
| state | No | Physical-address state code(s), CSV. Example: 'TX,OK'. | |
| offset | No | Rows to skip, for paging. | |
| entity_type | No | carrier | broker | forwarder (CSV for multiple). | |
| power_units_max | No | Maximum fleet size in power units. | |
| power_units_min | No | Minimum fleet size in power units. | |
| authority_status | No | Only carriers with an operating-authority record in this status: Active | Pending | Inactive | Withdrawn. | |
| operating_status | No | A (active) | I (inactive) | P (pending), CSV for multiple. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It reveals trigram name search (case-insensitive), ordering by largest fleets first, a row cap of 100, total_matched cap of 1000, and pricing ($0.05/row). It also explains the meaning of total_matched_capped. This provides good behavioral insight, though auth and rate limits are not mentioned.
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 extremely concise: two sentences covering purpose, mechanism, use cases, limits, and pricing. Front-loaded with a question summarizing functionality, with no redundancy or unnecessary detail.
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?
Given the complexity of 10 parameters and no output schema, the description covers the essential aspects: what the tool does, key filters, default ordering, limits, and cap behavior. It does not describe the output fields, but the mention of 'carrier's USDOT number' implies an output expectation. It is largely complete for an agent to use correctly.
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?
The input schema has 100% coverage with descriptions and examples for all 10 parameters. The description adds some high-level context (e.g., trigram match for name, pricing per row related to limit) but does not significantly expand on individual parameter meanings. Baseline 3 is appropriate as schema already documents parameters well.
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 clearly states it is a search tool for FMCSA-registered carriers, using trigram name search over 4.4M+ records, with multiple filter criteria and specific use cases. It effectively distinguishes from siblings like fmcsa_carrier_lookup (single carrier lookup) and fmcsa_carrier360 (comprehensive view), as those are not search tools.
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 explicit use cases (find a carrier's USDOT number, shortlist carriers in a lane state, screen brokers vs carriers) and hints at when to narrow filters (when total_matched_capped is true). However, it does not directly compare to sibling tools, though the sibling names imply different purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_carrier_vetAInspect
Is this carrier's paperwork in order before I tender a load? One-call carrier vetting screen: FMCSA census record, operating-authority records and revocations, active insurance filings on file, SaferGrade score, and crash/out-of-service history vs the national baseline — everything a broker checks before onboarding, in a single response. [price: $0.05/call]
| Name | Required | Description | Default |
|---|---|---|---|
| usdot | Yes | USDOT number (path parameter). Example: 54283. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It lists what the tool returns (census, authority, insurance, score, history), implying it is a read-only screen. However, it does not explicitly state permissions, side effects, or whether it is read-only, making it adequate but not fully transparent.
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 with an embedded price note, which is slightly extraneous. It is front-loaded with the use case and efficiently conveys the tool's scope.
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 simple tool with one parameter and no output schema, the description thoroughly explains the tool's return value (five data categories). It fully satisfies the information need for an agent to invoke the tool correctly.
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 coverage is 100% with a description and example for the single 'usdot' parameter. The description adds no additional meaning beyond what the schema provides, so baseline 3 is appropriate.
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 clearly states the tool is for vetting a carrier before tendering a load, listing specific data points (FMCSA census, operating authority, insurance, SaferGrade, crash history). It distinguishes from sibling tools like carrier lookup or score by focusing on a comprehensive onboarding check.
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 opening question 'Is this carrier's paperwork in order before I tender a load?' explicitly indicates the primary use case. It does not discuss when not to use or mention alternatives, but the context is clear enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_feed_carriersAInspect
What does the full FMCSA carrier census look like, carrier by carrier, with authority and safety context attached? Bulk analytics feed in USDOT order: legal/DBA name, operating status, authority statuses on file, active insurance filings, safety rating, SaferGrade score, 24-month SMS inspection/out-of-service/crash summaries, fleet size, and address — flat rows, cursor-paginated up to 1000/page, filterable by state, minimum fleet size, or census add date. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| state | No | Physical-address state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| added_since | No | Only carriers added to the census on or after this date (YYYY-MM-DD) — the census carries no per-record modified date. | |
| min_power_units | No | Minimum fleet size (power units). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses cursor-based pagination, row limit, filtering capabilities, and pricing per row. It does not mention rate limits, default parameters, or error handling, but for a read-only feed tool, the disclosed behaviors are adequate. No annotations are present, so the description carries the full burden.
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 that efficiently conveys the purpose, data fields, pagination, and filters. It is front-loaded with a question that clarifies intent. However, the list of fields is somewhat lengthy within the sentence, reducing scanability slightly.
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?
Given the 5 parameters with full schema coverage and no output schema, the description covers the key aspects: what data is returned, pagination method, filters, and pricing. It lacks explicit mention of default row count (500 from schema) and error behavior, but these are minor gaps for a well-described feed tool.
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 coverage is 100%, but the description adds value by explaining the cursor's opaque nature, the meaning of added_since date field, and the cap of 1000 rows per page. It reinforces the filtering options with context relevant to the data feed.
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 clearly states the tool provides the full FMCSA carrier census with authority and safety context, listing the types of data included. It distinguishes from sibling tools by emphasizing 'bulk analytics feed' and cursor-pagination for large-scale retrieval. However, it does not explicitly differentiate from similar FMCSA tools like fmcsa_carrier_search.
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 usage for bulk analytics and enumerates filtering options, but lacks explicit guidance on when to use this tool versus alternatives. It does not mention when not to use it or provide context about alternatives among the FMCSA sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fmcsa_stats_carriersAInspect
How big is the FMCSA carrier dataset right now? Headline aggregates: total and active registered carriers, how many have a SaferGrade score and the grade distribution, carriers with inspection/crash history, and the current national driver/vehicle out-of-service baseline rates. [price: $0.001/call]
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It clearly states it returns aggregate statistics (not individual records), lists the data categories included, and mentions the cost. It does not explicitly say it's read-only, but the nature of 'headline aggregates' implies no side effects. A slight gap is not stating whether it refreshes or is cached.
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 extremely concise: a single sentence front-loaded with the core question, followed by a bullet list of outputs. Every phrase earns its place. The price note is a helpful addition without clutter.
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?
Given no parameters and no output schema, the description adequately explains what the tool returns. It covers key aggregates a user would expect. However, it could briefly mention the output format (e.g., JSON object) or if pagination is needed, though for a stats endpoint this is likely fixed. Still, it is sufficiently complete for a zero-parameter stats tool.
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?
The tool has zero parameters, so the schema already fully defines the input. The description does not need to add parameter meaning. Baseline of 4 is appropriate as there is no additional information required or provided.
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 starts with a clear question 'How big is the FMCSA carrier dataset right now?' and lists specific headline aggregates (total/active carriers, SaferGrade distribution, inspection/crash history, out-of-service rates). It immediately distinguishes from sibling tools that focus on individual carrier details, making the purpose unmistakable.
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 does not explicitly state when to use this tool versus alternatives. While the name 'stats' and sibling tools like 'fmcsa_carrier_search' imply it's for aggregate data, there is no direct guidance on when to choose this over other FMCSA tools or what conditions warrant its use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fsis_establishments_searchAInspect
Which meat, poultry, or egg plants operate in a market? Search the USDA FSIS Meat, Poultry & Egg Product Inspection Directory (every federally-inspected establishment) by company, state, city, activity (slaughter/processing), species, size, or inspection-grant date (since, for new plants). Returns the establishment (entity-resolved where possible), address, activities, and size — a food-safety seller's entire target universe, not just OSHA-hit plants. FSIS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City fragment. | |
| size | No | Very Small | Small | Large (CSV). | |
| sort | No | grant_date | establishment_name :asc|:desc. Default grant_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Inspection grant date on/after this date (YYYY-MM-DD) — surfaces newly-granted plants. | |
| state | No | State code(s), CSV. | |
| offset | No | Rows to skip. | |
| company | No | Establishment/company name — suffix/punctuation-insensitive. | |
| species | No | meat | poultry | egg (CSV). | |
| activity | No | Activity fragment (Slaughter, Processing, Egg Product, ...). | |
| entity_id | No | Resolved employer entity UUID (pivots to business360). | |
| slaughter | No | true = slaughter establishments only. | |
| processing | No | true = processing establishments only. | |
| establishment_number | No | FSIS establishment number(s), CSV (M=meat, P=poultry, G=egg, I=import). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description discloses key behavioral traits: returns entity-resolved establishments with address, activities, size; mentions price ($0.05/row); and states it's from FSIS public-domain records. It does not cover rate limits or modify behavior, but the read-only nature is implied.
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?
Three sentences efficiently convey purpose, return values, and source/price. Front-loaded with key information, no wasted words.
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?
Given 14 parameters and no output schema or annotations, the description covers purpose, return fields, and data source. It lacks explicit pagination details but is sufficient for a search tool. Could mention default sort or limit behavior.
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?
The input schema has 100% description coverage, so the baseline is 3. The description summarizes searchable fields but does not add new semantic meaning beyond what the schema already provides for individual parameters.
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 clearly states the verb 'Search' and the resource 'USDA FSIS Meat, Poultry & Egg Product Inspection Directory' with specific searchable fields. It distinguishes itself from sibling tools like fsis_recalls_search by focusing on establishments rather than recalls.
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 context on when to use ('which plants operate in a market') and contrasts with 'not just OSHA-hit plants', implicitly guiding the agent away from more specialized search tools. However, it does not explicitly mention sibling tools or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fsis_recalls_searchAInspect
Which food companies have an FSIS meat/poultry/egg recall? Search USDA FSIS recall and public-health-alert records by recalling firm, classification (Class I/II/III or Public Health Alert), reason (allergens, contamination, misbranding), state, active status, outbreak link, or recall date (since). Returns the recalling firm (entity-resolved where possible), classification, reason, product, and dates — a remediation, sanitation, and displacement trigger for food-safety sellers. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | recall_date | last_modified_date :asc|:desc. Default recall_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Recall on/after this date (YYYY-MM-DD). | |
| state | No | Distribution state code(s), CSV. | |
| active | No | true = currently-active recall notices only. | |
| offset | No | Rows to skip. | |
| reason | No | Reason fragment (Unreported Allergens, Product Contamination, Misbranding, ...). | |
| company | No | Recalling firm — suffix/punctuation-insensitive. | |
| outbreak | No | true = recalls related to an outbreak. | |
| entity_id | No | Resolved employer entity UUID. | |
| recall_type | No | Active Recall | Closed Recall | Public Health Alert (CSV). | |
| classification | No | Class I | Class II | Class III | Public Health Alert (CSV). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Describes return fields ('recalling firm, classification, reason, product, dates') and mentions use case and pricing. However, lacks disclosure on authorization, rate limits, or potential side effects.
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 paragraph front-loaded with purpose, listing criteria, return fields, and use case. Not overly verbose; each part adds value. Could be slightly more 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?
For a search tool with no output schema, description covers key inputs, outputs, and use case. Minor gaps: pagination details (limit/offset) not mentioned, and no error handling or output format hints.
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 coverage is 100% with detailed descriptions and examples for all 12 parameters. The description adds minimal new semantic meaning beyond summarizing filter capabilities. Baseline 3 is appropriate.
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?
Description starts with a clear question and states 'Search USDA FSIS recall and public-health-alert records' with specific resource type (meat/poultry/egg) and domain (FSIS). It is distinct from sibling tools like fsis_establishments_search.
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?
Lists many filter criteria (firm, classification, reason, state, active, outbreak, date) and states what it returns. Does not explicitly exclude cases or mention alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gateway_healthAInspect
Is the Govparse Agent Gateway up, and which product datasets does it front? Returns a signed _meta attestation proving the payment-to-attestation pipeline end to end. [price: $0.001/call]
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description fully bears the burden. It explicitly discloses that the tool returns a signed attestation and mentions the price ($0.001/call). It does not claim any destructive side effects, and for a health check, this is sufficient transparency. However, it could explicitly state it is read-only or non-mutating, preventing full marks.
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 extremely concise—two sentences that front-load the core purpose (health check, datasets) and add the key behavioral detail (attestation) and cost. Every sentence serves a clear purpose without redundancy.
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?
Given the tool has no parameters, no output schema, and is a simple health check, the description covers all necessary context: what it does, what it returns (attestation), and cost. It is complete for its complexity.
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?
The tool has zero parameters, and the schema description coverage is 100% (no parameters to describe). According to guidelines, baseline for 0 params is 4. The description adds no parameter information, but none is needed.
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 clearly states the tool checks if the Govparse Agent Gateway is up and identifies fronting datasets. It uses the question form to convey purpose and the mention of 'signed _meta attestation' specifies what is returned. No sibling tool serves a similar health-check function, so it is well-differentiated.
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 is for verifying gateway status and pipeline integrity, but it does not explicitly state when to use it versus alternatives or when not to use it. Given no sibling tools overlap, the implicit guidance is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_leadsAInspect
Get the actual B2B leads for a Parse: the matching companies and the public-record events that flagged them (real rows, including any free native contacts on the source record). PAID, priced PER LEAD RETURNED — connect with your API key (metered key billed per lead, or a SaaS key covered by your plan's lead entitlement) or pay keyless with an x402 USDC payment on Base or Solana (prepaid for up to limit leads). Compose the Parse with build_parse first, then pass its parse here.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 25, max 100). | |
| parse | No | Alternatively, the `parse` object returned by build_parse — replays the exact composed intent so a preview and its paid pull match. | |
| query | No | OPTIONAL value-prop LABEL only (what you sell) — it does NOT select the Parse and is never inferred. The Parse is composed ONLY from an explicit selection: a `preset_id`, or `target_entity` + `buying_moments`. | |
| offset | No | Row offset for paging (default 0). | |
| states | No | Two-letter US state codes to scope to; empty = nationwide. | |
| industry | No | An industry slug from list_industries (e.g. "freight-factoring", "pharma-sales") — scopes/labels the pick. Not a selector on its own. | |
| preset_id | No | Alternatively, a curated-Parse or preset id (from list_industries) to compose a proven Parse. | |
| attributes | No | Ideal-customer descriptors, e.g. ["small / emerging", "multi-location"]. | |
| target_entity | No | Structured pick: the entity you SELL TO. Taken verbatim (never guessed), so a pharma-brand seller can't be mis-targeted onto physicians. | |
| buying_moments | No | Structured pick: library template ids (buying-moment ids) from build_parse/list_industries output. Each maps to a real signal. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and meets it well. It discloses the tool is PAID and priced per lead returned, explains the payment methods (API key or x402 USDC prepaid up to `limit`), clarifies that `query` alone does not select a Parse, and explicitly states it returns 'real rows' rather than a preview. This is high-value behavioral context beyond the schema.
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 three sentences with no filler: it front-loads the purpose, then covers cost/payment, then gives the workflow prerequisite. Every sentence contributes essential information, making it appropriately sized and 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?
For a tool with 10 parameters, no annotations, and no output schema, the description provides enough context for an agent to understand what to expect: actual companies, events, and contacts. It also explains the prerequisite workflow and pricing model. The schema covers all parameter details. It lacks an explicit return schema or pagination behavior, but the given context is sufficient for decision-making.
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% with detailed explanations for all 10 parameters, which sets a baseline of 3. The description adds useful semantics by linking `limit` to prepayment ('prepaid for up to `limit` leads') and by clarifying the role of the `parse` parameter in the workflow ('pass its `parse` here'). These are meaningful additions 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?
The description clearly states the tool's verb and resource: 'Get the actual B2B leads for a Parse'. It specifies what the results include ('matching companies and the public-record events that flagged them, including any free native contacts') and distinguishes itself from the prerequisite build_parse by framing the workflow ('Compose the Parse with build_parse first, then pass its `parse` here').
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 gives an explicit usage workflow: build the Parse first, then pass its `parse` object. It also explains payment options (API key or USDC) and that the tool is paid per lead. However, it does not explicitly state when not to use this tool or mention alternatives beyond build_parse, such as using preset_id or list_industries directly, which are covered in the schema but not in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_award_searchAInspect
Who has the government actually paid, for what, and how much? Search USAspending federal award history (contracts and assistance) by recipient name or UEI, awarding agency, NAICS prefix, CFDA number, amount range, and action-date window — competitor award research, incumbent lookup before a recompete, and grant-winner analysis in one call. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| uei | No | Recipient Unique Entity Identifier (SAM UEI), exact match. | |
| cfda | No | CFDA / Assistance Listing number, exact match (assistance awards). | |
| kind | No | contract | assistance (grants, loans, direct payments). CSV for both. | |
| sort | No | field:direction — amount | action_date. Default 'amount:desc'. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV. | |
| agency | No | Awarding agency or sub-agency name fragment. Example: 'defense'. | |
| offset | No | Rows to skip, for paging. | |
| recipient | No | Award recipient name fragment. Example: 'lockheed'. | |
| amount_max | No | Maximum award amount in USD. | |
| amount_min | No | Minimum award amount in USD. | |
| awarded_after | No | Action date on or after (YYYY-MM-DD). | |
| awarded_before | No | Action date on or before (YYYY-MM-DD). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses pricing ($0.05/row) and the 'kind' parameter accepts 'contract' or 'assistance' with CSV for both. However, it does not mention behavior like result limits, pagination details beyond schema (offset/limit), or what happens with empty results.
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 paragraph that hooks with a question, then lists parameters and use cases, and ends with pricing. It is reasonably concise but slightly verbose; it could be tightened by removing the hook or merging sentences.
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 tool with 13 parameters and no output schema, the description provides sufficient context to understand the tool's purpose, searchable fields, and typical use cases. It is adequate without being exhaustive.
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 coverage is 100% with descriptions and examples for all parameters. The description adds overarching context (e.g., 'competitor award research') but does not add new meaning to individual parameters beyond what the schema already provides.
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 ('Search') and resource ('USAspending federal award history'), clearly distinguishing from sibling tools like 'govcon_opportunity_search' (opportunities) and 'govcon_subaward_search' (sub-awards). It lists specific search dimensions (recipient, agency, NAICS, etc.) and use cases (competitor research, incumbent lookup, grant-winner analysis).
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 explicitly mentions three use cases (competitor award research, incumbent lookup, grant-winner analysis) and implies the tool covers both contracts and assistance. However, it does not explicitly state when to use alternatives or provide exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_feed_awardsAInspect
Which companies just won federal money? Bulk feed over USAspending prime awards (contracts + assistance), newest-first by action date — a funded-growth signal for the awardee. Flat rows, cursor-paginated up to 1000/page, filterable by NAICS, awarding agency, minimum amount, award kind, or since. Each row carries the awardee, agency, award amount (with a banded size bucket), NAICS, dates, and UEI. Observational public records as filed. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | contract | assistance (grants, loans, direct payments). CSV for both; default both. | |
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV. Example: '5415' covers IT services. | |
| since | No | Only awards with an action date on or after this date (YYYY-MM-DD). | |
| agency | No | Awarding agency or sub-agency name fragment. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| min_amount | No | Minimum award amount in USD. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden and does well: it discloses ordering (newest-first), pagination (cursor-based up to 1000/page), filtering options, output fields, and even pricing ($0.05/row). It lacks details on data freshness or update frequency, hence not a 5.
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 packed with information and front-loaded with the purpose ('Which companies just won federal money?'). It efficiently covers purpose, pagination, filters, output, and cost. Could be slightly more concise but current length is justified.
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?
Given the tool's complexity (7 optional params, no output schema), the description is fairly complete: it explains pagination, filters, output fields, and pricing. Lacks error handling or rate limit info, but for a feed tool with cursor pagination it is adequate.
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 coverage is 100% with descriptions for all 7 parameters. The description summarizes filterable fields (NAICS, agency, min_amount, kind, since) but adds no significant new meaning beyond the schema's existing descriptions. Baseline 3 is appropriate.
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 clearly states the tool provides a bulk feed of USAspending prime awards, newest-first, with specific filters and output fields. It distinguishes itself from sibling tools like govcon_award_search (search) and govcon_feed_subawards (subawards) by focusing on prime awards as a funded-growth signal.
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 usage for monitoring recent awards ('Which companies just won federal money?') and specifies it's a bulk feed with cursor pagination. While not explicitly stating when not to use, the context from sibling names (e.g., govcon_award_search for specific details) provides sufficient guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_feed_subawardsAInspect
Which companies just received a federal subaward — and which are getting their FIRST one? Bulk feed over USAspending subawards (the File F prime→sub cascade), newest-first by action date: sub-recipient, prime, agency, amount (banded), NAICS, and date. new_only isolates first-time subawardees (no prime award on record) — the new-to-govcon growth signal. Flat rows, cursor-paginated up to 1000/page, filterable by state, NAICS, agency, minimum amount, or since. Observational public records as filed. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV. | |
| since | No | Only subawards with an action date on or after this date (YYYY-MM-DD). | |
| state | No | Place-of-performance state code(s), CSV. | |
| agency | No | Awarding agency or sub-agency name fragment. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| new_only | No | true = only first-time subawardees (sub-recipients with NO prime award on record). | |
| min_amount | No | Minimum subaward amount in USD. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description fully bears the burden. It discloses the observational nature ('as filed'), pricing ($0.05/row), pagination (cursor, up to 1000/page), and filtering options. It does not explicitly state read-only or auth requirements, but the pricing and public record mention strongly imply it's a read operation.
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 paragraph but front-loads the core value proposition ('Which companies just received...') before detailing attributes. It is information-dense without being overly verbose, though it could be slightly more structured for skimmability.
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?
Without an output schema, the description lists the key fields returned (sub-recipient, prime, agency, amount banded, NAICS, date) and explains pagination and filtering. It provides sufficient context for an AI agent to understand the tool's behavior and output shape, though exact field names and data types are missing.
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?
All 8 parameters are described in the input schema (100% coverage), so baseline is 3. The description adds conceptual value by explaining new_only as 'first-time subawardees' and the meaning of cursor pagination, enhancing understanding beyond the schema alone.
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 clearly states the tool provides a bulk feed of federal subawards from USAspending, identifying both current and first-time sub-recipients. It distinctively describes the scope and fields returned, differentiating from sibling tools like govcon_feed_awards (prime awards) and govcon_subaward_search.
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 usage for bulk subaward discovery and filtering, including new_only for first-time subawardees. While it does not explicitly contrast with sibling tools, the context of 'feed' versus 'search' and the mention of cursor pagination give clear signals for expected use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_opportunity_detailAInspect
What are the full details of this federal opportunity? Complete record for one SAM.gov contract notice (by notice ID) or Grants.gov opportunity (by opportunity ID or number): solicitation number, type, set-aside, NAICS, place of performance, response deadline, award floor/ceiling, eligibility, description, and the official link. [price: $0.01/call]
| Name | Required | Description | Default |
|---|---|---|---|
| noticeId | Yes | SAM.gov notice ID, or Grants.gov opportunity ID / opportunity number (path parameter). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions a price of $0.01/call, but does not explicitly state read-only behavior, auth needs, or rate limits. The context implies it is a read operation, but transparency is moderate.
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 concise, front-loaded with a natural language question, and includes all essential information in two sentences with no wasted words.
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?
Given the tool has one parameter and no output schema, the description adequately lists the fields returned. However, it does not describe the output format or structure, which is acceptable but could be improved.
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?
The schema covers 100% of parameters with description and examples. The description adds value by clarifying that noticeId can be a SAM.gov notice ID or a Grants.gov opportunity ID/number, which is not in 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?
The description clearly states it retrieves full details of a federal opportunity, specifying the sources (SAM.gov and Grants.gov) and listing the fields included. It distinguishes from sibling tools like govcon_opportunity_search by focusing on a single record by ID.
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 tells when to use this tool: when you have a specific notice or opportunity ID and want complete details. It implies not for searching, but does not explicitly mention alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_opportunity_searchAInspect
What federal contract solicitations and grant opportunities can my business bid on right now? Unified search over SAM.gov contract opportunities and Grants.gov postings: keyword, awarding agency, NAICS prefix, set-aside (SBA, 8A, WOSB, SDVOSBC...), place-of-performance state, and posted/deadline date windows. One call answers 'find open federal money that fits us'. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Keyword in the opportunity title. Example: 'cybersecurity'. | |
| kind | No | contract | grant (CSV for both; default both). | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV — contracts only. Example: '5415' covers all IT services. | |
| state | No | Place-of-performance state code(s), CSV — contracts only. | |
| agency | No | Awarding department/agency name fragment. Example: 'defense'. | |
| offset | No | Rows to skip, for paging. | |
| setaside | No | Set-aside code(s), CSV — contracts only: SBA, 8A, WOSB, SDVOSBC, HZC... | |
| posted_after | No | Posted/open date on or after this date (YYYY-MM-DD). | |
| deadline_after | No | Response/close deadline on or after this date (YYYY-MM-DD). | |
| deadline_before | No | Response/close deadline on or before this date (YYYY-MM-DD). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It mentions the source (SAM.gov, Grants.gov) and pricing, but does not disclose limitations, rate limits, or behavior on no results. It adequately describes what the tool does but lacks deeper behavioral context.
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, information-dense sentence with a business-focused opening and all key filters enumerated. It includes pricing concisely. No wasted words, but the sentence is somewhat long, bordering on dense.
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?
With 11 parameters and no output schema, the description explains the tool's purpose and inputs well but does not describe the output format or structure. For a search tool, users might need to know what fields are returned. Lacks information on result details.
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 coverage is 100% with descriptions and examples. The description lists filters in narrative form but adds minimal new information beyond the schema. Baseline 3 is appropriate; the description does not significantly compensate beyond what's already in the input 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?
The description starts with a clear business question and states it's a unified search over SAM.gov contract opportunities and Grants.gov postings. It lists all major filters, distinguishing it from sibling tools like govcon_award_search and govcon_opportunity_detail.
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 gives a clear use case: 'find open federal money that fits us'. It implies when to use this tool (when searching for open opportunities) but does not explicitly state when not to use it or mention alternatives. However, the purpose is distinct enough from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_stats_opportunitiesAInspect
How much open federal money is in the dataset right now? Headline aggregates: active SAM.gov contract opportunities (and how many still have an open deadline), Grants.gov opportunities by status (posted vs forecasted), and USAspending award records on file with their total dollar amount. [price: $0.001/call]
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only describes the tool's output, not behavioral traits like read-only nature, rate limits, or effects on data. As a stats tool, it's clearly non-destructive, but this is implicit rather than stated.
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, well-structured sentence that front-loads the purpose and covers the key outputs. The price note is appended without clutter. Every part is informative and concise.
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?
Given no parameters and no output schema, the description adequately covers the tool's function by listing the three aggregate categories. It could mention specific metrics (e.g., counts, dollar amounts) but already specifies 'active opportunities', 'open deadline', 'status', and 'total dollar amount', which is sufficient for a stats tool.
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?
The input schema has zero parameters with 100% schema description coverage, so the baseline is 4. The description adds context about what the tool returns (three categories of aggregates), which is useful since there are no parameters to explain.
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?
Description clearly specifies it provides headline aggregates of open federal money, including active SAM.gov contract opportunities, Grants.gov opportunities by status, and USAspending award records. It uses a specific verb ('aggregates') and resource ('open federal money'), and distinguishes from sibling tools like govcon_opportunity_search and govcon_opportunity_detail which focus on individual records.
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 use for high-level overviews ('How much open federal money...'), but does not explicitly state when to use this tool over siblings like govcon_opportunity_search. No when-not-to-use or alternative guidelines are provided, leaving the agent to infer context from the tool's function.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
govcon_subaward_searchAInspect
When a prime wins federal work, who does it flow subcontracts and subgrants down to? Search USAspending subawards (File F prime → sub cascade) by sub-recipient or prime name/UEI, prime award id, awarding agency, NAICS, PSC, subaward type (contract/grant), place-of-performance state, amount, or action date. Set new_subawardee=true for first-time subawardees — subs with NO prime award on record, coming up through subcontracts (a bonding/staffing/lending/teaming lead). Public federal records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| psc | No | Product/Service Code(s), CSV — exact. | |
| sort | No | field:direction — amount | action_date. Default 'action_date:desc'. | |
| type | No | contract | grant (sub-contract vs sub-grant). CSV for both. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV. Example: '5415' covers all IT services. | |
| state | No | Place-of-performance state code(s), CSV. | |
| agency | No | Awarding agency or sub-agency name fragment. Example: 'navy'. | |
| offset | No | Rows to skip, for paging. | |
| sub_uei | No | Sub-recipient Unique Entity Identifier (SAM UEI), exact match. | |
| new_since | No | Sub-recipient's FIRST observed subaward on or after this date (YYYY-MM-DD). | |
| prime_uei | No | Prime recipient Unique Entity Identifier (SAM UEI), exact match. | |
| amount_max | No | Maximum subaward amount in USD. | |
| amount_min | No | Minimum subaward amount in USD. | |
| awarded_after | No | Subaward action date on or after (YYYY-MM-DD). | |
| sub_recipient | No | Sub-recipient (subcontractor/subgrantee) name fragment. | |
| awarded_before | No | Subaward action date on or before (YYYY-MM-DD). | |
| new_subawardee | No | true → only first-time subawardees: subs with NO prime award on record. | |
| prime_award_id | No | Prime award PIID / FAIN, exact match — all subs under one prime. | |
| prime_recipient | No | Prime recipient name fragment. Example: 'lockheed'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description bears the transparency burden. It mentions public records and pricing but does not disclose result format, pagination behavior beyond limits, or error scenarios.
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 detailed but not overly verbose; it front-loads the purpose and organizes parameters logically. Minor redundancy in examples could be trimmed.
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?
Given 19 parameters and no output schema, the description covers all inputs with examples and clarifications. It lacks return value details but is otherwise thorough for a search tool.
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?
With 100% schema coverage, baseline is 3. The description adds meaningful context: explains CSV usage, prime vs sub terminology, and new_subawardee semantics, enhancing parameter understanding 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?
The description clearly states the tool searches USAspending subawards, specifying the data source (File F prime → sub cascade) and distinguishing it from sibling tools like govcon_award_search by focusing on subawards.
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 extensive parameter guidance with examples and explains specific use cases (e.g., new_subawardee for first-time subawardees). However, it lacks explicit 'when not to use' or direct comparisons to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hcris_cost_reports_searchAInspect
What does a hospital's Medicare cost report show for staffing? Search the flattened HCRIS S-3 (CMS 'Hospital Provider Cost Report') by state, CCN, name, fiscal year, control_type, or min_beds. Returns FTE employees, beds, discharges, salaries, contract labor, plus computed FTE-per-bed and FTE-per-1k-discharges staffing ratios. CMS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| ccn | No | Provider CCN(s), CSV. | |
| name | No | Hospital name fragment. | |
| sort | No | fte_employees | number_of_beds | total_discharges | fiscal_year :asc|:desc. | |
| year | No | Fiscal year(s), CSV. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Hospital state code(s), CSV. | |
| offset | No | Rows to skip. | |
| min_beds | No | Minimum number of beds. | |
| control_type | No | Type of control fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It reveals the read-only nature (search) and mentions pricing and public-domain source. However, it does not disclose the cap on returned rows (limit default 25, max 100) or pagination behavior, which are important for agent expectations.
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 two sentences plus a pricing tag, front-loaded with a engaging question. It efficiently conveys data source, filters, outputs, and cost. The opening question, while slightly informal, does not waste space. Could be slightly tighter by removing the question, but it's still effective.
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?
Given 9 optional parameters and no output schema, the description covers the key filters and outputs but omits details on sorting, pagination, and default behavior. It mentions limit but does not explain offset or sort semantics. Adequate but not complete for complex queries.
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 coverage is 100%, so baseline is 3. The description adds value by listing filterable fields and noting computed outputs, but it does not elaborate on individual parameter syntax or constraints beyond what the schema already provides.
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 clearly identifies the tool as searching HCRIS S-3 cost reports for staffing metrics. It specifies the data source, available filters (state, CCN, name, etc.), and the exact outputs (FTE, beds, ratios), distinguishing it from generic hospital data tools.
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 clear context: it searches flattened HCRIS S-3 records by specified filters. It does not explicitly contrast with siblings like hcris_staffing_decline_search, but the specificity (returning computed ratios) implies its use case for staffing analysis. Lacking explicit when-not guidance prevents a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hcris_staffing_decline_searchAInspect
Which hospitals cut staffing year-over-year? Compares each CCN's latest HCRIS fiscal year to the prior on a staffing ratio (metric=fte_per_bed default, or fte_per_discharge) and returns those whose ratio DROPPED. Filter by state, min_pct_drop, year, ccn, name, control_type, min_beds. Returns latest/prior ratio, delta and pct_change — an understaffing tell. CCN joins CMS timely-care. CMS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| ccn | No | Provider CCN(s), CSV. | |
| name | No | Hospital name fragment. | |
| year | No | Restrict the LATEST fiscal year(s) compared, CSV. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Hospital state code(s), CSV. | |
| metric | No | fte_per_bed (default) | fte_per_discharge. | |
| offset | No | Rows to skip. | |
| min_beds | No | Minimum beds in the latest year. | |
| control_type | No | Type of control fragment. | |
| min_pct_drop | No | Minimum YoY % drop in the ratio. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explains the comparison logic (latest vs prior year), the metric options, filter parameters, and return fields (delta, pct_change). It also notes the dataset provenance (CMS public-domain) and joinability with CMS timely-care. Minor ambiguity remains about how 'latest' and 'prior' are determined across multiple fiscal years.
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 extremely concise: two focused sentences plus a price note. Every word adds value, starting with a compelling question. No redundancy.
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?
Given 10 parameters and no output schema, the description adequately explains the comparison logic, filter capabilities, and return fields. It could clarify edge cases (e.g., missing prior year data) but overall provides sufficient context for an AI agent to use the tool correctly.
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 coverage is 100%, providing a baseline of 3. The description adds value by explaining the default metric (fte_per_bed) and alternative (fte_per_discharge), how parameters like min_pct_drop filter results, and the output fields (latest/prior ratio, delta, pct_change). This contextualizes parameters beyond their schema descriptions.
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 ('cut staffing year-over-year') and resource ('HCRIS staffing ratio'), clearly distinguishing it from siblings like 'hcris_cost_reports_search' which deals with cost reports rather than staffing declines.
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 states the tool is for finding hospitals with staffing declines and lists filter parameters. While it implies when to use, it does not explicitly state when not to use or compare with alternatives. However, the context of sibling tools makes the usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hrsa_hpsa_searchAInspect
Where has the federal government designated a health-professional shortage? Search HRSA HPSAs by state, county, discipline (Primary Care | Dental Health | Mental Health), designation type, status, minimum HPSA score (0-26, higher = worse), population type, rural-only, or designated-since date. Returns the designation, score, geography, provider-to-population ratio, and shortage FTE — the buying moment for clinician-staffing, telehealth, and workforce vendors. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | score | designation_date | shortage_fte :asc|:desc. Default score:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| rural | No | true = rural / partially-rural only; false = non-rural. | |
| since | No | Designated on or after this date (YYYY-MM-DD). | |
| state | No | Primary state/territory code(s), CSV. | |
| county | No | County name fragment. | |
| offset | No | Rows to skip. | |
| status | No | Designated | Proposed for Withdrawal | Withdrawn (CSV). | |
| hpsa_id | No | Exact HPSA ID. | |
| min_score | No | Minimum HPSA score (0-26, higher = worse). | |
| discipline | No | Primary Care | Dental Health | Mental Health (CSV). | |
| population_type | No | Population-type fragment (Low Income, Migrant Farmworker...). | |
| designation_type | No | Designation type fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses pricing ($0.05/row), output fields, and that this is a search tool. Does not mention rate limits or auth, but reasonable for a public data source.
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?
Three concise sentences, front-loaded with purpose, lists key filters, and ends with value proposition. No wasted words.
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?
Describes output fields and pricing, which complements the 13-parameter schema. Lacks discussion of pagination handling beyond limit/offset, but sufficient for a search tool with no output schema.
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 coverage is 100%, so baseline is 3. Description adds marginal value by explaining the buying moment and output fields, but does not add new parameter-level semantics beyond what's in 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?
Clearly states the tool searches HRSA HPSAs with specific filters. Uses a question to frame the purpose and lists key parameters, distinguishing it from the sibling 'hrsa_mua_search' which focuses on medically underserved areas.
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?
Provides context for use (clinician-staffing, telehealth, workforce vendors) and lists output fields. Does not explicitly state when not to use or name alternatives, but the use case is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hrsa_mua_searchAInspect
Which areas and populations has HRSA designated Medically Underserved (MUA/P)? Search by state, county, status, designation type, MUA/P id, maximum IMU score (0-100, LOWER = more underserved), or designated-since date. Returns the service area, IMU score, geography, and dates — the safety-net / FQHC territory for staffing, telehealth, and access programs. HRSA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | imu_score | designation_date :asc|:desc. Default imu_score:asc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Designated on or after this date (YYYY-MM-DD). | |
| state | No | State/territory code(s), CSV. | |
| county | No | County name fragment. | |
| mua_id | No | Exact MUA/P ID. | |
| offset | No | Rows to skip. | |
| status | No | Designated | Withdrawn (CSV). | |
| max_imu | No | Maximum IMU score (0-100, LOWER = more underserved). | |
| designation_type | No | Designation type fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description explains it is a query tool returning specific fields and mentions price per row. It does not declare read-only nature or potential side effects, but the context implies no destructive actions.
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 concise (two sentences) and front-loaded, immediately stating the tool's purpose. Every sentence adds value, including pricing 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?
With 10 parameters and no output schema, the description mentions key return fields (service area, IMU score, geography, dates) and provides business context. It could be more complete by listing all return fields, but is adequate.
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?
All parameters are described in the input schema with examples. The description adds value by explaining IMU score meaning (LOWER = more underserved) and date format, going 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?
The description clearly states the tool searches HRSA Medically Underserved Areas/Populations (MUA/P) and lists searchable fields. It distinguishes from sibling hrsa_hpsa_search by focusing on MUA/P data.
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 specifies searchable criteria and return fields, and mentions use cases (safety-net / FQHC territory). However, it lacks explicit exclusions or comparisons to alternatives like hrsa_hpsa_search, which would improve guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_industriesAInspect
Discover ParseData's industries and their curated, ready-made Parses (each with a plain-language ELI12 explanation and an id you can pass to build_parse/get_leads). FREE.
| Name | Required | Description | Default |
|---|---|---|---|
| industry | No | An industry slug to return in full; omit for the whole list. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral traits. It mentions the tool is 'FREE' but does not disclose potential side effects, permissions needed, rate limits, or behavior when the optional parameter is omitted. The description adds minimal behavioral insight beyond the schema.
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, concise sentence that front-loads the verb 'Discover' and includes all essential information. Every part is relevant, and the structure is efficient.
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?
Given the tool's simplicity (one optional parameter, no output schema), the description is adequate but leaves gaps. It explains what the tool returns but does not detail response format, pagination, or error handling. An output schema would improve completeness.
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 coverage is 100% with a single parameter fully described. The description does not add additional meaning to the parameter itself beyond the schema. The mention of response content (ELI12 explanation, id) is useful but does not pertain to parameter semantics.
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 clearly states the tool's purpose: to discover ParseData's industries and their associated curated Parses. It includes specific details about each parse (plain-language ELI12 explanation and an id for further use), distinguishing it from sibling tools like build_parse and get_leads.
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 that this tool is a starting point for discovering industries before using build_parse/get_leads, but it does not explicitly state when to use it or provide comparisons to alternatives. No exclusion criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
msha_mines_searchAInspect
Which mines and quarries operate in a market, and who runs them? Search the MSHA Mines data set — every coal and metal/non-metal mine under MSHA jurisdiction (NAICS-21 operators that are OSHA-exempt and invisible elsewhere) — by operator, mine name, state, county, commodity, canvass, coal_metal, mine type, status, active-only, or status date (since). Returns the mine, its operator (entity-resolved) and controller, commodity, employees, and status. MSHA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | status_dt | mine_name | employees :asc|:desc. Default status_dt:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Current-status date on/after this date (YYYY-MM-DD) — surfaces newly-statused mines. | |
| state | No | State code(s), CSV. | |
| active | No | true = currently-active mines only. | |
| county | No | County name fragment. | |
| offset | No | Rows to skip. | |
| status | No | Mine status (Active | Abandoned | Intermittent | Temporarily Idled | NonProducing), CSV. | |
| canvass | No | Primary canvass (Coal | M/NM | Metal | Nonmetal | Sand & gravel | Stone), CSV. | |
| mine_id | No | MSHA mine id(s), CSV. | |
| operator | No | Mine operator/company name — suffix/punctuation-insensitive. | |
| commodity | No | Commodity/SIC or canvass fragment. | |
| entity_id | No | Resolved operator entity UUID (pivots to business360). | |
| mine_name | No | Mine name fragment. | |
| mine_type | No | Surface | Underground | Facility (CSV). | |
| coal_metal | No | C = coal, M = metal/non-metal. | |
| controller | No | Controlling entity (parent) name fragment. | |
| operator_id | No | MSHA operator id(s), CSV. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that it is a public-domain record search, includes a per-row price, and describes the scope (all coal and metal/non-metal mines under MSHA jurisdiction). It does not mention auth requirements or rate limits but sets appropriate expectations for a search tool.
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 4 sentences, front-loaded with a question and immediate answer. It efficiently conveys the dataset, searchable fields, return fields, and pricing. No extraneous information; every sentence adds value.
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?
Given the complexity (18 parameters, no output schema, no annotations), the description explains the dataset jurisdiction, what is returned (mine, operator, controller, commodity, employees, status), and pricing. It lacks output field details but covers the essential scope for a search tool.
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?
The input schema has 100% coverage with descriptions for all 18 parameters. The description merely summarizes the parameter categories (e.g., 'by operator, mine name...') without adding new meaning beyond the schema. Thus it meets the baseline for high schema coverage.
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 clearly states it searches the MSHA Mines data set for mines and quarries, specifying the exact resource and actions. It includes context about the dataset (NAICS-21, OSHA-exempt) and lists returned fields, making the purpose unambiguous. The name and description distinguish it from siblings like msha_violations_search.
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 explicit guidance on when to use this tool versus alternatives. It opens with a broad question but does not mention exclusions or conditions under which another tool would be more appropriate. There is no mention of sibling tools or when not to use this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
msha_violations_searchAInspect
Which mine operators have MSHA citations or orders? Search the MSHA Violations data set (citations & orders at coal & M/NM mines) by cited company, mine id, state, cited 30 CFR standard (part_section), Mine Act section, citation/order type, health/safety area, negligence, likelihood, S&S (sig_sub), contested, year, or issue date (since). Returns the cited violator (entity-resolved), mine, standard cited, penalty, and dates. Reported exactly as cited, not a safety judgment. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | issue_date | penalty | affected :asc|:desc. Default issue_date:desc. | |
| year | No | Calendar year of issuance. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Issued on/after this date (YYYY-MM-DD). | |
| state | No | State code(s), CSV (from the mine). | |
| offset | No | Rows to skip. | |
| cit_ord | No | Citation | Order | Safeguard (CSV). | |
| company | No | Cited violator (operator/contractor) name — suffix/punctuation-insensitive. | |
| mine_id | No | MSHA mine id(s), CSV. | |
| sig_sub | No | true = Significant & Substantial (S&S) citations only. | |
| contested | No | true = contested citations only. | |
| entity_id | No | Resolved violator entity UUID. | |
| coal_metal | No | C = coal, M = metal/non-metal. | |
| likelihood | No | Accident likelihood (Highly | Reasonably | Unlikely | Occurred | NoLikelihood), CSV. | |
| negligence | No | Negligence degree (CSV). | |
| violator_id | No | MSHA violator/operator id(s), CSV. | |
| part_section | No | Cited 30 CFR part/section fragment (the standard cited). | |
| violator_type | No | Operator | Contractor | Agent | Miner (CSV). | |
| section_of_act | No | Mine Act section fragment. | |
| enforcement_area | No | Health/safety hazard designation fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions the data is 'reported exactly as cited' and includes pricing, but does not explicitly state read-only behavior or potential rate limits. In absence of annotations, more explicit behavioral information would be beneficial.
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 concise, front-loaded with a question, and uses about three sentences to cover purpose, filters, and return fields efficiently.
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 description is complete for a search tool: it states what the dataset is, filter options, and return fields. With no output schema, it adequately describes the output.
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?
All 20 parameters have descriptions in the input schema, so the description adds no additional meaning beyond listing them. Baseline score of 3 is appropriate.
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 clearly states the tool's purpose: searching MSHA violations by various criteria. It starts with a question and specifies the dataset, filters, and return fields, making it distinct from sibling tools like msha_mines_search.
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 lists many filter parameters and indicates what is returned, providing clear context for when to use the tool. However, it does not explicitly state when not to use it or compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nlrb_cases_searchAInspect
Which employers have NLRB labor activity — a union petition or an unfair-labor-practice charge? Search NLRB cases by employer, case type (CA/CB/RC/RM/...), category (ulp vs representation), status, region, state, union, election result, or filing date (since). Returns the employer (entity-resolved where possible), region, union, and — for elections — the tally. Cases as filed (a charge is an allegation, not a judgment); a labor-relations trigger for PEO/HR, benefits, staffing, and outplacement. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | date_filed | tally_issued_date | num_employees :asc|:desc. Default date_filed:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Filed on/after this date (YYYY-MM-DD). | |
| state | No | Employer state code(s), CSV. | |
| union | No | Union / petitioner name fragment. | |
| offset | No | Rows to skip. | |
| region | No | NLRB region code(s), CSV (two-digit, e.g. 10). | |
| result | No | union | no union (election outcome, CSV). | |
| status | No | Open | Closed (CSV). | |
| company | No | Employer name — suffix/punctuation-insensitive. | |
| case_type | No | NLRB case type code(s), CSV (CA, CB, RC, RM, RD, UC, ...). | |
| entity_id | No | Resolved employer entity UUID (pivots to business360). | |
| has_election | No | true = cases with an election tally on record. | |
| case_category | No | ulp | representation | unit (CSV). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It transparently states that cases are filed as allegations (not judgments), lists the return fields (employer, region, union, election tally), and notes the price per row. Missing are rate limits or pagination details, but offset/limit are in schema. The description adds useful context beyond the schema.
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 four sentences, front-loaded with the core purpose, followed by search criteria, return data, usage context, and price. It is efficient and avoids redundancy, though the first sentence could be more concise. No wasted words.
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?
Given 14 parameters, no output schema, and no annotations, the description covers the main purpose, key searchable fields, return data, and pricing. It lacks an explicit note on default sorting (though schema provides it) and does not describe edge cases like empty results. However, for a search tool of this complexity, it is sufficiently complete.
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%, so the baseline is 3. The description enumerates primary search criteria but does not add semantic value beyond what the parameter descriptions already provide. For example, it mentions 'case type (CA/CB/RC/RM/...)' but the schema already defines case_type with examples. Minor added context from the opening question.
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 opens with a clear question ('Which employers have NLRB labor activity...') and explicitly lists the searchable criteria (employer, case type, category, status, region, state, union, election result, filing date). It also distinguishes the tool's purpose from sibling tools by specifying the domain (labor-relations trigger for PEO/HR, etc.) and the nature of the data (allegations, not judgments).
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 implicitly states when to use (searching for NLRB labor activity) and provides a usage context ('a labor-relations trigger for PEO/HR, benefits, staffing, and outplacement'). However, it lacks explicit guidance on when not to use or how to choose among the many sibling search tools, though the domain specificity helps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nlrb_feed_petitionsAInspect
Which employers just drew a union representation petition? Bulk feed over NLRB cases, newest-first by filing date, defaulting to representation petitions (R cases): employer, case type, region, filing date, and unit size — a labor-relations moment for PEOs, staffing, and labor counsel. category widens to ULP charges or all cases. Flat rows, cursor-paginated up to 1000/page, filterable by state, region, or union. Observational records AS FILED — a petition is a filing, never an adjudication. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only cases filed on or after this date (YYYY-MM-DD). | |
| state | No | Employer state code(s), CSV. | |
| union | No | Union / petitioner name fragment. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| region | No | NLRB region code(s), CSV (two-digit). | |
| category | No | representation (default; R-case petitions) | ulp (unfair-labor-practice charges) | unit | all. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden, and it effectively discloses key behaviors: newest-first ordering, default category, filtering options, cursor pagination, and that records are observational (filings, not adjudications). However, it does not mention rate limits or authentication requirements, which are minor omissions.
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 front-loaded with a clear question, but contains some verbose phrases (e.g., 'a labor-relations moment for PEOs, staffing, and labor counsel'). It is structured logically, progressing from purpose to details to pricing, but could be tightened by removing non-essential context.
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?
Given the tool has 7 parameters, no output schema, and no annotations, the description covers the feed nature, filtering, and pagination. It mentions 'flat rows' but does not explicitly describe the output structure or that it returns an array with a next_cursor, which is a notable 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?
The input schema covers all 7 parameters with descriptions, so baseline is 3. The description adds value by explaining the default category ('representation'), the scope of the 'category' parameter, and the purpose of cursor pagination, which goes 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?
The description clearly states the tool provides a bulk feed of NLRB petitions, defaulting to representation petitions, with details on employer, case type, region, filing date, and unit size. It distinguishes itself from sibling tools like nlrb_cases_search by emphasizing its feed nature and specific use case for monitoring.
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 this tool is for bulk monitoring of NLRB filings, but it does not explicitly state when to use it versus alternatives like nlrb_cases_search. There is no guidance on when not to use it, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ofac_screen_sanctionsAInspect
Is this company on a U.S. sanctions or export-control list? One-call screen of the Consolidated Screening List — OFAC SDN, BIS Entity/Denied-Persons/Unverified/Military-End-User, State DTC/ISN, Treasury SSI/CMIC/PLC/NS-MBS — by normalized name and every published AKA (optional list= filter). Returns an attested records_found verdict, per-list hit counts, and the matching listings with program, type, and addresses. A name match is a screening hit to adjudicate, not a determination. [price: $0.1/call]
| Name | Required | Description | Default |
|---|---|---|---|
| list | No | Optional source-list code to narrow the screen (SDN | EL | DPL | DTC | SSI | UVL | ISN | PLC | MEU | CMIC | NS-MBS | CAP). | |
| name | Yes | Company/party name to screen — legal suffixes and punctuation normalized; matched against the primary name and every alternate name/AKA. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden. It discloses the output (verdict, hit counts, listings), the one-call nature, pricing, and the important caveat that matches require adjudication. This adds behavioral context beyond the input schema.
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 well-structured, starting with a question, listing lists, then output details, caveat, and price. Every sentence adds value, though slightly lengthy. It's efficient and front-loaded.
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?
Given no output schema, the description thoroughly explains return values (verdict, per-list counts, listings with details) and the adjudication note. It covers input and output adequately, distinguishing from siblings by specifying the sanctions focus.
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 coverage is 100%, so the baseline is 3. The description adds little new on the 'name' parameter beyond what the schema says, and for 'list' it reiterates 'optional filter.' It does not introduce additional parameter semantics not already in 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?
The description clearly states the tool screens a company against U.S. sanctions and export-control lists, listing specific lists like OFAC SDN, BIS Entity, etc. The verb 'screen' and resource 'sanctions lists' are explicit, distinguishing it from other screening tools among siblings.
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 indicates use for checking sanctions/export-control status and notes that a match is a 'screening hit to adjudicate, not a determination.' It does not explicitly exclude alternatives but implies this tool is for the Consolidated Screening List, which differentiates it from sibling screening tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oflc_feed_workforceAInspect
Which employers filed U.S. work-visa cases — H-1B LCA, PERM, and the seasonal-labor programs H-2A, H-2B, and CW-1 — for what roles, wages, worksites, and how many seasonal workers over what period of need? Employer-level bulk feed over DOL OFLC disclosure files: one flat row per case decided since a date, cursor-paginated up to 1000/page, filterable by program, worksite state, SOC, or employer name. Rows add employer FEIN where filed, SEC CIK/ticker where public, and as_published_date. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| soc | No | SOC occupation code. Example: 15-1252 (software developers). | |
| limit | No | Rows per page (default 500, cap 1000). | |
| since | Yes | Include cases with a decision date on or after this date (YYYY-MM-DD). Required. | |
| state | No | Worksite state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| program | No | Which OFLC programs to include (CSV): lca | perm (default; professional workers) or the seasonal-labor programs h2a (agricultural) | h2b (non-ag seasonal) | cw1 (CNMI). Seasonal rows add workers_requested/certified, the period-of-need window, and nature_of_temporary_need. | |
| employer | No | Employer name, punctuation-insensitive exact match ('Amazon.com Services LLC' matches 'AMAZON COM SERVICES LLC'). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It discloses pagination (cursor-based, up to 1000/page), filtering capabilities, and output fields (FEIN, SEC CIK/ticker, as_published_date). It also notes extra fields for seasonal programs and pricing ($0.05/row). No contradictions. Missing details on rate limits or response structure beyond what's mentioned.
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 focused paragraph front-loaded with a question. Every sentence adds value: purpose, filtering, pagination, pricing, and special behavior for seasonal programs. No redundant or filler sentences.
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?
Given the complexity (7 params, no output schema, no annotations), the description covers purpose, filtering, pagination, output fields, and pricing. It explains key differences for seasonal programs. While an explicit list of all output fields would improve completeness, it is sufficient for effective tool selection and invocation.
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%, so the baseline is 3. The description adds overall context (cursor pagination, seasonal extra fields, pricing) but does not enhance per-parameter semantics beyond what the schema already provides. It provides enough to understand parameter usage but not exceptional added value.
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 starts with a clear question summarizing the tool's purpose: which employers filed which visa cases for what roles, wages, worksites, and seasonal workers. It then explicitly states 'Employer-level bulk feed over DOL OFLC disclosure files,' distinguishing it from sibling tools like oflc_sponsor_dossier (single employer detail) and oflc_sponsor_search (search).
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 clearly states this is a 'bulk feed' for employer-level data, implying use when needing many cases rather than a single employer. It lists filterable dimensions (program, state, SOC, employer) but does not explicitly say when not to use or mention alternatives by name. The context is clear enough for appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oflc_sponsor_dossierAInspect
What is this employer's full visa-sponsorship track record? One-call dossier from DOL OFLC filings: LCA and PERM case counts by fiscal year and status, certification vs denial breakdown, annualized offered-wage percentiles (p10-p90), top sponsored SOC occupations, and top worksite states. Accepts a slug (amazon-com-services-llc) or a raw employer name. [price: $0.1/call]
| Name | Required | Description | Default |
|---|---|---|---|
| sponsor | Yes | Employer slug or name (path parameter). Punctuation-insensitive; fuzzy-matched if no exact hit. Example: 'amazon-com-services-llc'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions it is a one-call dossier and includes pricing, but does not explicitly state it is read-only or non-destructive. For a data retrieval tool, this is adequate but could be more explicit about safety.
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 paragraph that efficiently lists the data points included. It is front-loaded with the key question 'What is this employer's full visa-sponsorship track record?' and is appropriately sized without extraneous 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?
Given the simple single-parameter input, no output schema, and no annotations, the description is complete. It covers input format, the range of data returned, and pricing, leaving no critical gaps for an agent to invoke the tool correctly.
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 coverage is 100%, and the description adds meaning by explaining the input can be a slug or raw name, is punctuation-insensitive, and includes an example. This goes beyond the schema description, providing useful context for parameter usage.
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 clearly states the tool provides a comprehensive dossier on an employer's visa sponsorship track record, including specific data points like LCA/PERM counts, wage percentiles, and top occupations. It distinguishes from sibling tools like oflc_sponsor_search by offering detailed records rather than just a list.
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 explains the tool is for getting a full sponsorship track record and accepts a slug or name. While it does not explicitly state when not to use or compare with siblings, the context of sibling tools (e.g., oflc_sponsor_search) implies this is the deep-dive tool. Usage guidance is clear but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oflc_sponsor_searchAInspect
Which employers sponsor work visas or green cards? Search DOL OFLC disclosure data by employer name, state, program (LCA/H-1B vs PERM), case status, fiscal year, or SOC occupation code. Returns per-employer filing counts (total, LCA, PERM, certified, denied) — the shortlist behind 'who sponsors H-1B for this role?' [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Employer name fragment, punctuation-insensitive. Example: 'amazon'. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Employer HQ state code(s), CSV. Example: 'WA,CA'. | |
| offset | No | Rows to skip, for paging. | |
| program | No | LCA (H-1B and related) | PERM (green-card labor certification). CSV for both. | |
| soc_code | No | Only sponsors with LCA filings in this SOC occupation. Example: 15-1252 (software developers). | |
| case_status | No | CERTIFIED | DENIED | WITHDRAWN | CERTIFIED - WITHDRAWN, CSV for multiple. | |
| fiscal_year_max | No | Latest federal fiscal year to include. | |
| fiscal_year_min | No | Earliest federal fiscal year to include. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return structure ('per-employer filing counts') and pricing ($0.05/row), which is helpful. It implies a read-only search operation with no destructive behavior.
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 concise at two sentences, front-loading the key question and search capabilities. It includes pricing without redundancy. Minor structure improvements could separate return details.
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?
Given the complexity (9 parameters, no output schema), the description covers the return format and key query dimensions. It lacks details on sorting or defaults but is sufficient for a search tool.
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 does not add significant meaning beyond what the schema provides. The high-level summary is adequate but not compensatory.
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 clearly states the tool searches DOL OFLC disclosure data by employer name, state, program, etc., and returns per-employer filing counts. It distinguishes itself from siblings like 'oflc_sponsor_dossier' and 'oflc_stats_sponsors' by focusing on aggregated sponsor search results.
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 a concrete use case ('who sponsors H-1B for this role?') and lists queryable parameters. However, it does not explicitly mention when not to use this tool or compare it to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oflc_stats_sponsorsAInspect
How much visa-sponsorship data is on file? Headline aggregates over DOL OFLC disclosure data: distinct sponsoring employers, LCA and PERM case totals with certified counts, and the fiscal years covered. [price: $0.001/call]
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries burden. It discloses the data source (DOL OFLC disclosure data) but doesn't mention data freshness, caching, or limitations. For a simple stats tool with no parameters, this is adequate but not comprehensive.
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, concise sentence that is front-loaded with a question and followed by specific metrics. It is efficient and contains no filler.
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?
Given no output schema, the description adequately describes what the tool returns (distinct sponsoring employers, case totals, certified counts, fiscal years). It also includes pricing, making it complete for this simple tool.
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?
The tool has no parameters, and schema coverage is 100%. Baseline for zero parameters is 4, and the description adds no extra parameter semantics since none exist.
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 clearly states the tool provides headline aggregates of visa-sponsorship data from DOL OFLC disclosure data, listing specific metrics. It distinguishes from sibling tools like oflc_sponsor_dossier (detailed sponsor info) and oflc_sponsor_search (search by sponsor).
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?
Usage is implied: use for overall statistics, not for specific sponsor details. No explicit when-to-use or exclusions are given, but the context of siblings provides some implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oflc_wages_prevailingAInspect
What do employers actually offer for this occupation in this state? Annualized wage percentiles (p10-p90) computed from LCA disclosure filings for an SOC code, optionally narrowed to a worksite state: offered wages, DOL prevailing wages, wage-level distribution, and sample size — the market-rate check behind salary negotiation and offer benchmarking. [price: $0.01/call]
| Name | Required | Description | Default |
|---|---|---|---|
| soc | Yes | SOC occupation code, required. Example: 15-1252 (software developers). | |
| state | No | Worksite state code to narrow the sample. Example: 'CA'. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the data source (LCA disclosure filings), what is computed (annualized percentiles p10-p90), and includes a price. It does not mention whether the tool is read-only, but that is implied; 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that packs all essential information: verb, resource, inputs, output content, and pricing. No wasted words; every phrase adds value.
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?
Even without an output schema, the description specifies the return values: offered wages, DOL prevailing wages, wage-level distribution, and sample size. This is complete for the tool's purpose.
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% (both soc and state have descriptions). The description adds meaning by explaining that the tool computes annualized wage percentiles for an SOC code and optionally narrows by state, which aligns with and enriches the parameter descriptions.
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 clearly states the tool provides annualized wage percentiles from LCA disclosure filings for an SOC code, optionally narrowed to a state. It uses a specific verb ('compute') and resource ('wage percentiles'), distinguishing it from sibling tools focused on sponsors or other data.
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 explicitly frames the use case as 'market-rate check behind salary negotiation and offer benchmarking,' which clearly indicates when to use the tool. It does not explicitly mention when not to use or suggest alternatives, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
partd_feed_prescribingAInspect
Which prescribers just entered a drug class this Medicare Part D year — e.g. new GLP-1 prescribers in PY2024? Bulk feed over CMS Part D Prescribers by Provider and Drug, aggregated per NPI to a drug class and differenced PY2023 → PY2024: direction=new_entrant returns new-to-class prescribers, de_adopter those whose class volume fell. Flat rows, cursor-paginated up to 1000/page, by drug_class, specialty, and state. Observational public Part D records — never a clinical recommendation. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| state | No | Prescriber state code (two letters). | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| direction | No | new_entrant (default; wrote the class in PY2024 with ≤ max_prior_claims in PY2023 — the new-to-class buying moment) | de_adopter (class volume fell ≥ min_pct_drop%). | |
| specialty | No | Prescriber specialty (Prscrbr_Type), e.g. Endocrinology. | |
| drug_class | No | Therapeutic drug class: GLP-1 | SGLT2 | DPP-4 | Statin. Default GLP-1. | |
| min_pct_drop | No | de_adopter only: minimum percent decline in class volume PY2023 → PY2024. | |
| min_claims_2024 | No | Minimum class claims in PY2024. | |
| max_prior_claims | No | new_entrant only: maximum PY2023 class claims allowed (0 = truly new to the class). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses pricing ($0.05/row), observational nature (never clinical), pagination (cursor-based, up to 1000/page), and the two behavioral modes (new_entrant, de_adopter). Missing rate limits or authentication details, but overall transparent.
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?
Description is 5-6 sentences, front-loaded with purpose, and covers key aspects without redundancy. It is well-structured but could be slightly more compact.
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?
Given 9 parameters, no output schema, and moderate complexity, the description covers aggregation logic, directions, pagination, filters, and a disclaimer. It lacks output field descriptions and rate limits, but is otherwise complete.
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%, so baseline is 3. The tool description adds minimal extra meaning beyond the schema, mainly repeating examples already in parameter descriptions. No additional context beyond what schema provides.
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 clearly states the tool's purpose: to find prescribers who are new entrants or de-adopters of a drug class in Medicare Part D, with a specific example. It distinguishes from siblings by its unique focus on Part D prescribing data.
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 explicit use cases (new entrants, de-adopters) and explains filtering by drug class, specialty, state. It does not explicitly mention when not to use or alternatives, but the context is sufficiently clear for common scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
partd_prescriber_searchAInspect
Who is this prescriber, and what do they prescribe most in Medicare Part D? Look up a prescriber by NAME (or exact NPI): NPPES identity — specialty, location — plus that NPI's latest-year Part D summary (top drug, total claims, distinct drugs, and which tracked classes GLP-1/SGLT2/DPP-4/Statin they write). Optionally narrow by state and specialty. Observational public CMS/NPPES records — never a clinical recommendation. Cross-gateway via the Healthparse Part D API. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| npi | No | Exact 10-digit National Provider Identifier. | |
| name | No | Prescriber name — last-name prefix (e.g. Smith) or first+last (e.g. John Smith). | |
| state | No | Prescriber state code(s), two letters, comma-separated. | |
| specialty | No | NPPES taxonomy / specialty substring. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the data is observational public CMS/NPPES records and not a clinical recommendation. It mentions the cost ($0.05/row) and that it uses the Healthparse Part D API. It does not explicitly state read-only or non-destructive nature, but the observational framing implies no modification.
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 dense paragraph that front-loads the core question ('Who is this prescriber?') and packs in all key details without fluff. Every sentence adds value, including the price and API source. It is highly concise for the amount of information conveyed.
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?
Given no annotations and no output schema, the description covers the essential behavioral context: input parameters, optional filters, output summary fields, and data lineage. It could mention pagination or handling of missing NPIs, but it provides sufficient completeness for a lookup tool.
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?
All four parameters have descriptions in the input schema, so schema coverage is 100%. The tool description reiterates the parameter usage (e.g., name can be last-name prefix or first+last) but adds minimal new meaning beyond the schema. Baseline of 3 is appropriate.
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 clearly states the tool's purpose: to look up a prescriber by name or NPI and return NPPES identity and Part D prescribing summary. It specifies the exact outputs (specialty, location, top drug, claims, etc.) and distinguishes itself from sibling tools by being focused on prescriber identity and prescribing patterns.
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 tool explains when to use it: to find who a prescriber is and what they prescribe, with optional state and specialty filters. It does not explicitly state when not to use it or mention alternatives, but the usage context is clear and includes important caveats like 'never a clinical recommendation'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pecos_enrollment_exodus_searchAInspect
Where are clinicians dropping off Medicare enrollment? Anti-joins two PPEF quarterly snapshots: enrollments present earlier but gone in the latest, aggregated per state × specialty. Filter by state, specialty, org, individuals_only, min_dropped, or a since baseline snapshot. Returns dropped_count and sample dropped NPIs — a backfill-demand tell for clinician staffing. CMS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| org | No | Organization name fragment (org enrollments). | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Baseline snapshot: latest vs earliest on/after this date (YYYY-MM-DD). | |
| state | No | Enrollment state code(s), CSV. | |
| offset | No | Rows to skip. | |
| specialty | No | Provider-type / specialty fragment. | |
| min_dropped | No | Minimum dropped enrollments per state×specialty. | |
| individuals_only | No | true = exclude organizational enrollments. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It states that the tool anti-joins two quarterly snapshots (comparative behavior), returns aggregated counts and sample NPIs (output behavior), notes the data is CMS public-domain (licensing), and includes a per-row price. This is substantial useful context, though it does not mention pagination, rate limits, or other operational traits.
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 three sentences that front-load the purpose, then explain the mechanism, filters, output, and use case, all without waste. The price and licensing note are compact and useful. Every sentence contributes unique value.
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?
Given 8 parameters, no output schema, and no annotations, the description is remarkably complete: it explains the analytical concept, the aggregation level, the output fields, the domain use case, the data source, and the cost. It even clarifies that NPIs are a sample. The only minor gap is lack of explicit pagination behavior, but limit/offset are in the schema, so the description suffices.
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%, so the baseline is 3. The description does add some high-level semantics by explaining that the tool aggregates per state × specialty and that 'since' selects a baseline snapshot, but it essentially restates the filter list already present in the schema. It does not provide syntax or deeper parameter nuances 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?
The description clearly states what the tool does: it anti-joins two PPEF snapshots to find clinicians who dropped off Medicare enrollment, aggregated by state and specialty. It distinguishes itself from the sibling pecos_enrollments_search and pecos_provider_exodus_search by describing the specific exodus/anti-join behavior and the returned metrics (dropped_count, sample NPIs).
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 opens with a use-case question ('Where are clinicians dropping off Medicare enrollment?') and explains the analytical method (anti-joining snapshots) and the filters available. It implicitly suggests when to use this tool (exodus analysis) but does not explicitly mention alternatives or when not to use it, so it stops short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pecos_enrollments_searchAInspect
Who is enrolled in Medicare (PECOS)? Search the CMS 'Medicare Fee-For-Service Public Provider Enrollment' (PPEF) roster by state, specialty (provider type), org name, NPI, enrollment id, is_org, or snapshot. Returns NPI, enrollment id, provider type, state and org — the Medicare enrollment roster. CMS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| npi | No | NPI(s), CSV. | |
| org | No | Organization name fragment (org enrollments). | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Enrollment state code(s), CSV. | |
| is_org | No | true = organizational enrollments; false = individuals. | |
| offset | No | Rows to skip. | |
| snapshot | No | Exact snapshot date (YYYY-MM-DD). | |
| specialty | No | Provider-type / specialty fragment. | |
| latest_only | No | true = only the most recent snapshot. | |
| enrollment_id | No | PECOS enrollment id(s), CSV. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It adds useful context: the data is CMS public-domain, and the price per row is disclosed. It implies a read-only search and lists return fields. However, it does not explain snapshot versions, pagination behavior, or any data limitations, leaving some behavioral gaps.
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 compact and front-loaded with a purpose question. It packs in the resource, search keys, return fields, and pricing in just three sentences. Every sentence adds value and there is no fluff.
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?
Given the tool has 10 optional parameters and no output schema, the description does well to name the key return fields (NPI, enrollment id, provider type, state, org) and note the data source/pricing. It doesn't explain snapshot date semantics or the is_org/org distinction, but those are covered in the schema. Overall enough for an agent to select and invoke the tool.
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%—every parameter has a description and examples. The description recaps several parameters (state, specialty, org name, NPI, enrollment id, is_org, snapshot) but adds no new semantic detail beyond the schema. Thus baseline 3 is appropriate.
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 specifies a clear verb ('Search') and exact resource ('CMS Medicare Fee-For-Service Public Provider Enrollment roster (PPEF)'), and lists the major search keys. It immediately answers 'Who is enrolled in Medicare?' and is distinct from exodus-focused sibling tools because it targets enrollment data, not exodus data.
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 gives clear context on what the tool is for: searching the Medicare enrollment roster by provider attributes. It does not explicitly mention alternatives or exclusions, but the scope is unambiguous. It's obvious when to use this instead of, say, a provider look-up for individual details, but it could have named related tools for contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pecos_provider_exodus_searchAInspect
Which medical groups are losing clinicians? Windows two CMS reassignment snapshots (individual→group affiliation): per group, clinicians (NPIs) affiliated in the prior snapshot but gone in the latest. Filter by state, specialty, org (group name), group_id, min_dropped, or a since baseline. Returns net churn per org + the dropped NPIs — the facility-losing-clinicians backfill tell. CMS public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| org | No | Group legal-business-name fragment. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Baseline snapshot: latest vs earliest on/after this date (YYYY-MM-DD). | |
| state | No | Group state code(s), CSV. | |
| offset | No | Rows to skip. | |
| group_id | No | Group PECOS enrollment id(s), CSV. | |
| specialty | No | Dropped clinician specialty fragment. | |
| min_dropped | No | Minimum clinicians lost per group. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses the core behavior: it 'windows two CMS reassignment snapshots' and 'returns net churn per org + the dropped NPIs.' It also specifies the data source ('CMS public-domain records') and pricing. This goes beyond a simple read hint by explaining the comparative methodology. It does not describe pagination or rate limits, but for a search tool this is acceptable and nothing contradicts annotations (which are absent).
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 front-loaded with a compelling question and flows logically: question, methodology, filters, output, data source, price. It is relatively compact for the amount of context it provides. One minor distraction is the jargon-y phrase 'the facility-losing-clinicians backfill tell,' which may confuse some users, but overall the structure is effective and every sentence adds value.
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 description covers the essential 'what', 'how', and 'what you get' for this tool: it explains the snapshot comparison, lists filters, defines the output as 'net churn per org + the dropped NPIs,' and notes the public-domain source. Since the tool has no output schema, the description gives enough high-level return information. It does not specify exact output fields or pagination behavior, but for a read-only search tool with well-described parameters, it is reasonably complete.
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?
The input schema already provides detailed descriptions and examples for all 8 parameters (100% coverage), including the semantics of 'since' as 'Baseline snapshot: latest vs earliest on/after this date.' The description's mention of filters like 'state, specialty, org, group_id, min_dropped, or a since baseline' simply summarizes the parameters without adding new meaning beyond the schema. Baseline of 3 is appropriate.
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 opens with a precise question, 'Which medical groups are losing clinicians?', then explains the mechanism: comparing two CMS reassignment snapshots by individual→group affiliation to find clinicians present in the prior snapshot but gone in the latest. This clearly identifies both the resource (medical groups / clinicians) and the specific analysis (exodus). Although it doesn't explicitly name sibling tools, the distinctive focus on provider exodus separates it from similar search tools like pecos_enrollments_search.
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 states the context for use: finding groups losing clinicians and identifying 'the facility-losing-clinicians backfill tell.' It also enumerates filters ('Filter by state, specialty, org (group name), group_id, min_dropped, or a since baseline'), indicating when and how to narrow the search. However, it does not explicitly mention alternatives or when not to use this tool, so it misses the 'when-not' guidance for a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
phmsa_incidents_searchAInspect
Which pipeline operators had a reported incident? Search PHMSA pipeline incidents (2010+, gas distribution / hazardous liquid / gas transmission) by operator, operator_id, mode, state, cause, commodity, minimum cost (min_cost), year, or incident date (since). Returns the incident, its entity-resolved operator, location, commodity released, casualties, cost, and cause — a remediation / integrity / claims trigger. Reported exactly as recorded, not a safety judgment. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Pipeline mode (gas_distribution | hazardous_liquid | gas_transmission), CSV. | |
| sort | No | incident_date | total_cost | fatalities :asc|:desc. Default incident_date:desc. | |
| year | No | Incident year. | |
| cause | No | Incident cause fragment. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Incident date on/after this date (YYYY-MM-DD). | |
| state | No | Incident state code(s), CSV. | |
| offset | No | Rows to skip. | |
| min_cost | No | Minimum total cost (USD). | |
| operator | No | Operator name — suffix/punctuation-insensitive. | |
| commodity | No | Commodity released fragment. | |
| entity_id | No | Resolved operator entity UUID. | |
| operator_id | No | PHMSA operator id(s), CSV. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that data is 'reported exactly as recorded, not a safety judgment' and mentions price per row. It explains the tool returns entity-resolved operator and lists output fields. While it omits rate limits or pagination details, it gives sufficient behavioral insight for a read-only search tool.
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 extremely concise: two sentences plus a price note. It is front-loaded with a question that engages the user. Every sentence adds value, and there is no redundant 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?
Given 13 parameters and no output schema, the description covers the tool's purpose, filters, and return fields (incident, operator, location, commodity, casualties, cost, cause). It also specifies time range and modes. It could mention pagination (offset/limit) but overall is complete enough for effective use.
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%, so each parameter is described in the schema. The tool description adds context like operator being 'suffix/punctuation-insensitive' and summarizes filter options, but does not significantly enhance meaning beyond schema. Baseline 3 is appropriate.
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 starts with a clear question 'Which pipeline operators had a reported incident?' and explicitly states it searches PHMSA pipeline incidents by multiple criteria. It lists returned fields and distinguishes from sibling tool phmsa_operators_search by focusing on incidents rather than operators. The verb 'search' and resource 'PHMSA pipeline incidents' are specific.
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 enumerates searchable fields (operator, mode, state, cause, etc.) and specifies data scope (2010+, gas distribution/hazardous liquid/gas transmission). It does not explicitly contrast with sibling tools, but the focus on incidents vs operators is clear. No when-not-to-use guidance, but the context is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
phmsa_operators_searchAInspect
Which pipeline operators are in a market, and who are they? Search the PHMSA pipeline operator roster by operator name, operator_id (OPID), HQ state, operator_type, or commodity. Returns the operator, HQ address, commodity, type, and entity-resolved company — the target universe for oil-and-gas services, pipeline-integrity & environmental consultants, energy insurers, and industrial real estate. PHMSA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | operator_name | report_year :asc|:desc. Default operator_name:asc. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | HQ state code(s), CSV. | |
| offset | No | Rows to skip. | |
| operator | No | Pipeline operator name — suffix/punctuation-insensitive. | |
| commodity | No | Commodity fragment. | |
| entity_id | No | Resolved operator entity UUID (pivots to business360). | |
| operator_id | No | PHMSA operator id (OPID)(s), CSV. | |
| operator_type | No | Operator/ownership type fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It mentions public-domain records and price per row, but does not explicitly state read-only behavior, rate limits, or data freshness. The behavior is implied as a search, which is acceptable but not fully transparent.
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 concise at a few sentences, starting with a guiding question and covering purpose, returns, audience, source, and pricing. Some marketing language (target audience) is present but not excessive; overall efficient.
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?
Despite 9 parameters and no output schema, the description covers the main purpose and return fields. It misses details like pagination behavior (though limit/offset exist) and error handling. The price mention adds value, but overall completeness is adequate but not comprehensive.
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 coverage is 100% with descriptions for all 9 parameters. The tool description lists the searchable fields but adds no new meaning beyond the schema. It does provide useful output field context, but that does not enhance input parameter understanding.
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 clearly states it searches the PHMSA pipeline operator roster by specific fields (name, ID, state, etc.) and returns key details. It distinguishes from sibling tools like phmsa_incidents_search by focusing on operators and market context.
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 use for finding operators in a market via the question 'Which pipeline operators are in a market?', but lacks explicit guidance on when not to use or how it compares to other PHMSA tools (e.g., incidents search).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sba_feed_loansAInspect
Which small businesses were just approved for an SBA loan? Bulk feed over SBA 7(a) & 504 FOIA loan approvals, newest-first by approval date — a business approved for a federal loan is funded to grow. Cursor-paginated up to 1000/page, filterable by borrower state, program (7A/504), NAICS, minimum amount, or since. Rows carry the borrower, city/state, program, approval amount (banded), lender/CDC, NAICS, and jobs supported. Observational public records as disclosed. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV. | |
| since | No | Only loans approved on or after this date (YYYY-MM-DD). | |
| state | No | Borrower state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| program | No | Loan program: 7A | 504. | |
| min_amount | No | Minimum gross approval amount in USD. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It mentions 'Observational public records as disclosed' and pricing, implying a safe read operation but does not explicitly state read-only or idempotent behavior. It adds context about data source but lacks explicit safety guarantees.
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 extremely concise and well-structured: a hook question, data source, pagination, filters, output fields, and pricing—all in three sentences with no fluff.
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?
Given no output schema, the description compensates by listing output fields and explaining pagination. It covers key aspects but misses error handling or rate limits. For a feed tool, it is fairly complete.
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 coverage is 100%, but the description adds value by listing the output fields (borrower, city/state, program, amount banded, etc.) not present in the input schema. It also summarizes the filter capabilities, reinforcing 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?
The description clearly identifies the tool as a bulk feed of SBA 7(a) & 504 FOIA loan approvals, sorted newest-first. It uses a concrete verb ('feed') and specific resource, distinguishing it from the sibling 'sba_loans_search' which is likely a search tool.
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 explains the tool should be used to get a paginated feed of recent SBA loan approvals, with filter options. It does not explicitly compare with siblings or state when not to use it, but the context implies this is for bulk listing rather than targeted search.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sba_loans_searchAInspect
Which companies just got SBA growth capital — a 7(a) guaranty or 504/CDC debenture? Search the SBA 7(a) & 504 FOIA loan-approval roster by company, state, project_state, naics (prefix), program (7A/504), amount_min/amount_max, since (approved on/after a date — the funded-to-grow trigger), business_type, franchise, lender/CDC, entity_id. Returns the borrower, address, gross approval amount, approval date/FY, NAICS, funding lender, and entity-resolved borrower. SBA public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | approval_date | amount | company | jobs :asc|:desc. Default approval_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV (e.g. 23 = construction). | |
| since | No | Approved on/after this date (YYYY-MM-DD) — the growth-capital recency window. | |
| state | No | Borrower state code(s), CSV. | |
| lender | No | Funding lender fragment — 7(a) bank name / 504 CDC name. | |
| offset | No | Rows to skip. | |
| company | No | Borrower (company) name — suffix/punctuation-insensitive. | |
| program | No | 7A = 7(a) guaranty, 504 = 504/CDC debenture. | |
| entity_id | No | Resolved borrower entity UUID (pivots to business360). | |
| franchise | No | Franchise name fragment. | |
| amount_max | No | Maximum gross approval amount (USD). | |
| amount_min | No | Minimum gross approval amount (USD). | |
| business_type | No | Business type fragment (Corporation | Individual | Partnership). | |
| project_state | No | Project (place-of-use) state code(s), CSV. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the data source (FOIA) but lacks details on pagination, rate limits, or query behavior beyond parameter descriptions. It is adequate but not comprehensive.
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 dense and efficient, starting with an engaging question and logically listing fields. It has no wasted words, though a slightly more structured layout could improve readability.
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?
Given the absence of an output schema, the description adequately covers both input filters and output fields. It provides enough context for the agent to understand the tool's capabilities, though missing details on result limits and default sort order.
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 coverage is 100%, so baseline is 3. The description adds contextual meaning beyond schema, e.g., explaining 'since' as the growth-capital recency trigger and listing filters in a coherent manner, raising the score to 4.
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 explicitly states the tool's purpose: searching the SBA 7(a) & 504 FOIA loan-approval roster. It lists specific filters and returned fields, clearly distinguishing it from sibling tools in other domains (CMS, FAA, etc.).
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 usage for retrieving SBA loan data, but does not explicitly state when to use it vs. alternatives or when not to use it. Given the clear domain separation from siblings, this is still effective.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sec_feed_insidersAInspect
Which public companies are insiders buying as a cluster right now? Bulk feed over SEC Form 4 open-market BUY clusters — issuers where several distinct officers/directors/10%-owners bought in a trailing 30- or 90-day window. Flat rows newest-first by the cluster's most recent buy, cursor-paginated up to 1000/page, filterable by ticker, exchange, min insiders, min value, window, or since. Every issuer is a public company with ticker and CIK. Observational filings as filed, never advice. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only clusters whose most recent buy is on or after this date (YYYY-MM-DD). | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| ticker | No | Issuer ticker(s), CSV. | |
| window | No | Trailing cluster window in days: 30 | 90. Default 90. | |
| exchange | No | Listing exchange(s), CSV: NYSE, Nasdaq, OTC... | |
| min_value | No | Minimum total $ purchased across the cluster window. | |
| min_insiders | No | Minimum distinct insiders in the cluster (>= 2). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses key behaviors: newest-first ordering, cursor pagination up to 1000 rows, filter options, and that data is observational not advice. Does not cover rate limits, authentication, or error handling, but overall clear.
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 concise and front-loaded with the key question, packed with essential information. The single-sentence structure effectively communicates purpose and behavior without unnecessary fluff.
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?
No output schema, so description should clarify return values. It mentions 'flat rows' with ticker and CIK but does not detail the full row structure. For an 8-parameter tool, the output format could be more explicitly described.
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%, so baseline is 3. The description adds context for parameters (e.g., window options, min_insiders threshold), but does not significantly enhance understanding beyond schema descriptions.
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 clearly states the tool's purpose: identifying public companies with insider buying clusters from SEC Form 4 filings. It explicitly distinguishes itself from siblings like sec_insiders_transactions by focusing on clusters of multiple insiders.
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 usage for finding current insider buying clusters, but does not explicitly state when not to use this tool or contrast with alternatives like sec_insiders_clusters or sec_insiders_transactions. The context of siblings provides some guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sec_insiders_clustersAInspect
Where are corporate insiders buying or selling as a cluster? Search SEC Form 4 clusters — issuers where several distinct officers/directors/10%-owners transacted the same direction in a trailing 30- or 90-day window (buy=accumulation, sell=distribution). Filter by ticker, direction, window, minimum insiders, minimum value, or exchange. Returns issuer ticker/company/exchange, insider count, and total shares/value. Public SEC filings as filed — observational, not advice. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | insider_count | total_value | txn_count | last_txn_date :asc|:desc. Default insider_count:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| since | No | Most recent transaction in the cluster on/after this date (YYYY-MM-DD). | |
| offset | No | Rows to skip, for paging. | |
| ticker | No | Issuer ticker(s), CSV. | |
| window | No | Trailing window in days: 30 | 90. | |
| exchange | No | Listing exchange(s), CSV: NYSE, Nasdaq, OTC... | |
| direction | No | buy (open-market purchase cluster) | sell (open-market sale cluster). | |
| min_value | No | Minimum total $ transacted in the window. | |
| issuer_cik | No | SEC issuer CIK. | |
| min_insiders | No | Minimum distinct insiders in the cluster (>= 2). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosure. It mentions the data is from public SEC filings, observational, not advice, and includes pricing per row. However, it does not explicitly state that the tool is read-only or has no side effects, nor does it discuss rate limits or caching.
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 concise (approximately 150 words) and well-structured: purpose statement first, followed by details on parameters, return fields, a disclaimer, and pricing. Every sentence adds value with no redundancy or fluff.
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 tool with 11 parameters, no output schema, and no annotations, the description is quite complete. It explains the cluster concept, filters, return fields (issuer ticker/company/exchange, insider count, total shares/value), and includes a disclaimer and pricing. It could be improved by providing an example output structure.
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 coverage is 100% with all parameters having descriptions. The tool description adds value by summarizing the filterable parameters and return fields, but does not provide additional semantics beyond what the schema already offers.
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 clearly states the tool searches for SEC Form 4 clusters of insider buying or selling, specifying the resource (SEC Form 4 clusters), action (search), and key details like time window and direction. It distinguishes from the sibling sec_insiders_transactions by focusing on clusters rather than individual transactions.
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 explains when to use the tool (to find clusters of insider activity) and lists available filters (ticker, direction, window, etc.). It does not explicitly state when not to use it or mention alternatives, but the context and sibling names imply the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sec_insiders_transactionsAInspect
What did a company's insiders actually file? Search individual SEC Form 4 transaction lines by ticker, issuer CIK, insider name, direction (buy/sell/other), transaction code (P/S/A/M/F/G), role (officer/director/ten_percent), state, security type, minimum value, or date. Returns the insider, role, security, code, shares, price, and value per filing — the raw feed behind the cluster signal. Public SEC filings as filed — observational, not advice. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | Insider role: officer | director | ten_percent. | |
| sort | No | txn_date | txn_value | shares | filing_date :asc|:desc. Default txn_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| owner | No | Reporting-insider name fragment. | |
| since | No | Transaction on/after this date (YYYY-MM-DD). | |
| state | No | Insider state code(s), CSV. | |
| offset | No | Rows to skip, for paging. | |
| ticker | No | Issuer ticker(s), CSV (as filed on the Form 4). | |
| txn_code | No | SEC transaction code(s), CSV: P (buy), S (sell), A (grant), M, F, G... | |
| direction | No | buy | sell | other (grants, option exercises, tax withholding...). | |
| min_value | No | Minimum transaction value in $ (shares × price). | |
| issuer_cik | No | SEC issuer CIK. | |
| security_type | No | nonderiv (common shares) | deriv (options/warrants). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description discloses that it returns specific fields (insider, role, etc.) and states that data is from public SEC filings. However, it lacks information on authentication, rate limits, data freshness, or side effects. The warning 'observational, not advice' is helpful but does not cover all behavioral aspects.
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 very concise, with only three sentences and a pricing note. It is front-loaded with an engaging question, efficiently lists filter criteria, and ends with return fields and a disclaimer. No redundant 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?
Given the tool has 13 optional parameters and no output schema, the description covers the main return fields (insider, role, shares, etc.) and notes pricing. It lacks details on CSV parameter handling or pagination behavior, but the schema handles defaults. The connection to the cluster signal is mentioned, which aids context.
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 coverage is 100%, so the parameters are already well-documented. The description lists filter types (ticker, direction, etc.) in a narrative form but does not add significant new meaning beyond the schema descriptions. It provides context with examples of transaction codes and direction values.
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 an engaging question and clearly identifies the tool's purpose: searching individual SEC Form 4 transaction lines with many filter options. It distinguishes itself from the sibling tool 'sec_insiders_clusters' by calling itself 'the raw feed behind the cluster signal.'
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 usage for detailed insider transactions versus aggregated clusters, but it does not explicitly state when to use this tool over alternatives or provide non-usage guidance. No direct comparison to other sibling tools is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trials_feed_startsAInspect
Which companies just opened a new clinical trial or site? Bulk feed over NIH ClinicalTrials.gov interventional, industry-sponsored studies, newest-first by registry-posting date (the R&D / commercial-growth signal). Cursor-paginated up to 1000/page, filterable by sponsor, phase, status, condition, intervention type, site state, or since. Rows carry sponsor, phase, status, conditions, enrollment, dates, site count, and the US states sited. Observational registry records, never a prediction. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| phase | No | Trial phase(s), CSV: PHASE1 | PHASE2 | PHASE3 | PHASE4 | EARLY_PHASE1 | NA. | |
| since | No | Only trials first posted to the registry on or after this date (YYYY-MM-DD). | |
| state | No | Has a trial site in these US state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| status | No | Overall status, CSV: RECRUITING | NOT_YET_RECRUITING | COMPLETED | TERMINATED... | |
| sponsor | No | Lead sponsor company name fragment. | |
| condition | No | Indication / condition fragment (matched against the trial's conditions). | |
| intervention_type | No | Intervention type(s), CSV: DRUG | DEVICE | BIOLOGICAL | PROCEDURE... |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It discloses the data source (NIH ClinicalTrials.gov), data type (interventional, industry-sponsored), ordering, pagination (cursor-based, up to 1000/page), and that it is an observational registry (not a prediction). It also mentions pricing. It does not mention authentication or rate limits, but these are not critical for a read-only feed.
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, well-structured sentence that efficiently front-loads the purpose and then details pagination, filters, and output. It is concise yet comprehensive, with no unnecessary words. Minor improvement could be splitting into two sentences for readability.
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?
Given 9 parameters with full schema coverage and no output schema, the description provides all necessary context: data source, scope, filtering options, pagination details, and the fields included in rows. It is sufficient for an agent to understand the tool's capabilities and invoke it correctly.
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 coverage is 100%, meaning all 9 parameters have descriptions. The description adds value by explaining the broader context: the feed is over interventional industry-sponsored studies, provides specific fields (sponsor, phase, status, conditions, enrollment, dates, site count, US states), and is cursor-paginated. This contributes meaning beyond the schema's per-parameter descriptions.
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 clearly states the tool's function: identifying companies that just opened a new clinical trial or site, using a bulk feed from NIH ClinicalTrials.gov. It specifies the resource (clinical trial feed), scope (interventional, industry-sponsored), and ordering (newest-first by registry-posting date). This distinguishes it from sibling tools like trials_trials_search and trials_sites_search, which are search-oriented.
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 clear context: it's a cursor-paginated feed suitable for monitoring new trial starts. It lists filterable criteria (sponsor, phase, status, condition, intervention type, site state, since). However, it does not explicitly mention when to use this tool versus alternatives like trials_trials_search, nor does it state when not to use it. This is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trials_sites_searchAInspect
Where are clinical trials being run, and by whom? Search ClinicalTrials.gov trial SITES by facility name, city, US state, lead sponsor company, trial phase, trial status, or trial start date (since). Returns each facility with its trial's sponsor, phase, status, and start date — a site / facility target list for trial-site services, patient-recruitment, and lab vendors. ClinicalTrials.gov public records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | Site city fragment. | |
| sort | No | start_date :asc|:desc. Default start_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| phase | No | Trial phase(s), CSV (PHASE1 | PHASE2 | PHASE3 | PHASE4). | |
| since | No | Trial started on/after this date (YYYY-MM-DD). | |
| state | No | Site US state code(s), CSV. | |
| offset | No | Rows to skip. | |
| status | No | Trial overall status, CSV (RECRUITING | COMPLETED | ...). | |
| sponsor | No | Lead sponsor company — suffix/punctuation-insensitive. | |
| facility | No | Facility / site name fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It describes the tool as a search returning facility data with trial details and mentions pricing, but does not explicitly state that it is read-only, nor does it discuss rate limits, authentication needs, or pagination behavior beyond the schema's limit/offset.
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 three sentences and provides essential information. The opening question is slightly unnecessary for an AI agent but does not significantly add verbosity. It is well-structured with the core purpose first, then return fields, then use case and pricing.
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 10-parameter tool with no output schema, the description adequately explains the return values (facility with sponsor, phase, status, start date) and the pricing model. It does not cover error handling or edge cases, but the overall function and output are sufficiently described.
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?
Input schema coverage is 100% with descriptions for all 10 parameters. The description adds no additional meaning beyond the schema; it only lists some of the parameters (facility, city, state, sponsor, phase, status, since) without providing new context. Baseline 3 is appropriate.
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 starts with a clear question and states the tool searches for clinical trial sites by facility, city, state, sponsor, phase, status, and start date. It explicitly contrasts with the sibling trials_trials_search by focusing on sites rather than trials. The intended use case (target list for vendors) is also mentioned.
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 lists the searchable fields and implies the tool is for finding sites for trial services. However, it does not explicitly state when to use this tool vs alternatives like trials_trials_search, nor does it provide exclusion criteria or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trials_trials_searchBInspect
Which companies are running clinical trials, and at what stage? Search ClinicalTrials.gov interventional industry-sponsored studies by lead sponsor, phase, status, condition, intervention type, a US state with a site, first-posted date (since), start date, or completion date. Returns the sponsor (entity-resolved where possible), phase, status, conditions, enrollment, and dates — a developer target list for CRO, trial-software, and commercial-ops sellers. ClinicalTrials.gov public records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | first_posted_date | start_date | completion_date | last_update_date :asc|:desc. Default first_posted_date:desc. | |
| limit | No | Max rows (default 25, cap 100). | |
| phase | No | Trial phase(s), CSV (PHASE1 | PHASE2 | PHASE3 | PHASE4 | EARLY_PHASE1). | |
| since | No | First posted to the registry on/after this date (YYYY-MM-DD). | |
| state | No | Has a trial site in these US state code(s), CSV. | |
| offset | No | Rows to skip. | |
| status | No | Overall status, CSV (RECRUITING | COMPLETED | TERMINATED | ...). | |
| sponsor | No | Lead sponsor company — suffix/punctuation-insensitive. | |
| condition | No | Indication / condition fragment. | |
| entity_id | No | Resolved sponsor employer entity UUID (pivots to business360). | |
| started_after | No | Study start on/after this date (YYYY-MM-DD). | |
| completed_after | No | Study completion on/after this date (YYYY-MM-DD). | |
| intervention_type | No | Intervention type, CSV (DRUG | DEVICE | BIOLOGICAL | ...). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must convey behavioral traits. It mentions the data source (ClinicalTrials.gov public records), pricing ($0.05/row), and entity resolution for sponsors. However, it does not discuss pagination, error handling, or rate limits, leaving some behavioral gaps.
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 paragraph that efficiently front-loads the purpose and lists filters, output, target audience, source, and pricing. While it is not overly long, breaking it into bullet points could improve readability.
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?
Given 13 parameters and no output schema, the description covers the output fields, data source, pricing, and target use case. It lacks details on pagination or result interpretation, but overall provides sufficient context for an agent to understand the tool's capabilities.
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?
The input schema already describes all 13 parameters in detail (100% coverage). The description adds little beyond listing filter categories in prose; it does not provide format clarifications or usage tips not already in 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?
The description clearly states the tool searches ClinicalTrials.gov for interventional industry-sponsored studies, listing specific filters and output fields. It distinguishes itself from a generic search by focusing on sponsor and stage, but does not explicitly differentiate from the sibling 'trials_sites_search' for site-specific queries.
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?
No guidance is provided on when to use this tool versus alternatives like 'trials_sites_search' or other sibling search tools. The description lists filters but lacks context on exclusions or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ttb_permittees_searchAInspect
Which distilleries, wineries, alcohol importers, and wholesalers hold a federal TTB basic permit in a market? Search the TTB List of Permittees by owner, operating/DBA name, permit number, permit_type (S/W/I/P), industry, state, city, county, zip, entity_id, or new-permit-only (new=true, a new-business trigger). Returns the permittee, operating name, address, industry type, and entity-resolved owner. Excludes brewers/tobacco (IRC 6103). TTB public-domain records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| new | No | true = newly-issued permits only (< 7 days) — a new-business trigger. | |
| zip | No | Premise ZIP code. | |
| city | No | Premise city fragment. | |
| sort | No | permit_number | owner | city :asc|:desc. Default permit_number:asc. | |
| limit | No | Max rows (default 25, cap 100). | |
| owner | No | Permit-holder (owner) name — suffix/punctuation-insensitive. | |
| state | No | Premise state code(s), CSV. | |
| county | No | Premise county fragment. | |
| offset | No | Rows to skip. | |
| industry | No | Industry type (Distilled Spirits Plant | Wine Producer | Importer (Alcohol) | Wholesaler (Alcohol)), CSV. | |
| entity_id | No | Resolved owner entity UUID (pivots to business360). | |
| permit_type | No | S = distilled spirits, W = wine, I = importer, P = wholesaler. | |
| permit_number | No | TTB permit number(s), CSV (STATE-TYPE-SEQ). | |
| operating_name | No | Operating / DBA name fragment. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the burden. It discloses the return fields (permittee, operating name, address, industry, owner), exclusions (brewers/tobacco), and pricing. It also notes the data is public-domain.
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 front-loaded with a question and covers all key points in a few sentences. It includes pricing, which is useful but slightly extraneous. Overall efficient.
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?
Given the tool has many parameters and no output schema, the description adequately explains inputs, outputs, exclusions, and pricing. It is complete for a search tool of this complexity.
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%, so the baseline is 3. The description lists searchable parameters but does not add significant meaning beyond what the schema already provides, though it highlights the 'new' parameter as a new-business trigger.
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 clearly states the tool searches for TTB basic permit holders (distilleries, wineries, importers, wholesalers) by multiple criteria, and distinguishes itself by explicitly excluding brewers and tobacco. It provides a specific verb and resource.
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 when to use (searching for TTB permittees) but does not explicitly state when not to use or compare with sibling tools. No alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uspto_assignees_searchAInspect
Which companies are new to patenting, and in what technology? Search patent assignee ORGANIZATIONS (entity-resolved), each with first/last grant date, patent count, distinct CPC subclasses, and inventor count. new_assignee=true isolates orgs with their first-ever US patent grant (emerging/stealth signal for VC deal sourcing and corp-dev); narrow by CPC subclass, state/country, first-grant window, or patent_count_min. PatentsView grants (CC BY 4.0), observational. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | field:direction — patent_count | first_grant_date | last_grant_date. Default 'last_grant_date:desc'. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Assignee state code(s), CSV. | |
| offset | No | Rows to skip, for paging. | |
| country | No | Assignee country code(s), CSV (ISO). | |
| assignee | No | Assignee organization (company) name fragment. | |
| cpc_subclass | No | CPC subclass/class/section the org patents in, CSV. G06N=AI/ML. | |
| new_assignee | No | true → only new/emerging assignees (first-ever patent grant recent). | |
| assignee_entity | No | Resolved entities.employers entity_id (UUID), exact match. | |
| patent_count_max | No | Maximum granted-patent count held by the org (lifetime total). | |
| patent_count_min | No | Minimum granted-patent count held by the org (lifetime total). | |
| pct_increase_min | No | Minimum percent increase, recent window vs prior window (100 = the count doubled) — the real patent-surge threshold. | |
| first_grant_after | No | Org's first observed grant on or after (YYYY-MM-DD). | |
| first_grant_before | No | Org's first observed grant on or before (YYYY-MM-DD). | |
| prior_patent_count_min | No | Minimum granted-patent count in the PRIOR comparison window (floors out noise on pct_increase_min). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral burden. It does disclose the data source (PatentsView grants, CC BY 4.0), observational nature, and per-row pricing ($0.05/row). However, it omits behavioral details like pagination limits, response shape, rate limits, or sorting behavior beyond the schema, leaving some transparency gaps.
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 dense three-sentence paragraph that front-loads the core value proposition. It introduces filters, use case, and data provenance efficiently. Slightly long for a single block with multiple parentheticals, but each clause earns its place; a bulleted structure would improve scannability slightly.
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?
With 15 parameters, no output schema, and no annotations, the description compensates well by explaining the tool's purpose, filtering logic, use case, and data source. The low-level intra-parameter semantics (e.g., first_grant date meaning) are partially covered. Given the tool's complexity and lack of structured support, it does a solid job though it could clarify return ordering and pagination.
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 coverage is 100%, which sets a baseline of 3. The description adds meaning beyond the schema by explaining new_assignee's semantics ('first-ever US patent grant'), clarifying pct_increase_min as 'the real patent-surge threshold' and its doubling semantics, and contextualizing cpc_subclass (G06N=AI/ML). This exceeds the baseline.
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 clearly states a specific verb+resource: 'Search patent assignee ORGANIZATIONS (entity-resolved)' with concrete output fields (first/last grant date, patent count, CPC subclasses, inventor count). It distinguishes itself from siblings by focusing on entity-resolved assignee organizations and mentioning the new_assignee 'emerging/stealth signal' use case.
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 names concrete filter dimensions (CPC subclass, state/country, first-grant window, patent_count_min) and orients toward VC deal sourcing and corp-dev use cases. However, it does not explicitly name alternatives or state when to prefer sibling tools like uspto_patents_search or uspto_feed_grants over this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uspto_feed_grantsAInspect
Which companies are granting a cluster of patents? Bulk feed over USPTO / PatentsView granted-patent assignees, ordered by grant count in the loaded window — an assignee with a cluster of grants is an R&D/growth signal. Cursor-paginated up to 1000/page, filterable by state, minimum grants, CPC subclass, first-time-assignee only, or since. Rows carry the assignee, grant count, CPC tech areas, grant window, inventor count, and a first_time_assignee flag. CC BY 4.0 attribution (in _meta.notice). [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| cpc | No | CPC subclass(es), CSV — the technology area. Example: G06N (AI/ML). | |
| limit | No | Rows per page (default 500, cap 1000). | |
| since | No | Only assignees whose latest grant is on or after this date (YYYY-MM-DD). | |
| state | No | Assignee state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| new_only | No | true = only first-time (newly-observed) assignees granting in this window. | |
| min_grants | No | Minimum grant count in the window. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It clearly describes pagination (cursor-based up to 1000/page), ordering, filtering, and output fields. It does not explicitly state read-only or idempotent behavior, but the query nature is evident. The inclusion of attribution and pricing adds useful context.
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 concise (a few sentences), front-loaded with the core purpose, and uses efficient language. Every sentence adds value, including the closing note on attribution and pricing.
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?
Without an output schema, the description fully explains what each row contains (assignee, grant count, CPC areas, window, inventor count, first-time flag, attribution). It covers all key aspects: pagination, filtering, ordering, and pricing. The tool's complexity is well-addressed.
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 coverage is 100% with detailed parameter descriptions and examples. The description lists the categories of filters (state, CPC, etc.) but adds no new semantics beyond the schema. The baseline of 3 is appropriate since the schema already provides full 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?
The description clearly states the tool's purpose: identifying companies with clusters of patents via a bulk feed of granted-patent assignees ordered by grant count. The verb 'feed' and resource 'granted-patent assignees' are specific, and the mention of R&D/growth signal distinguishes it from sibling tools like uspto_assignees_search and uspto_patents_search.
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 clear context for use (finding assignee clusters for growth signals) and lists available filters (state, min grants, CPC, etc.). However, it does not explicitly state when not to use this tool or suggest specific alternatives among siblings, though the bulk-feed nature implies it differs from search tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uspto_patents_searchAInspect
Which companies just got a US patent, and in what technology? Search recent granted patents (PatentsView, CC BY 4.0) by assignee organization (the company), inventor, CPC subclass/section, patent type, or assignee state/country and grant-date window. new_assignee=true isolates patents from an org with its first-ever grant (emerging/stealth signal); flipped_inventor=true finds a patent whose assignee gained an inventor from a prior different assignee (talent move). Public grants, observational. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | field:direction — patent_date | num_claims. Default 'patent_date:desc'. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | Assignee state code(s), CSV (US assignees). | |
| offset | No | Rows to skip, for paging. | |
| country | No | Assignee country code(s), CSV (ISO). | |
| assignee | No | Assignee organization (the company) name fragment. | |
| inventor | No | Inventor name fragment (last name or full name). | |
| cpc_section | No | CPC section letter(s), CSV (A-H, Y). | |
| patent_type | No | utility | design | plant | reissue, CSV. | |
| cpc_subclass | No | CPC subclass/class/section prefix(es), CSV. G06N=AI/ML, H04L=networking. | |
| new_assignee | No | true → only patents whose assignee org is new/emerging (first-ever grant recent). | |
| granted_after | No | Grant date on or after (YYYY-MM-DD). | |
| granted_before | No | Grant date on or before (YYYY-MM-DD). | |
| assignee_entity | No | Resolved entities.employers entity_id (UUID), exact match. | |
| flipped_inventor | No | true → only patents whose assignee gained an inventor from a prior different assignee. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. It notes 'Public grants, observational' and the price per row, implying read-only. However, it lacks details on authentication, rate limits, concurrency, or what happens if parameters conflict. Behavioral expectations are partially disclosed.
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?
Description is concise, starting with an engaging question that captures the tool's value. It packs useful context into two sentences without unnecessary verbosity. Could be slightly more structured, but effective.
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?
With 15 parameters and no output schema, the description should explain what results look like. It does not mention return fields or pagination behavior beyond offset/limit. The price is included, but output format is missing. Adequate but not fully complete.
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 covers all 15 parameters with descriptions and examples. Description adds value by explaining new_assignee as 'emerging/stealth signal' and flipped_inventor as 'talent move', providing context beyond schema. However, some parameters like state and country are straightforward and need no extra context.
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?
Description clearly states the tool searches recent granted patents by various criteria and highlights specific use cases (new_assignee, flipped_inventor). The purpose is clear but does not explicitly distinguish from sibling tool uspto_assignees_search, which focuses on assignees differently.
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?
Description implies usage for searching patents by assignee, inventor, CPC, etc., and mentions grant-date window. However, it does not specify when not to use it or provide alternatives among siblings. No explicit guidance on when to choose this over other patent tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
va_facilities_searchAInspect
Where are the VA's facilities, and of what type? Search Veterans Health Administration sites of care (medical centers, CBOCs, vet centers, health care centers) by state, city, name, or facility type. Returns location, address, coordinates, and — when the VA Lighthouse Facilities API key is configured — classification, health services, and operating status. A territory map for medical-device, imaging, staffing, and construction sellers into the VA. Public VA/HRSA records. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | City name fragment. | |
| name | No | Facility name fragment. | |
| limit | No | Max rows (default 25, cap 100). | |
| state | No | State code(s), CSV. | |
| offset | No | Rows to skip, for paging. | |
| facility_type | No | Facility type(s), CSV: vet_center, medical_center, outpatient_clinic, health_care_center, primary_care_cboc, multi_specialty_cboc. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses that the tool is read-only (returns data without modification), mentions pricing per row, and specifies conditions for enriched data (API key configuration). It does not mention authentication or rate limits, but is otherwise transparent.
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 somewhat verbose with extraneous phrases like 'A territory map for medical-device, imaging, staffing, and construction sellers into the VA' and 'Public VA/HRSA records.' It front-loads with a question, which is engaging but not optimally concise for an agent.
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?
Given 6 optional parameters and no output schema, the description adequately explains the tool's functionality, return values (location, address, coordinates, and optional enriched data), and pricing. It does not detail pagination or default behavior but is sufficient for a search tool.
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%, so the baseline is 3. The description lists criteria (state, city, name, facility type) that overlap with parameter descriptions in the schema, adding only a mention of additional use cases (e.g., 'territory map for sellers') but no new parameter semantics or syntax guidance.
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 starts with a clear question ('Where are the VA's facilities, and of what type?') and immediately specifies it searches Veterans Health Administration sites by state, city, name, or facility type. It lists return fields (location, address, coordinates, etc.) and mentions optional enriched data, making the tool's purpose specific and distinct from sibling tools that focus on opportunities or vendors.
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 states the tool can be used by state, city, name, or facility type, and notes when additional data is returned (with API key). It provides clear context for when to use, but does not explicitly exclude use cases or contrast with alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
va_feed_sdvosbAInspect
Which veteran-owned (SDVOSB / VOSB) vendors just showed fresh federal traction? Bulk feed over the verified veteran-owned vendor roster, newest-first by most recent award date: vendor, state, NAICS, certification, and its VA-specific + total federal award totals (banded). A set-aside-eligible vendor with recent traction is a teaming / growth target. Flat rows, cursor-paginated up to 1000/page, filterable by state, NAICS, certification, VA award, or since. Observational public records as filed. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page (default 500, cap 1000). | |
| naics | No | NAICS code prefix(es), CSV — matches the vendor's award NAICS. | |
| since | No | Only vendors whose most recent award is on or after this date (YYYY-MM-DD). | |
| state | No | Vendor state code(s), CSV. | |
| cursor | No | Opaque page cursor — pass the previous page's next_cursor unchanged. | |
| min_va_award | No | Minimum total $ this vendor has won from the VA. | |
| certification | No | sdvosb | vosb. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses that the feed is cursor-paginated, filtering available, and that records are observational public records. There are no contradictions, and no destructive actions are implied.
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 brief yet informative, front-loaded with a question that captures purpose, then specifics. Every sentence adds value, and the price note is appended efficiently. No unnecessary words.
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 7 optional parameters and no output schema. The description explains the output fields, ordering, pagination (cursor, cap), and price. It lacks explicit mention of response structure (e.g., presence of 'next_cursor'), but is otherwise complete for a feed tool.
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 coverage is 100%, so baseline is 3. The description adds context by explaining output fields, pagination, and filtering capabilities (state, NAICS, certification, VA award, since). It also mentions the price per row, which is not in 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?
The description clearly states that the tool provides a feed of SDVOSB/VOSB vendors with recent federal traction, sorted newest-first by award date. It lists specific output fields (vendor, state, NAICS, certification, award totals) and distinguishes from siblings by focusing on veteran-owned vendors and feed format.
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 usage for identifying set-aside-eligible vendors for teaming/growth targets. It mentions filterability and price, but does not explicitly compare to sibling tools or state when not to use. Still, the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
va_opportunities_searchAInspect
What is the Department of Veterans Affairs soliciting right now? A VA-focused slice of the SAM.gov contract-opportunity pipeline (department = Veterans Affairs): search active VA solicitations by keyword, NAICS, set-aside (SDVOSBC, VOSB, SBA...), place-of-performance state, or posted date. Returns the solicitation, NAICS/PSC, set-aside, deadline, and link — VA medical-center construction, equipment, and services buys for device, construction, and staffing sellers. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Keyword in the solicitation title. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV. | |
| since | No | Posted on or after this date (YYYY-MM-DD). | |
| state | No | Place-of-performance state code(s), CSV. | |
| offset | No | Rows to skip, for paging. | |
| setaside | No | Set-aside code(s), CSV: SDVOSBC, VOSB, SBA, 8A... | |
| posted_after | No | Posted on or after this date (YYYY-MM-DD). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must convey behavioral traits. It mentions the tool is a search returning specific fields and includes a cost per row. However, it does not state if the operation is read-only, whether any side effects exist, or rate limits. The 'search' verb implies safety, but it's not explicit.
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 informative and front-loaded with a clear question. It briefly lists components and target audience. While it could be slightly shorter, it remains efficient and well-structured without unnecessary redundancy.
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 search tool with 8 parameters and no output schema, the description adequately explains the domain, available filters, and expected return fields. It mentions pagination via offset but does not elaborate on result set limits beyond the 'limit' parameter. Overall, it provides sufficient context for an AI agent to understand the tool's capabilities.
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 coverage is 100% with each parameter described. The description adds context around the available filters (e.g., set-aside codes) but does not provide additional semantics beyond listing them. Baseline of 3 is appropriate as the schema already does the heavy lifting.
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?
Clearly states it searches for VA solicitations from SAM.gov, with specific filters like keyword, NAICS, set-aside, state, and posted date. Distinguishes from siblings by focusing exclusively on the VA contract-opportunity pipeline, making its purpose unambiguous.
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?
Indicates it is a VA-focused slice of SAM.gov, implying it should be used for VA-related solicitations. However, it does not explicitly state when to use this tool versus broader alternatives like govcon_opportunity_search or mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
va_vendors_searchAInspect
Which verified veteran-owned businesses can I target or team with? Search SDVOSB / VOSB firms (from federal award records carrying the veteran-owned certification flag) by state, name, certification, NAICS, UEI, minimum dollars won FROM the VA, or most-recent award date (since). Returns the vendor, award footprint, VA-won total, and resolved entities-graph id — a seller target list AND a set-aside teaming signal. Public USAspending records; not a certification-status determination. [price: $0.05/row]
| Name | Required | Description | Default |
|---|---|---|---|
| uei | No | Recipient Unique Entity Identifier (SAM UEI). | |
| name | No | Vendor name fragment. | |
| limit | No | Max rows (default 25, cap 100). | |
| naics | No | NAICS code prefix(es), CSV — matches any of the vendor's award NAICS. | |
| since | No | Most recent award on or after this date (YYYY-MM-DD). | |
| state | No | Vendor state code(s), CSV. | |
| offset | No | Rows to skip, for paging. | |
| min_va_award | No | Minimum total $ this vendor has won FROM the VA. | |
| certification | No | sdvosb | vosb (CSV for both). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. It mentions public data source and pricing, but lacks explicit disclosure on read-only nature, auth needs, or rate limits. Partial but not fully transparent.
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 paragraph that front-loads the purpose with a question, then details. It is concise with no wasted words. Pricing note is extra but useful; could be more structured but overall efficient.
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?
Given no output schema, the description explicitly states return content and data source. It covers key aspects like certification values and limitations. Completeness is strong for a search tool with 9 parameters.
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%, so baseline is 3. The description adds context about return data (vendor, award footprint, etc.) but does not add extra semantics beyond schema for individual parameters.
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 clearly states the tool searches for verified veteran-owned businesses (SDVOSB/VOSB) from federal award records, listing specific resources and actions. It distinguishes from siblings by focusing on veteran certification and VA awards.
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 starts with a motivating question and lists search criteria, but does not explicitly provide when-not-to-use instructions or mention alternative tools. Sibling context implies differentiation, but direct guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenanceProvides keyless access to US FMCSA motor-carrier registry data, enabling lookup of DOT/MC numbers, names, operating authority, and safety information.11MIT
- AlicenseAquality-maintenanceUnified API for Government Data and Web Scraping100
- AlicenseBqualityCmaintenanceQuery 20 structured datasets from AI agents — healthcare providers (9M NPI records), SEC EDGAR filings, PACER federal courts, USPTO patents and trademarks, OFAC sanctions screening, crypto whale wallets, DeFi liquidation signals, Polymarket smart money, economic indicators (FRED/BLS), federal contracts, NOAA weather, and OTC shell risk scoring. Pay per query, no subscriptions751MIT
- AlicenseAqualityBmaintenanceWe sell open source compliance, scientific, and government data.21472MIT