A2A Peptides
Server Details
Agent-to-Agent (A2A) + Model Context Protocol (MCP) hub for peptides.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- A2A-Peptides/A2A-Peptides
- GitHub Stars
- 0
- Server Listing
- a2a-peptides
TDQS
Scored across 20 tools
Most tools map cleanly to distinct resources or workflow steps, and the gate/pre-gate/post-gate grouping is clear. The main ambiguity is between get_label_and_indication and get_safety_label, which both reference label pointers, though the descriptions do separate them.
The overwhelming majority of tools use lowercase snake_case verb_noun names like get_item, create_order_intent, resolve_jurisdiction, and verify_serialization. The pattern is broken only by a2a_handoff and, to a lesser extent, gate_transaction, so the naming is mostly consistent with minor deviations.
At 20 tools, the set is on the heavy side and will increase the agent's selection cost. Each tool appears purposeful for the broad regulatory and commercial workflow, but the count sits in the borderline-heavy range rather than the optimal 3–15.
The workflow is broadly covered: substance and pathway lookups, gate decisioning, supplier/availability/price discovery, CoA and serialization checks, order-intent creation, A2A handoff, and audit. Minor gaps exist—there is no read-back for prior decisions or audit lines and no order-intent status/update tool—but they are workaround-able for the server's referral-focused scope.
Available Tools
20 toolsa2a_handoffA2A HandoffAInspect
Hand off over Agent-to-Agent (A2A). With an allow/require_rx decision: the order intent goes to the licensed counterparty's agent (envelope + card URL). With a deny for a patient, the public or an unauthorized actor: returns real licensed destinations from the provider directory (dispensers, prescribers) filtered by the decision's jurisdiction, state/province and practice scope — a referral, never a vial.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| intent_id | No | ||
| decision_id | No | ||
| practice_scope | No | ||
| counterparty_card_url | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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 that allow/require_rx sends the order intent to a licensed counterparty's agent, while deny returns directory-filtered destinations and adds 'never a vial' to clarify it does not dispense medication. This is valuable behavioral context beyond the title.
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 at two sentences and front-loaded with the core action. The second sentence packs necessary conditional logic, though the stylistic close '— a referral, never a vial' adds emphasis without new 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?
The description covers the two main branches and an output schema exists, so return values are handled. However, it does not explain behavior when parameters are null (which all are by default), nor what limit controls, making it incomplete for full agent autonomy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explicitly mentions practice_scope and counterparty_card_url, and hints at decision_id and intent_id through the decision scenario, but limit is entirely undocumented. This leaves an agent without enough meaning to correctly set all 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 specifies a distinct action: 'Hand off over Agent-to-Agent (A2A)' and details two decision-driven outcomes (allow/require_rx vs deny). It names the resource (order intent, licensed destinations) and the filtering criteria, separating it from siblings like create_order_intent or find_licensed_supplier.
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 through the conditional 'With an allow/require_rx decision... With a deny...' but no explicit alternatives or 'when not to use' guidance is given. An agent must infer from context that this tool should be used for handoff decisions, not for other transactions like gating or pricing, which are covered by siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_presentationsCompare PresentationsCInspect
Compare two or more authorised presentations side by side (ids as for get_item).
| Name | Required | Description | Default |
|---|---|---|---|
| decision_id | No | ||
| presentation_ids | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full responsibility for behavioral disclosure. It does not mention any side effects, permissions required, outcome limits (e.g., how many presentations can be compared), or what is returned. The term 'authorised' hints at a filtering behavior, but it is not explained. The description is too sparse to inform the agent of important behavioral 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 a single sentence that is concise and front-loads the purpose. It avoids unnecessary wording. However, its brevity comes at the cost of missing essential details, so it is not well-rounded. It is appropriately short but under-specifies.
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 two parameters, no annotations, and an output schema (not shown), the description is too thin to be complete. It does not explain decision_id at all, does not clarify what 'authorised' means, and does not describe any comparison result details. The reference to get_item helps, but it is insufficient for an agent to call this tool correctly without additional 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 0%, so the description must explain the parameters. It only vaguely mentions 'presentations' which corresponds to presentation_ids, but it does not explain that decision_id is optional or what it represents. It does not specify the format or constraints of the IDs, despite referencing get_item. The description adds almost no semantic value beyond the parameter names themselves.
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 compares presentations side by side, which is specific and distinguishable from simply retrieving a presentation. It also references get_item for the format of IDs, providing a helpful pointer. However, it does not elaborate on what 'authorised' means or what kind of comparison is performed, so it is not fully explicit.
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 hint that IDs are as for get_item, which indirectly tells users to consult that tool for ID format. However, it does not state when to use this tool versus alternatives (e.g., when needing a single presentation vs multiple), nor does it mention any limitations or exclusions. There is no guidance on 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.
create_order_intentCreate Order IntentAInspect
Create an order intent for a cleared item after the gate; the intent carries reason_code + rule_set_version and settles by x402 on peptides-x402.ai.
| Name | Required | Description | Default |
|---|---|---|---|
| tenant | No | ||
| ship_to | No | ||
| quantity | Yes | ||
| decision_id | Yes | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. It does reveal that the intent 'settles by x402 on peptides-x402.ai' and carries reason_code + rule_set_version, which is useful. However, it does not state authorization needs, reversibility, or whether settlement is synchronous, leaving an incomplete behavioral picture.
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 dense sentence that front-loads the action and context, then adds settlement details. Every clause contributes useful information with 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?
An output schema exists and the tool's lifecycle position is clear, but with no annotations and 0% schema description coverage, an agent still needs to infer the meaning of several parameters and the operational implications of x402 settlement. It is minimally 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 description coverage is 0%, so the description must compensate by explaining the parameters, but it does not describe presentation_id, quantity, decision_id, tenant, or ship_to. The mentioned reason_code and rule_set_version do not even appear as schema parameters. Param names are somewhat self-explanatory, but no real semantic guidance is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb 'Create' and resource 'order intent', with precise scope 'for a cleared item after the gate'. Mentions settlement by x402 on a specific endpoint, which helps distinguish it from sibling tools like gate_transaction and search_cleared_items.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'after the gate' clearly implies this tool is used after gate_transaction has cleared the item. It does not explicitly name alternatives or exclusion conditions, but the contextual placement 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.
find_licensed_supplierFind Licensed SupplierAInspect
Licensed parties for a presentation in a jurisdiction (tenant as a parameter). Requires a decision_id from gate_transaction with allow or require_rx.
| Name | Required | Description | Default |
|---|---|---|---|
| tenant | No | ||
| decision_id | Yes | ||
| jurisdiction | Yes | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral burden. It usefully discloses the dependency on gate_transaction outcome and the accepted decision values bell, but it stops short of explaining side effects, read-only guarantees, or failure behavior when conditions are not met.
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 entire description is one dense sentence that front-loads the core purpose and then adds the critical precondition. There is no filler; every word contributes semantic 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?
An output schema exists, so return-value details are covered elsewhere. The description supplies the essential domain context and precondition, making it nearly complete for a straightforward lookup tool. It could be enhanced by explicitly distinguishing it from related lookup tools like resolve_jurisdiction or get_item, but current gaps are minor.
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 description coverage, so the description must compensate. It maps presentation_id and jurisdiction via the first clause, decision_id via the gate_transaction requirement, and tenant explicitly. However, precise formats, optionality semantics, and the meaning of tenant are still underspecified.
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 names a specific resource ('licensed parties') and scope ('presentation in a jurisdiction'), and the title/name supplies the action. It is distinct enough from sibling tools like get_item or resolve_actor, though it is expressed as a noun phrase rather than an explicit verb sentence.
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 a required precondition: a decision_id from gate_transaction with allow or require_rx. This tells the agent when the tool is appropriate, though it does not explicitly enumerate when not to use it or compare it to alternative sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gate_transactionGate TransactionBInspect
The gate: allow, deny or require_rx for a substance (name, INN or unii:), a pathway (licensed_medicine · lawful_compounding · cosmetic · food_or_supplement · ruo_not_cleared), an actor class, a channel and a ship-to. Returns a frozen reason code, the rule-set version, the source page and a decision_id for the downstream tools.
| Name | Required | Description | Default |
|---|---|---|---|
| channel | No | ||
| pathway | Yes | ||
| ship_to | Yes | ||
| substance | Yes | ||
| credential | No | ||
| actor_class | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It explains the possible outcomes (allow, deny, require_rx) and the returned fields (frozen reason code, rule-set version, source page, decision_id). It also specifies accepted formats for substance and pathway values. However, it does not state whether the tool is read-only, has side effects, or how the decision is derived, leaving some uncertainty.
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 that front-loads the purpose and lists inputs and outputs without waste. It is concise yet covers the key aspects, though slightly long due to the enumeration of pathway options.
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 6 parameters, no schema descriptions, no annotations, and an output schema, the description provides a reasonable overview. It names all inputs (except credential implicitly) and states the outputs, which partially compensates for the lack of schema detail. However, it does not explain the meaning of actor_class, channel, ship_to, or credential, and does not clarify required vs optional usage beyond the schema. An agent might still be uncertain about how to populate these fields 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 schema has no parameter descriptions (0% coverage), so the description must compensate. It adds meaning for 'substance' (name, INN, or unii:) and 'pathway' (enumerates allowed values), but gives no semantics for 'actor_class', 'channel', 'ship_to', or 'credential'. This partial coverage is helpful but incomplete for a 6-parameter tool.
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: it gates transactions by returning allow, deny, or require_rx for a given substance, pathway, actor class, channel, and ship-to. It names specific inputs and outputs, making the action and resource clear. It does not explicitly differentiate from sibling tools, but the unique 'gate' role is evident.
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. It implies it is used to determine transaction authorization, but does not state conditions for use, exclusions, or mention any sibling tools. The agent must infer the context from the tool name and purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_availabilityGet AvailabilityCInspect
Availability of a presentation from a licensed party, after the gate (decision_id required).
| Name | Required | Description | Default |
|---|---|---|---|
| tenant | No | ||
| decision_id | Yes | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not state whether the tool is read-only, whether it has side effects, or what happens if the presentation is unavailable. It only hints at a precondition (decision_id), which is more about parameter semantics than behavior. This is a significant gap for a tool that likely performs a stateful check.
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 with no wasted words, but it is under-specified. It lacks structure (e.g., separate usage and parameter guidance) and could benefit from front-loading the core purpose more clearly. It is appropriately short but at the expense of necessary 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 that an output schema exists, return values do not need to be described, but the tool's purpose and parameters are still incomplete. The description provides a weak contextual hint ('after the gate') but fails to define what availability means or how it fits among the many sibling tools. For a tool with three parameters and a critical workflow position, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains that decision_id is required and relates it to the gate, but it does not clarify the meaning of presentation_id or tenant. Since two of the three parameters remain unexplained, the description only partially compensates for the missing 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 states the tool provides 'Availability of a presentation from a licensed party, after the gate' – a specific resource and a step in a workflow, but it does not clarify what 'availability' means (inventory, legal eligibility, etc.) or how it differs from similar tools like get_item or get_pathway_status. It is not a tautology but remains vague.
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 after a gate decision ('after the gate (decision_id required)') and notes the required decision_id, giving a clear contextual trigger. However, it does not explicitly state when not to use it or mention any alternative tools among the siblings, so the guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_compounding_eligibilityGet Compounding EligibilityAInspect
Whether a substance may be lawfully compounded in a jurisdiction and under which list or standard (503A/503B, provincial, magistral, Specials), from the register.
| Name | Required | Description | Default |
|---|---|---|---|
| substance | Yes | ||
| jurisdiction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden itself. It signals a read-only lookup ('from the register') and specifies the scope of the result (eligibility and applicable standard). It does not mention edge cases, authorization requirements, error behavior, or explicitly state that no data is modified, but the get/from-the-register language makes a read-only interpretation reasonable.
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 one focused sentence that front-loads the core outcome and adds a useful enumeration of the relevant standards (503A/503B, provincial, magistral, Specials). There is no filler, and every phrase contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter lookup, this description is minimally complete, especially given that an output schema exists to document return values. However, it lacks guidance on parameter value formats, relationships to sibling tools, and behavior for invalid or unknown inputs, which leaves an agent to infer important invocation 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 0%, so the description is the only source of parameter meaning. It does give both parameters clear semantic roles: a 'substance' that may be compounded and a 'jurisdiction' in which that determination is made. It stops short of providing accepted formats, examples, or constraints, so it only barely reaches an adequate level.
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: determining whether a substance may be lawfully compounded in a jurisdiction and which regulatory list or standard applies. It is specific and not easily confused with other substance-related tools, though it does not explicitly reference or differentiate from sibling 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?
Usage is implied: call this tool when you need compounding eligibility for a substance in a given jurisdiction. However, there is no explicit when-to-use/when-not-to-use guidance, and no mention of alternatives such as get_substance_record or resolve_jurisdiction, leaving sibling selection to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_enforcement_watchGet Enforcement WatchBInspect
Dated, URL'd enforcement events for a substance or jurisdiction: warning letters, import alerts, shortage-list changes, committee votes, proposed and final rules, seizures, state notices.
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | ||
| substance | No | ||
| jurisdiction | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that events are dated and URL'd and lists event types, but omits details like pagination, sorting, or whether all events are returned when filters are absent. It is not contradictory, but it is 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 front-loads the core purpose and lists event types efficiently. Every word adds value; there is 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?
The output schema covers return format, so that is not needed. However, the description fails to explain the 'since' parameter and offers no usage guidance. For a tool with only three optional parameters, this is incomplete but not severely lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain all parameters. It mentions 'substance' and 'jurisdiction' as filters, but completely omits 'since'. It does not explain how 'since' works, its format, or its default behavior. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns dated, URL'd enforcement events for a substance or jurisdiction, and enumerates specific event types (warning letters, import alerts, etc.). This distinguishes it from all sibling tools, none of which mention enforcement events.
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 given on when to use this tool versus alternatives, nor any exclusions or conditions. The description implies it is for enforcement events but does not explain when an agent should prefer it over, say, get_substance_record or search_cleared_items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_itemGet ItemBInspect
One authorised presentation by id (US package NDC, CA DIN, EU EMA number, KR MFDS item seq, CH Swissmedic authorisation/pack code, JP approved-list entry, or the catalogue id): brand, strength, form, route, device, pack, holder, status, offers (tenant is a parameter).
| Name | Required | Description | Default |
|---|---|---|---|
| tenant | No | ||
| decision_id | No | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does reveal the output fields and accepted ID formats, which is useful. But it doesn't explicitly state read-only behavior, error cases, permission requirements, or how tenant affects the result beyond being a 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 entire description is one dense sentence with no filler. It front-loads the core purpose and packs in useful specifics, though the long enumeration of ID types is slightly hard to parse. No redundant phrases.
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?
An output schema exists, so return-value documentation is not needed. However, the description leaves tenant semantics ambiguous (what does tenant change?) and decision_id unexplained. For a tool with zero schema descriptions and no annotations, this gap is significant and could lead to misparameterization.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning to presentation_id by listing the accepted ID types, and mentions tenant exists, but gives no detail on tenant's role. decision_id is completely absent from the description, leaving a required-adjacent parameter entirely unexplained.
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 action (get), the resource (authorised presentation by id), and enumerates the exact return fields (brand, strength, form, route, device, pack, holder, status, offers). The list of accepted ID types makes the scope explicit and distinguishes it from siblings like get_price or get_substance_record.
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?
Implied usage is clear: when you have one of the listed presentation identifiers and need the core presentation details, this is the tool. However, it gives no explicit when-not-to-use guidance or comparisons to alternatives such as get_availability or compare_presentations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_label_and_indicationGet Label And IndicationAInspect
Label and indication pointers for a licensed presentation only (US package NDC, CA DIN, EU EMA number).
| Name | Required | Description | Default |
|---|---|---|---|
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral transparency burden. It does disclose a key constraint: this tool works only for licensed presentations belanja and indicates that the output is pointers rather than full label content. But it does not describe behavior for unlicensed or invalid presentations, authentication needs, or error handling, so transparency is partial.
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 one short sentence with no filler. The core resource ('Label and indication pointers') is front-loaded, followed by the key scope constraint ('licensed presentation only'). Every word adds information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter lookup tool with an output schema, the description is minimally adequate: it names the resource, constrains scope, and hints at identifier formats. However, it leaves the mapping between presentation_id and the parenthetical identifiers implicithare, and it gives no usage guidance relative to siblings. This is sufficient for a simple tool but not richly 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 schema provides no description for presentation_id, so the description must compensate. It adds meaning by listing the accepted identifier types (US package NDC, CA DIN, EU EMA number), which presumably map to presentation_id. However, it does not explicitly state that presentation_id should be one of these values or explain formatting, so compensation is incomplete.
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 resource ('label and indication pointers') and the target scope ('licensed presentation only'), and it distinguishes itself from related tools like get_safety_label by focusing on licensed presentations with NDC/DIN/EMA identifiers. It lacks an explicit verb, but the title 'Get Label And Indication' supplies the action. Minor ambiguity remains in what 'pointers' means.
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 the tool: when you have a licensed presentation identified by a US package NDC, CA DIN, or EU EMA number. However, it does not explicitly state when not to use it or compare it to sibling tools like get_safety_label or get_item. The guidance is present only by inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_lot_coaGet Lot CoaCInspect
Certificate of analysis for a lawful lot of a presentation, where the pathway permits (decision_id required).
| Name | Required | Description | Default |
|---|---|---|---|
| lot | Yes | ||
| decision_id | Yes | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only mentions that decision_id is required, which is a parameter requirement, not a behavioral disclosure. It does not describe what happens if the pathway does not permit, error handling, or any side effects. This is a significant gap for a tool that likely has authorization checks.
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 main purpose and mentions the key requirement. It is not verbose and every word adds some value, though it could have included more guidance without sacrificing conciseness.
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 three required parameters and no annotations, the description is insufficiently complete. It does not explain how to obtain a lawful lot or decision_id, or what conditions make the pathway permit the action. The presence of an output schema covers return values, but usage context is lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain parameters, but it only mentions decision_id as required without explaining what it is. The parameters lot and presentation_id are not elaborated beyond their names. The description adds minimal meaning to 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 a certificate of analysis for a lot of a presentation, specifying the action and resource. It also mentions a condition ('where the pathway permits') that adds context. However, it does not explicitly differentiate from sibling tools like get_item or get_safety_label, though the specific COA purpose is distinct.
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?
There is no explicit guidance on when to use this tool versus alternatives. The phrase 'where the pathway permits' hints at a prerequisite but does not explain how to determine if the pathway permits or what other tools to consider. No alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pathway_statusGet Pathway StatusCInspect
The status of a substance on one pathway in one jurisdiction (frozen vocabulary), with effective date, rule-set version and source page.
| Name | Required | Description | Default |
|---|---|---|---|
| pathway | Yes | ||
| substance | Yes | ||
| jurisdiction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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 behavioral disclosure. It mentions 'frozen vocabulary' and lists response components (effective date, rule-set version, source page), but it does not explicitly state that this is a read-only operation, how errors or not-found cases are handled, or any permissions/rate limits.
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, compact sentence with no filler. It front-loads the core resource and then lists the key data returned. It is appropriately sized, though it sacrifices some instructive detail for brevity.
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 three required parameters, no schema descriptions, and no annotations, the description leaves the agent without enough context to correctly form a request. The output schema exists, so return format is covered, but parameter semantics and error behavior are absent, making the tool hard to invoke correctly on the first attempt.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning beyond the parameter names. 'Substance', 'pathway', and 'jurisdiction' appear in the description but without any definition, valid formats, examples, or constraints. The 'frozen vocabulary' note appears to refer to the status values, not the input 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 resource: the status of a substance on one pathway in one jurisdiction. It is distinguishable from siblings like get_availability or get_price by the pathway/jurisdiction focus, but it does not explicitly name any alternatives or use a verb like 'retrieve', so it stops short of full differentiation.
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?
There is no guidance on when to use this tool versus alternatives such as get_substance_record or get_item, nor any mention of prerequisites or exclusions. The description only defines what the tool returns, leaving the selection criteria to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_priceGet PriceBInspect
Price basis (list · contract · reimbursement) from a licensed party, after the gate (decision_id required).
| Name | Required | Description | Default |
|---|---|---|---|
| tenant | No | ||
| decision_id | Yes | ||
| presentation_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden, but it only states a precondition and data source. It does not disclose whether the operation is read-only, whether special authorization is needed, or what effects it may have.
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 compact line with no filler and front-loads the core resource. The parenthetical '(list · contract · reimbursement)' is slightly cryptic but not wasteful.
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?
Although an output schema exists, an agent still lacks enough context to call this correctly: the meaning of presentation_id, its relationship to decision_id, and the concept of 'the gate' are not explained. For a three-parameter tool with zero schema descriptions, this is a noticeable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it only restates that decision_id is required. presentation_id and tenant remain unexplained, and the description adds no real meaning beyond the required fields visible 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 title supplies the verb 'Get', and the description specifies the resource as the price basis (list, contract, reimbursement) from a licensed party after the gate. This distinguishes it from siblings like get_availability or get_item, though the description is a noun phrase rather than a complete statement of action.
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?
'After the gate (decision_id required)' provides a clear temporal precondition and the required identifier, so an agent knows when this tool applies. It does not name alternatives or exclusions, but the gate condition is a clear context signal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_safety_labelGet Safety LabelCInspect
Safety label pointers for licensed products (label page and the pharmacovigilance scheme of the jurisdiction).
| Name | Required | Description | Default |
|---|---|---|---|
| substance | Yes | ||
| jurisdiction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The phrase 'pointers' suggests the tool returns references rather than full label content, and the pharmacovigilance scheme element adds jurisdiction-specific behavior. However, with no annotations, the description does not disclose whether the operation is read-only, requires authorization, or what happens when no licensed product exists.
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?
A single sentence with no padding; every word contributes to the core meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and 0% schema coverage, the description omits usage guidance and parameter semantics, leaving critical gaps for an agent to call the tool correctly. The existence of an output schema does not remedy these gaps.
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 no descriptions and the tool description mentions only 'jurisdiction' contextually, providing no meaning for 'substance' or expected formats. With 0% schema coverage, the description fails to compensate.
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 identifies the resource as 'safety label pointers' for licensed products and mentions jurisdiction-specific pharmacovigilance scheme, which conveys the tool's function. However, it does not explicitly distinguish this from the sibling get_label_and_indication, so an agent might not know which to pick.
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?
There is no information about when to use this tool versus alternatives such as get_label_and_indication, nor any mention of prerequisites or selection criteria. The description only states what it returns, leaving usage decisions to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_substance_recordGet Substance RecordBInspect
One molecule: identifiers (INN, UNII, CAS, sequence hash), sourced aliases, class, one pathway row per jurisdiction × pathway, enforcement events, safety references. Every field carries its source page.
| Name | Required | Description | Default |
|---|---|---|---|
| substance | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does add useful context by stating that every field carries its source page, which helps the agent understand provenance of each value. However, it does not mention whether the substance parameter accepts INN, UNII, CAS, or another identifier, nor what happens if the substance is not found.
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 sentence that front-loads the core scope ('One molecule') and then lists the included data categories. Every phrase earns its place, with no filler or repetition of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema exists and the description enumerates the major output categories, so return-value documentation is not a major gap. The definition is still incomplete because the required parameter is ambiguous and no usage guidance differentiates this tool from closely related siblings, leaving the agent to guess how to invoke it reliably.
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 has 0% description coverage for its single required parameter, and the description only says 'one molecule' without explaining what format the substance parameter should take. This is a significant gap because the agent cannot tell whether to pass an INN, UNII, CAS, or some other identifier.
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 resource as a single molecule and enumerates its content: identifiers, aliases, class, pathway rows, enforcement events, and safety references. It is distinct enough from siblings like get_enforcement_watch and get_safety_label by describing a combined record, though it does not explicitly contrast itself with them.
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 used when you need a comprehensive substance record with identifiers, pathway, enforcement, and safety data. It does not state when to prefer this over related siblings such as get_safety_label or get_enforcement_watch, nor does it mention any exclusions or context where this tool would be inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_auditLog AuditCInspect
Write the audit line for a gate decision or an order intent (returns the line id).
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| note | No | ||
| reference_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does disclose that this is a write operation and that it returns a line id, which is useful. However, it does not cover side-effect scope, idempotency, failure behavior, or whether the audit line is persisted immediately.
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 front-loaded sentence with no filler. It packs the action, purpose, and return value together efficiently, though it is arguably too sparse to fully serve its purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with three undocumented parameters, no annotations, and no usage context, the description is too thin. Even with an output schema present, the agent has to guess what the parameters mean and when to invoke the tool relative to its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it does not explain what 'kind', 'reference_id', or 'note' actually mean or which values are valid. The phrase 'gate decision or an order intent' hints that 'kind' distinguishes these, but that link is not made explicit.
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 states a specific verb and resource ('Write the audit line') and names the two use cases it serves ('gate decision or an order intent'), plus the return value ('line id'). This makes the tool's role clear and reasonably distinct from getter siblings like get_pathway_status or get_price. It could be sharper about what an 'audit line' is, but the verb+resource+context is solid.
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 given on when to call this tool versus siblings such as gate_transaction or create_order_intent. The phrase 'for a gate decision or an order intent' implies it follows those actions, but there is no explicit 'use after X' or 'use instead of Y' instruction, leaving the timing and selection logic to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_actorResolve ActorAInspect
Resolve the actor class and channel. Classes: authorized_trading_partner and its members (manufacturer · repackager · wholesale_distributor · dispenser · third_party_logistics_provider; cosmetic_responsible_person · nhp_licence_holder on the non-drug pathways), prescriber, the referral classes patient and public, and agent (inherits the class of the credential it presents; none returns DENY_UNLICENSED_AGENT). Returns communication_class: trade_information or public.
| Name | Required | Description | Default |
|---|---|---|---|
| credential | No | ||
| actor_class | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses nontrivial behavior: agent inherits the class of the credential it presents, and a null credential produces DENY_UNLICENSED_AGENT. It also states the communication_class output domain, providing behavioral detail beyond the schema. It does not mention side effects, permissions, or rate limits, but for a pure resolution step the key edge cases are covered.
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 the main action, but the dense parenthetical enumeration of classes and pathways is hard to scan. Every phrase adds information, though formatting as a list would 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?
For a 2-parameter resolver with an output schema, the description covers the class vocabulary, agent inheritance rule, denial behavior, and return domain. It leaves 'channel' and 'referral classes' partially undefined, but the core selection and invocation semantics are present.
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 0%, but the description compensates by enumerating valid actor_class values and explaining the credential edge case ('none returns DENY_UNLICENSED_AGENT'). It does not specify the expected credential format, but the agent can infer it is a class-bearing token.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Resolve the actor class and channel') and enumerates the exact class vocabulary, which clearly differentiates it from sibling resolve_jurisdiction. The list of actor classes and communication_class values leaves no ambiguity about the 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?
No statement about when to call this tool versus alternatives such as resolve_jurisdiction or gate_transaction. The only guidance is implicit in the name and class list, so an agent must infer placement in the workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resolve_jurisdictionResolve JurisdictionAInspect
Resolve a ship-to (e.g. 'US-CA', 'CA-ON', 'MX', 'EU-DE', 'GB', 'KR', 'JP', 'SG', 'CH') to the gate's jurisdiction (US · CA · MX · EU · GB · KR · JP · SG · CH), the EU member and any state, provincial or cantonal overlay.
| Name | Required | Description | Default |
|---|---|---|---|
| ship_to | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It does disclose the mapping behavior and expected output components (jurisdiction, EU member, overlay). However, it does not state whether the operation is read-only, how invalid ship-to codes are handled, or whether normalization occurs.
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?
A single dense sentence, yet every clause earns its place: the verb, the parameter examples, and the output components. No filler or redundancy, and the key action is 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?
For a simple one-parameter resolver with an output schema present, the description sufficiently covers input format and output structure. It omits edge cases or error handling, but the operation is straightforward and the description provides enough context for an agent to 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?
With 0% schema description coverage, the description compensates by explaining the lone parameter 'ship_to' through examples ('US-CA', 'CA-ON') and by stating what it resolves to. This gives the agent a clear sense of the expected input format and semantics beyond the bare string type.
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 ('Resolve') and resource ('ship-to') and clarifies the output: a gate's jurisdiction, EU member, and any state/provincial/cantonal overlay. The provided examples ('US-CA', 'CA-ON', etc.) distinguish it clearly from sibling tools like 'resolve_actor' by focusing on shipping destination codes.
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 context—mapping a ship-to code to jurisdiction—but does not state when to choose this tool over alternatives or provide any exclusions. There is no explicit when/when-not guidance, leaving the agent to infer the appropriate scenario from the examples.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_cleared_itemsSearch Cleared ItemsAInspect
Presentations that passed the gate for a jurisdiction, pathway and actor class (a query by substance, brand or holder). Only cleared statuses are returned.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| pathway | No | licensed_medicine | |
| actor_class | No | wholesale_distributor | |
| decision_id | No | ||
| jurisdiction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full behavioral burden. It does disclose a key behavior: only cleared statuses are returned. It does not mention pagination, sorting, match semantics, or side effects; the search context implies a read-only operation, but more explicit behavioral disclosure would be valuable.
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 at two sentences and front-loads the core domain scope. The parenthetical about querying by substance, brand, or holder is efficient. The first sentence is a noun phrase without a main verb, but the overall structure is still easy to process.
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 six-parameter tool with no annotations and an output schema, the description explains the core search semantics and the required jurisdiction. However, the optional 'decision_id' is tied to the notion of cleared statuses but is never described, and pagination/limit behavior is also missing. It is adequate for a basic call 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 description coverage is 0%, so the description must compensate. It adds meaning to the 'query' parameter by describing it as a search by substance, brand, or holder, and it clarifies the role of jurisdiction, pathway, and actor_class as filter dimensions. However, 'limit' and especially 'decision_id' are not explained, leaving some optional parameters ambiguous.
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 identifies a specific resource ('presentations that passed the gate') and the relevant filter dimensions (jurisdiction, pathway, actor class), and clarifies that the query targets substance, brand, or holder. It also states that only cleared statuses are returned. It lacks an explicit verb like 'searches', but the resource and scope are still clear.
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 search context: cleared presentations for a jurisdiction, pathway, and actor class. The 'Only cleared statuses are returned' phrasing implies that it should not be used for uncleared records. However, it does not name sibling alternatives or explicitly state 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.
verify_serializationVerify SerializationBInspect
Verify a serialised pack (GTIN + serial + lot + expiry) against the serialisation regime of the jurisdiction (DSCSA · FMD · GB · KR; none-national elsewhere).
| Name | Required | Description | Default |
|---|---|---|---|
| lot | No | ||
| gtin | Yes | ||
| expiry | No | ||
| serial | Yes | ||
| jurisdiction | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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 behavioral disclosure. It states the verification action but does not disclose whether the operation is read-only, whether it modifies state, if it requires authentication or has side effects, or how it handles errors (e.g., invalid jurisdiction, missing lot/expiry). This is a significant gap for a tool that likely performs external checks or data validation.
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, tightly worded sentence that front-loads the core action and then packs the jurisdiction list. Every element earns its place—the verb, the resource components, and the regime scope. There is no fluff or redundancy, making it easy for an agent to parse quickly.
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 5 parameters, a non-trivial jurisdiction dimension, and an output schema (which explains return values), the description still leaves out critical context: it does not state whether lot and expiry are conditionally required, how to handle invalid jurisdiction codes, or what constitutes a successful verification (e.g., what the output indicates). It also does not disclose any prerequisites or side effects. For a verification tool that likely has edge cases, this is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does add meaning by listing the four pack components and enumerating the valid jurisdiction values (DSCSA, FMD, GB, KR, and 'none-national elsewhere'). However, it does not explain parameter formats (e.g., GTIN structure, date formats for expiry), nor does it clarify that lot and expiry are optional in the schema but may be required under certain regimes. The jurisdiction list is helpful, but other parameter semantics are left to 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: verifying a serialised pack (GTIN, serial, lot, expiry) against jurisdiction-specific serialisation regimes. It names specific regimes (DSCSA, FMD, GB, KR) and indicates behavior for non-listed jurisdictions, which distinguishes it from sibling tools like get_item or get_safety_label that retrieve data rather than verify compliance. The verb 'verify' and explicit resource make the action 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?
The description implies when to use the tool (when you need to verify a serialised pack against regulatory rules) but does not explicitly mention alternatives or when not to use it. It lacks comparative guidance against siblings like compare_presentations or gate_transaction, so an agent must infer the appropriate context. This is acceptable but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- Changed
a2a_handoff9 fields changed- added
Input schema / properties / decision_id / anyOfAdded value: +[ + { + "type": "string" + }, + { + "type": "null" + } +] - added
Input schema / properties / decision_id / defaultAdded value: +null - removed
Input schema / properties / decision_id / typeRemoved value: -"string" - added
Input schema / properties / intent_id / anyOfAdded value: +[ + { + "type": "string" + }, + { + "type": "null" + } +] - added
Input schema / properties / intent_id / defaultAdded value: +null - removed
Input schema / properties / intent_id / typeRemoved value: -"string" - added
Input schema / properties / limitAdded value: +{ + "default": 10, + "type": "integer" +} - added
Input schema / properties / practice_scopeAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - removed
Input schema / requiredRemoved value: -[ - "intent_id", - "decision_id" -]
- Changed
compare_presentations1 field changed- added
Input schema / properties / decision_idAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +}
- Changed
get_item1 field changed- added
Input schema / properties / decision_idAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +}
- Changed
search_cleared_items2 fields changed- changed
Input schema / properties / actor_class / defaultPrevious value: -"wholesaler"New value: +"wholesale_distributor" - added
Input schema / properties / decision_idAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +}
20 tool updates
- First observed
a2a_handoff - First observed
compare_presentations - First observed
create_order_intent - First observed
find_licensed_supplier - First observed
gate_transaction - First observed
get_availability - First observed
get_compounding_eligibility - First observed
get_enforcement_watch - First observed
get_item - First observed
get_label_and_indication - First observed
get_lot_coa - First observed
get_pathway_status - First observed
get_price - First observed
get_safety_label - First observed
get_substance_record - First observed
log_audit - First observed
resolve_actor - First observed
resolve_jurisdiction - First observed
search_cleared_items - First observed
verify_serialization
Related MCP Connectors
Real-time chat hub for AI agents — Claude Code, Cursor, Cline, Codex over MCP or REST.
Agent knowledge, private memory and coordination. Connect with MCP OAuth or an agent key.
AI-powered bioprotocol optimization — generate, search, and manage lab protocols via MCP
AI agent registry — search, discover, register, and connect agents via MCP.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceAn MCP server that connects AI agents to the PEPTOMA open DeSci peptide research platform, enabling peptide sequence analysis, feed search, and peer-review annotations.6 npmMIT- AlicenseNot gradedqualityCmaintenanceAn MCP server that gives LLM agents access to computational protein design tools.16Apache 2.0
- AlicenseNot gradedqualityCmaintenanceMCP-native scientific skills for reproducible computational biology and AI-driven drug-discovery workflows. It combines deterministic scientific tools with an MCP server to give AI agents real computational capabilities.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables LLM agents to design proteins, predict structures, score interfaces, and run molecular dynamics simulations through a unified interface.1Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.