nullary
Server Details
Negative results intelligence for drug discovery — query measured failures via MCP.
- 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 2.9/5 across 35 of 35 tools scored. Lowest: 1.4/5.
Most tools have clearly distinct purposes by targeting specific failure types (e.g., ADMET, ADC, bispecific). However, the high number of similarly named 'search_failed_*' and 'search_*_failures' could cause confusion without careful reading, and subtle overlaps exist (e.g., search_failed_adcs vs search_adc_linker_failures are related but distinct).
All tool names follow a consistent verb_noun pattern with snake_case. The verbs 'search_', 'get_', and 'list_' are used appropriately and predictably, with no mixing of conventions.
With 35 tools, the server is on the high side but still appropriate for the broad domain of pharmaceutical failure data across many modalities. Each tool covers a specific niche, though some consolidation might be possible.
The tool surface is remarkably comprehensive, covering failures across small molecules, antibodies, ADCs, bispecifics, PROTACs, oligonucleotides, peptides, vaccines, CRISPR, and more. It includes meta-queries for indicators and targets, leaving no obvious dead ends for agents exploring failure data.
Available Tools
35 toolsget_compoundARead-onlyIdempotentInspect
A compound (structure, name, max clinical phase) + its full negative profile across modalities/sources.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| chembl_id | No | ChEMBL molecule ID, e.g. CHEMBL941. | |
| inchi_key | No | Compound InChIKey (provide one of inchi_key, chembl_id, or pubchem_cid). | |
| pubchem_cid | No | PubChem Compound ID (CID). |
Output Schema
| Name | Required | Description |
|---|---|---|
| compound | No | Identity: pref_name, chembl_id, inchi_key, max_phase. |
| findings | No | Every negative finding for this molecule. |
| query_metadata | Yes | Echo of the resolved query. |
| returned_count | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and no destructive actions. The description adds context about returning the full negative profile across modalities/sources, which goes beyond annotations. It does not contradict 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 a single, concise sentence that effectively communicates the tool's purpose without 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?
Given the presence of an output schema and 100% parameter coverage, the description is sufficiently complete. It covers the main function, though it does not mention pagination or tier filters, which are documented 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 coverage is 100%, so the baseline is 3. The description does not add meaning beyond what the schema already provides for parameters like chembl_id, inchi_key, etc. It is adequate but not enhanced.
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 compound's structure, name, max clinical phase, and full negative profile, distinguishing it from sibling tools that focus on specific failure searches.
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 retrieving a compound's details and negative profile, but it does not explicitly state when to use it versus alternatives like search_inactive_compounds or get_target_landscape. Sibling tools are all search tools, so usage is somewhat implied 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_coverageARead-onlyIdempotentInspect
Per-modality and per-source coverage stats (honest Phase-1 numbers).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| total | No | |
| by_modality | No | Per-modality finding counts. |
| curated_total | No | |
| by_source_type | No | Per-source finding counts. |
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds context about the data (Phase-1, honest numbers) but does not disclose additional behaviors beyond what annotations provide.
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?
One sentence under 15 words, front-loaded with key information. Every word serves a purpose; 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 zero parameters, comprehensive annotations, and an existing output schema, the description is complete. It specifies the output dimensions (modality, source) and data quality, which is sufficient for a simple retrieval 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?
No parameters exist, so schema coverage is 100%. Baseline score of 4 applies as the description does not need to add parameter information.
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 coverage statistics, broken down by modality and source, with an emphasis on 'honest Phase-1 numbers'. This is specific and distinguishes it from sibling tools like get_compound or search_safety_failures.
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. However, as a zero-parameter read-only tool, usage is straightforward and implied by the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_finding_provenanceBRead-onlyIdempotentInspect
Full provenance + detail for a single finding by id.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | finding UUID |
Output Schema
| Name | Required | Description |
|---|---|---|
| finding | No | The finding with source, DOI/PMID, assay context, and confidence tier. |
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, indicating safe, repeatable, and open-ended behavior. The description adds that it returns 'full provenance + detail,' which provides some context beyond annotations but does not disclose limits or specifics of the response.
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 at two words, front-loading the key action and resource. No superfluous information; every part 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 the simple one-parameter tool with a detailed output schema and rich annotations, the description is adequate for basic understanding but lacks explanation of what 'provenance' and 'detail' entail. It could be more complete by clarifying the return 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 the parameter 'id' described as 'finding UUID'. The description mentions 'by id', which reinforces the schema but adds no new semantic meaning. Baseline score 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 provides 'full provenance + detail for a single finding by id,' effectively describing the action and resource. However, it does not differentiate from sibling tools like 'get_compound' or 'get_coverage', which could be ambiguous if similar in nature.
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 like 'get_compound' or 'list_models'. The description merely states what it does, leaving the agent to infer usage context without exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_model_cardARead-onlyIdempotentInspect
Per-target Layer-1 model card: training counts and held-out scaffold-split metrics (ROC-AUC, PR-AUC, Brier, calibration). Accepts a gene symbol (e.g. EGFR) or UniProt accession (e.g. P00533).
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | gene symbol or UniProt accession (required) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint false, indicating safety. The description adds context about the specific metrics and accepted identifier formats, enhancing transparency without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently convey purpose, outputs, and inputs. No extraneous information; 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?
With an output schema present, the description need not detail return values. It covers inputs and outputs adequately for a simple retrieval tool. Could mention that it's per-target but already implied by 'per-target'.
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 has 100% coverage with description for the single parameter target. The description adds examples (EGFR, P00533) and clarifies alternative input formats (gene symbol or UniProt), providing value 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 specifies the verb 'get' and resource 'model card' with explicit outputs (training counts, ROC-AUC, PR-AUC, Brier, calibration) and input type (gene symbol or UniProt). It clearly distinguishes from sibling tools which are mostly search tools or get_target_landscape/list_models.
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 model card for a specific target but does not explicitly state when to use this tool versus alternatives like get_target_landscape or list_models. No exclusions or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_target_landscapeARead-onlyIdempotentInspect
Target 'graveyard' / exhaustion index: how many distinct compounds/agents have been tried against a target and failed, broken down by modality and outcome. Answers 'how picked-over is this target?'. Accepts a gene symbol (e.g. EGFR) or a UniProt accession (e.g. P00533).
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | gene symbol or UniProt accession (required) |
Output Schema
| Name | Required | Description |
|---|---|---|
| summary | No | One-line natural-language summary. |
| by_outcome | No | Per-outcome counts. |
| by_modality | No | Per-modality failed-agent counts. |
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds behavioral context about the return structure (breakdown by modality and outcome) and confirms it is a query tool. No contradictions, and the description adds value beyond 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 two sentences with zero wasted words. It front-loads the purpose and then specifies inputs. Every 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 the tool's low complexity (one parameter, clear annotations, output schema present), the description is sufficiently complete. It covers the query purpose, input format, and output breakdown. Minor omission: no mention of pagination or limits, but output schema likely covers that.
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 repeats the accepted input types with examples, adding minor value. No additional meaning beyond 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: returning a 'graveyard/exhaustion index' of failed compounds against a target, broken down by modality and outcome. It answers a specific question ('how picked-over is this target?') and specifies accepted input types. This distinguishes it from sibling tools that focus on specific failure types or entities.
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 assessing target exhaustion. However, it does not explicitly compare with alternatives or state when not to use it. The context signals include many sibling search tools, but no direct guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsARead-onlyIdempotentInspect
Summary of the Layer-1 inactivity-scoring model registry: how many per-target models, split by family, and median scaffold-split ROC-AUC.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, nondestructive). Description adds that it returns a summary, which is consistent. No additional behavioral details needed beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is informative, front-loaded with the key purpose, and contains 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?
Given zero parameters and an output schema, the description fully covers the tool's functionality. No gaps in what the agent needs to understand.
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?
No parameters exist, so the description does not need to add parameter meaning. Baseline of 4 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 provides a summary of the model registry with specific metrics (counts per target, split by family, median ROC-AUC). It distinguishes itself from siblings like search tools or entity-specific getters.
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 as a registry overview, but no explicit guidance on when to use versus alternatives (e.g., get_model_card for details). No exclusions or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_top_targetsARead-onlyIdempotentInspect
Coverage browse: the most heavily-pursued ('graveyard') targets, ranked by recorded negative findings. Optional family filter (kinase, gpcr, protease, nuclear_receptor, ion_channel, transporter, phosphatase, other).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| family | No | target family filter (optional) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query_metadata | Yes | Echo of the resolved query. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive. The description adds valuable behavioral context: results are ranked by 'recorded negative findings' and the 'graveyard' label explains the purpose. This goes beyond annotations by clarifying the data source and ranking criterion.
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 with no fluff. The first sentence front-loads the purpose and key ranking criterion. Every word adds value; there is 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 tool's low complexity (two optional parameters, output schema exists), the description covers purpose, filter capability, and ranking basis. It lacks an explicit statement that the output is a list of targets, but that is clear from 'targets' and sibling context. Minor improvement would be mentioning it returns a list, but not essential due to 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%, but the description adds value by enumerating possible values for the 'family' parameter (kinase, gpcr, etc.), which is not present in the schema. The 'limit' parameter is well-documented in schema. Overall, the description enriches the 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 the tool lists 'graveyard' targets ranked by negative findings, with an optional family filter. The verb is implicit ('list') but unambiguous, and the resource ('targets') is stated. It distinguishes from sibling search tools by being a browse 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?
The description implies usage for browsing heavily-pursued targets, but does not explicitly state when to use this tool versus alternatives (e.g., search_target_history). No when-not or explicit alternative recommendations are provided, only implied by the 'coverage browse' label.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_adc_linker_failuresBRead-onlyIdempotentInspect
ADC failures attributed to linker chemistry.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive nature. Description adds no behavioral context (e.g., output structure, pagination, or auth requirements), but consistent 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?
Extremely concise single sentence. It states the purpose without extraneous text, but could benefit from slightly more detail to improve usefulness.
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 full schema documentation and annotations, the description lacks high-level context about what constitutes a 'failure', how linker chemistry attribution is determined, or what the output represents. Leaves agent with many 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?
Schema coverage is 100% with descriptions for all 6 parameters. Description adds no additional parameter information, so 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?
Description clearly states the resource (ADC failures) and the specific attribution (linker chemistry). It is distinct from siblings like search_failed_adcs and search_admet_failures, though it does not explicitly differentiate itself.
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 on when to use this tool compared to siblings (e.g., search_failed_adcs for broader ADC failures). The description does not mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_admet_failuresCRead-onlyIdempotentInspect
Small-molecule ADMET failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral information beyond what annotations already provide (readOnlyHint, openWorldHint, idempotentHint). It does not mention any operational details like rate limits, authentication, or specific 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 extremely short (4 words), which is concise but at the cost of completeness. It is front-loaded but insufficient for an agent to understand the tool's 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?
Given the presence of 6 parameters and many siblings, the description is too sparse. It fails to provide a high-level summary of what the tool returns, how filters work, or pagination behavior, despite an output schema existing.
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 parameters are already well-documented. The description adds no additional parameter context, meeting the baseline 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 'Small-molecule ADMET failures' is a noun phrase that identifies the subject and scope, but lacks a clear verb indicating what the tool does (search, retrieve, list). It distinguishes from siblings like 'search_admet_failures_all_modalities' by limiting to small molecules, but remains vague overall.
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 over alternatives. The sibling list includes many search tools for different failure types, but the description does not explain context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_admet_failures_all_modalitiesCRead-onlyIdempotentInspect
ADMET failures across ALL modalities.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the tool's safety profile is clear. The description adds no additional behavioral context (e.g., data source, update frequency, or permissions), but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (3 words) and front-loaded, which is concise. However, it may be too terse to convey the tool's role adequately, potentially sacrificing clarity 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?
Given the tool has 6 optional parameters, an output schema, and many closely related sibling tools, the description lacks sufficient context. It does not explain what 'ADMET failures' entails or how this tool's broader scope differs from more specific searches, leaving gaps 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 coverage is 100%, and all parameters have descriptions in the schema. The description does not supplement the schema with any extra meaning or usage hints, so it does not add value beyond what is already 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 'ADMET failures across ALL modalities' indicates the tool retrieves ADMET failures broadly. It distinguishes itself from sibling tools like 'search_admet_failures' by specifying 'all modalities', but the meaning of 'modalities' is left undefined, making the purpose somewhat 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?
No guidance is provided on when to use this tool versus alternatives such as 'search_admet_failures' or modality-specific tools. The description does not clarify the intended use case or conditions for choosing this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ancestry_specific_failuresBRead-onlyIdempotentInspect
Ancestry-specific CRISPR failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, indicating a safe read. The description adds no behavioral traits beyond stating the domain. It does not mention pagination, filtering behavior, or data origin.
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 phrase, extremely concise. It front-loads the subject. However, it could be slightly expanded to include a verb without losing 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 complexity of the tool (6 parameters, output schema), the description is minimal. While annotations cover safety, the description fails to elaborate on the concept of 'ancestry-specific' or how it differs from other failure searches, leaving a gap in contextual understanding.
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 tool description does not add any additional parameter semantics beyond what the schema already 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 'Ancestry-specific CRISPR failures' specifies the resource and type of failures, and combined with the tool name 'search', it implies a search action. It distinguishes from sibling tools by focusing on ancestry-specific failures. However, the description itself lacks an explicit verb, making it slightly unclear without the name.
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 usage guidance is provided. The description does not indicate when to use this tool versus other search failure tools, nor does it mention any prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_bispecific_format_failuresCRead-onlyIdempotentInspect
Bispecific format/engineering failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds no additional behavioral context (e.g., response structure, pagination details, or what constitutes a 'format failure'). Minimal added value beyond 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 extremely short (one phrase), which is concise but at the expense of informativeness. While it lacks clutter, it does not earn its place by adding useful 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 6 optional parameters, a rich sibling set, and the need to distinguish from 'search_failed_bispecifics', the description is far too minimal. It does not explain what a 'format failure' is or what the tool returns, though the output schema exists to cover return values.
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 well-documented parameters like 'tier', 'limit', and 'offset'. The description adds no extra parameter meaning, so baseline score of 3 applies.
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 'Bispecific format/engineering failures' is a tautology of the tool name and title. It does not include a verb like 'search' or 'list', and fails to differentiate from the sibling tool 'search_failed_bispecifics'.
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 such as 'search_failed_bispecifics' or other failure-specific searches. There is no mention of preconditions, exclusions, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_developability_failuresCRead-onlyIdempotentInspect
Antibody developability failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the tool is safe and idempotent. The description adds no further behavioral context (e.g., pagination, tier effects), but annotations already cover the key safety profile.
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 short but at the expense of clarity. A single noun phrase does not adequately convey purpose or usage.
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 full schema coverage and an output schema (not shown), the description fails to explain what 'developability failures' are or how to effectively use the tool. A richer description is needed for a 6-parameter 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 parameters are well-documented in the schema. The description does not add extra meaning, but the baseline of 3 is appropriate given full 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 'Antibody developability failures' is a noun phrase lacking a verb, making it unclear what the tool does beyond the name. It does not distinguish from siblings like search_admet_failures or search_safety_failures.
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 on when to use this tool versus alternatives. Sibling tools cover various failure types, but the description provides no context for selection or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_drug_drug_interaction_failuresDRead-onlyIdempotentInspect
Drug-drug interaction failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral context beyond what the annotations already provide (readOnlyHint, openWorldHint, idempotentHint, destructiveHint). It does not mention pagination, filtering behavior, or any side effects, despite the annotations being minimal.
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 short (three words) but under-specified. It fails to provide essential information, making it insufficient rather than 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 tool has 5 parameters (including a filter for outcome and compound) and an output schema exists, the description is completely inadequate. It does not explain what the tool returns or how to use the parameters 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 all parameters are described in the schema. However, the description itself adds no additional meaning beyond the parameter names and enum values. The 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 'Drug-drug interaction failures.' is a tautology of the tool name and title. It lacks a verb, does not specify what action the tool performs (search, list, etc.), and does not distinguish it from sibling tools like search_admet_failures or search_safety_failures.
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 the 30+ sibling tools. There are no conditions, prerequisites, or alternative suggestions, leaving the agent to guess the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_adcsCRead-onlyIdempotentInspect
ADCs that failed at any stage.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, non-destructive. The description adds no behavioral context such as what 'failed' means, what stages exist, or any side effects. It fails to extend beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
At six words, the description is extremely concise but at the cost of clarity. It reads as a fragment rather than a complete sentence, sacrificing informativeness 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 6 parameters, a rich output schema, and 33 sibling tools, a single phrase is grossly insufficient. The description omits key context: what 'failed' encompasses, typical use cases, or relationship to similar tools.
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 has 100% description coverage, so parameters are well-documented. The description adds no parameter-specific meaning beyond the schema, achieving the baseline score.
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 'ADCs that failed at any stage' states the tool's purpose clearly, but lacks a verb and does not differentiate from many sibling search tools with similar naming patterns. It is minimally 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?
No guidance is provided on when to use this tool versus alternatives like search_failed_clinical_antibodies or search_inactive_compounds. The description is too brief to convey usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_bispecificsCRead-onlyIdempotentInspect
Bispecifics that failed at any stage.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the tool's safety is clear. The description adds the behavioral constraint that it searches across all failure stages ('any stage'), which is useful but minimal. No further behavioral details are 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 very concise at one sentence, but it is merely a noun phrase that could be more structured. It lacks front-loading of key information like the action performed.
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 and many siblings describing different failure categories, the description is incomplete. It does not mention the output format, pagination behavior, or the purpose of the tier parameter. The presence of an output schema does not fully compensate for the lack of explanatory 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 description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the parameter descriptions in the schema; it does not explain how parameters interact or provide usage 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 states what the tool returns ('Bispecifics that failed at any stage') but does not use a verb to describe the action. The name and title indicate a search function, but the description itself is a noun phrase. It does not differentiate from sibling 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?
There is no guidance on when to use this tool versus the many sibling failure-search tools. The single sentence provides no use-case context or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_clinical_antibodiesCRead-onlyIdempotentInspect
Discontinued/terminated clinical antibodies.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral information beyond annotations. Annotations already indicate read-only, idempotent, non-destructive nature. Description could mention typical results or 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?
Very concise at 3 words, but effectively communicates core purpose. However, it is a fragment rather than a complete sentence, which may be slightly less clear.
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 presence of an output schema and annotations, the description is minimal but lacks context on scope (e.g., what constitutes 'clinical antibodies') and does not help distinguish from many similar sibling tools.
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 clear definitions for all 6 parameters. The tool description does not add extra meaning, so baseline score applies.
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 'Discontinued/terminated clinical antibodies' clearly indicates the resource and state, but lacks a verb. The tool name 'search_failed_clinical_antibodies' implies the action, and the phrase is distinct 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?
No explicit guidance on when to use this tool versus alternatives like 'search_failed_adcs' or 'search_developability_failures'. The description provides no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_essentiality_screensCRead-onlyIdempotentInspect
Non-dependency / failed essentiality screens.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, which the description does not supplement. No contradictions exist, but no additional behavioral context (e.g., data freshness, rate limits) is 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?
A single fragment without a clear subject-verb-object structure. While short, it sacrifices clarity for brevity and does not earn its place as a complete sentence.
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 having an output schema and fully described parameters, the description omits the tool's primary verb and return context. It is insufficient for an agent to understand the tool's full purpose without inferring from the name and title.
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 description adds no further semantic value 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 'Non-dependency / failed essentiality screens' identifies the subject matter but lacks a verb, forcing reliance on the tool name and title to infer action ('Search'). It vaguely distinguishes from siblings by specifying the failure type.
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 on when to use this tool versus alternatives like search_admet_failures or search_safety_failures. The agent must rely on naming conventions and sibling list to infer domain coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_guidesCRead-onlyIdempotentInspect
Failed/ineffective CRISPR guides.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds no behavioral context beyond confirming it deals with failed guides. It does not contradict annotations, but also does not add value.
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 short sentence, which is too brief. It lacks structure and does not front-load key information like typical usage or parameter hints.
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 the tool has an output schema and 6 parameters, the description is insufficient. It does not mention available filters (tier, target, outcome, etc.) or explain what 'failed/ineffective' means, leaving the agent without enough context to use it 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 fully documents all 6 parameters. The tool description does not add any additional meaning beyond what the schema provides. 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 tool name and description clearly indicate it searches for failed CRISPR guides. The sibling tools cover different modalities, so it is distinguishable. However, the description is very brief and could be more explicit about the resource being searched.
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. With many sibling tools for different failure types, the description should indicate typical use cases or relative benefits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_oligonucleotidesBRead-onlyIdempotentInspect
ASOs/siRNAs that failed engagement/developability.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, making the safety profile clear. The description adds that the tool returns failed engagement/developability results, but does not elaborate on the concept of 'failed' or any limitations beyond the openWorldHint annotation.
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 at one clause, front-loading the key resource. While very short, it avoids redundancy and is efficient for a tool with simple parameters.
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, a sibling list with 31 entries, and no output schema shown, the description is incomplete. It fails to clarify the action (search), the meaning of 'failed engagement/developability', and how it differs from related sibling tools like 'search_oligo_delivery_failures'.
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%; the input schema provides detailed descriptions for all 6 parameters. The tool-level description adds no additional parameter context, so it meets the baseline for adequate 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 identifies the resource (ASOs/siRNAs that failed engagement/developability) but lacks an explicit verb like 'search' or 'list', relying on the tool name and title for action context. It effectively distinguishes the tool from siblings by specifying the modality and failure type.
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 is provided on when to use this tool versus its many siblings (e.g., 'search_oligo_delivery_failures'). The description does not mention alternatives, prerequisites, or 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.
search_failed_peptide_therapeuticsCRead-onlyIdempotentInspect
Failed peptide therapeutics.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior, so the description adds no behavioral context. It does not disclose any additional traits such as result format or pagination behavior, which would be helpful.
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 (three words), but it is under-specified for a tool with six parameters and many siblings. Conciseness should not come at the cost of missing essential 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's complexity (6 parameters, many sibling tools, and an output schema), the description is completely inadequate. It fails to explain what the tool returns, how filters work, or how it differs from similar tools.
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 input schema fully documents all six parameters. The description adds no extra meaning, but the baseline of 3 is appropriate as the schema already provides adequate 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 'Failed peptide therapeutics.' is vague and lacks a verb or action. It merely restates the tool name without specifying that it searches or filters. The purpose is unclear, especially given the many sibling 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?
No guidance on when to use this tool versus alternatives like search_failed_adcs or search_failed_bispecifics. The description does not mention any selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_protacsARead-onlyIdempotentInspect
PROTACs that failed degradation/ternary/permeability.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds value by specifying the failure modalities (degradation, ternary, permeability) that the tool filters for, beyond what annotations provide.
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 clearly conveys the purpose without any fluff. It earns its place by focusing on the key distinguishing feature of the tool.
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 the output schema exists and the input schema is fully documented, the description is adequate but minimal. It lacks details about default behavior or pagination, but these are covered 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%, so the baseline is 3. The description does not add parameter-specific information beyond the schema, but it does set the overall context for 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 'PROTACs that failed degradation/ternary/permeability' clearly specifies the resource (failed PROTACs) and the failure categories, distinguishing it from sibling tools like search_failed_bispecifics or search_protac_e3_issues. The verb 'search' is implied by the tool name and type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the many sibling tools, such as search_protac_e3_issues or search_inactive_compounds. It does not mention exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_replicationsBRead-onlyIdempotentInspect
Findings that failed to replicate.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety. Description adds no extra behavioral context, such as pagination or result format, but does not contradict 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?
Single sentence, very concise. Front-loaded with core concept, but could be slightly more informative without losing 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?
Description is too brief given the tool has 6 parameters and an output schema. It does not explain what qualifies as a failed replication, how outcome filters work, or any other contextual details, leaving gaps despite schema descriptions.
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 has 100% description coverage for all 6 parameters. Description adds no parameter information beyond the schema, so 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 'Findings that failed to replicate' clearly indicates the tool returns failed replication findings. It is distinct from many sibling tools focused on specific failure types, though it lacks a verb like 'search' or '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?
No guidance on when to use this tool versus alternatives. Does not specify when not to use or mention any prerequisites or related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_selectivityDRead-onlyIdempotentInspect
Small molecules that failed selectivity.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds no behavioral context. It does not contradict annotations, but it fails to add value beyond what the structured annotations provide.
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?
Extremely brief (two words), but this conciseness sacrifices essential information. Not front-loaded with actionable content; it is essentially a fragment.
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?
Highly inadequate for a tool with many siblings and an output schema. The description fails to explain the purpose, output, or how it differs from other failure-search tools. No context is provided for the agent to make an informed decision.
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 parameter descriptions cover 100% of the parameters, so the description does not need to add much. The tool description adds no additional meaning to the parameters, which is acceptable given the 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 is a noun phrase, not a verb+resource. It vaguely states 'Small molecules that failed selectivity' but does not specify the action (search, list, filter) or the data source. It fails to distinguish from many similar sibling tools like search_inactive_compounds or search_safety_failures.
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 on when to use this tool versus alternatives. No mention of prerequisites, limitations, or exclusions. The description provides no usage context whatsoever.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_failed_vaccinesCRead-onlyIdempotentInspect
Failed/terminated vaccines (by pathogen/indication).
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| indication | No | disease/indication |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds no behavioral detail beyond the fact that it searches for failed/terminated vaccines. It does not mention pagination, return format, or any constraints like 'returns up to limit 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, concise sentence. It is front-loaded and contains no unnecessary words or 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 existence of an output schema and annotations, the description is still too minimal. It does not explain the scope of vaccine failures (e.g., stages, reasons) or the significance of the 'tier' parameter. The tool has 6 optional parameters; providing more context would improve usability.
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 does not add meaning beyond the schema; it only mentions 'by pathogen/indication' which loosely maps to the 'indication' parameter. No additional context for the 'tier', 'target', or 'outcome' 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 'Failed/terminated vaccines (by pathogen/indication)' clearly identifies the tool's purpose as searching for failed vaccines with optional filtering. The verb 'search' is implied, and 'by pathogen/indication' hints at the main filter, though the schema uses 'indication' only. It distinguishes from sibling tools focused on other modalities like antibodies or ADCs.
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 search_failed_clinical_antibodies or search_vaccine_immunogenicity_failures. The description lacks explicit context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_inactive_compoundsCRead-onlyIdempotentInspect
Inactive small-molecule compound-target pairs.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint = false. The description adds no additional behavioral context beyond what annotations provide, such as pagination behavior or the scope of results. It merely restates the resource.
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 (one short noun phrase) but lacks structure. It does not front-load a verb or clearly explain the tool's function. While no excess words, it sacrifices clarity 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?
Despite having an output schema and well-documented parameters, the description fails to state what the tool does in plain terms. It does not explain the purpose, use case, or expected output, leaving the agent with minimal actionable information.
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 alone documents all 6 parameters with descriptions and defaults. The description adds no extra meaning or context about how parameters interact or their role in the search; it is a baseline score.
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 is a noun phrase ('Inactive small-molecule compound-target pairs.') that identifies the resource but does not include a verb to explicitly state the tool's action. It vaguely implies search/listing but lacks the clarity of a specific verb+resource structure like 'Search for inactive compound-target pairs.' The sibling tools have similar naming, so differentiation is weak.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It neither states context nor gives any exclusions or prerequisites. The single sentence does not help an agent choose this tool over similar 'search_failed_*' tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_indication_historyCRead-onlyIdempotentInspect
ALL failed approaches for an indication across every modality.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| indication | Yes | indication (required) |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims to return 'ALL' failed approaches, which may contradict the 'openWorldHint': true annotation, implying results may not be exhaustive. This is a potential contradiction. Annotations already cover safety (readOnlyHint, destructiveHint), but the description adds no further behavioral context beyond scope.
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 short (one sentence) and front-loaded with 'ALL,' but it lacks structure and does not fully earn its place given the complexity of the tool. The single sentence is terse rather than optimally 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 tool complexity (multiple parameters, output schema, many siblings), the description is insufficiently complete. It omits usage guidelines and behavioral details beyond a single scope statement, relying heavily on structured fields which are not explained in 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%, and each parameter already has a description. The tool description does not add any additional meaning or usage context for the parameters, so the 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 states it returns 'ALL failed approaches for an indication across every modality,' which is specific about the verb (search), resource (failed approaches for an indication), and scope (all modalities). However, it does not differentiate from similar sibling tools like 'search_target_history' or 'search_pathogen_history', and 'indication' is not explicitly defined.
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. The sibling list includes many similar search tools, but the description gives no context for selection, such as when to prefer this over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_mechanism_failuresCRead-onlyIdempotentInspect
Approaches that failed for a mechanism (by target).
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the description does not need to repeat those. However, the description adds no insight into what constitutes a 'mechanism failure' or the nature of the returned data, which is a missed opportunity. It is adequate but not additive.
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. It is front-loaded and efficient, though the brevity compromises clarity. It could be expanded slightly without losing 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 an output schema exists, return values are covered. However, the description does not explain the scope of 'mechanism failures' or how the 'by target' filtering works in relation to other parameters. With six parameters and rich annotations, more context 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 description coverage is 100%, so the input schema already documents all six parameters thoroughly. The description adds no additional parameter-level information. 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 'Approaches that failed for a mechanism (by target)' clarifies it involves failed approaches and filtering by target, but the phrase 'approaches that failed' is vague and does not distinguish it from siblings like 'search_safety_failures' or 'search_inactive_compounds'. The title from annotations adds clarity but the description itself lacks specificity.
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 its many siblings (e.g., search_safety_failures, search_inactive_compounds). The description does not specify contexts, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_oligo_delivery_failuresCRead-onlyIdempotentInspect
Oligonucleotide delivery failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds no behavioral information beyond these, such as pagination or output nature, but does not contradict them.
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, which is concise, but it is too brief to be useful. It lacks substance and fails to earn its place by providing 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 tool has 6 parameters, an output schema, and many sibling tools, the description is severely incomplete. It does not explain the tool's purpose, scope, or result format, leaving the agent with insufficient information.
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 parameters well. The description does not add any additional meaning or context for parameters 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 'Oligonucleotide delivery failures' merely restates the tool name, providing no additional specificity about what constitutes a delivery failure or how this search differs from sibling tools like search_failed_oligonucleotides.
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 the many sibling tools for different failure types (e.g., search_failed_guides, search_failed_oligonucleotides). The description lacks any context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_pathogen_historyBRead-onlyIdempotentInspect
Vaccine + antimicrobial + antibody failures for a pathogen.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| pathogen | Yes | pathogen name (required) |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds the scope of failures (vaccine, antimicrobial, antibody) but does not disclose pagination, ordering, or error 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 one sentence with 6 words, extremely concise. While efficient, it could benefit from a slightly more informative structure without losing 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?
Given the complexity (4 params, output schema, 33 siblings), the description is incomplete. It omits pagination details, does not mention the required pathogen parameter, and provides no usage guidance.
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 description does not need to explain parameters further. The baseline of 3 is appropriate as the description adds no additional 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 it returns vaccine, antimicrobial, and antibody failures for a pathogen, distinguishing it from sibling tools that focus on specific failure types. However, it could be more explicit about the search verb and the combined nature.
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 the many sibling search tools. An agent would not know it serves as a cross-cutting search for all failure types for a pathogen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_peptide_stability_issuesCRead-onlyIdempotentInspect
Peptide stability/half-life failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds no behavioral context beyond what annotations provide, such as pagination behavior or response structure.
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 (a single phrase), but it lacks structure—no complete sentence, no separation of purpose from usage. It is not verbose, but fails to front-load critical 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 tool has 6 parameters, a complex output schema (implied), and many siblings. The description is a bare minimum phrase, leaving the agent without sufficient context to understand what the tool returns or how to use it 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 parameters are fully documented in the input schema. However, the description adds zero meaning about parameters—it does not mention that filtering by target, outcome, or compound is possible.
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 'Peptide stability/half-life failures' which clearly indicates the tool searches for issues related to peptide stability. It is specific enough to distinguish from sibling failure-search tools, though it could be more explicit about the resource (e.g., 'returns findings').
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 'search_failed_peptide_therapeutics' or other failure searches. The description does not mention exclusions or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_protac_e3_issuesCRead-onlyIdempotentInspect
PROTAC E3-ligase recruitment / ternary failures.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds no behavioral context beyond the literal phrase, such as default pagination, filtering behavior, or what constitutes a 'failure'. It does not contradict 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 extremely short (6 words) but lacks structure. It is more of a subject line than a usable description. While concise, it sacrifices clarity and utility.
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 having an output schema and 6 parameters, the description fails to explain the scope of 'issues', the meaning of 'ternary failures', or how this tool differs from similar sibling tools. It is incomplete for effective agent 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 coverage is 100%, and the schema descriptions are adequate. The tool description adds no additional meaning to parameters, so the schema bears the full burden. 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 that the tool deals with PROTAC E3-ligase recruitment or ternary failures, which is specific and distinguishes it from general PROTAC failure tools. However, it lacks an explicit verb like 'search' or 'list', relying on the name to imply the 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?
No guidance is provided on when to use this tool versus siblings like search_failed_protacs or search_mechanism_failures. The description does not mention conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_safety_failuresCRead-onlyIdempotentInspect
Clinical/preclinical safety failures across modalities.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and non-destructive. The description adds no additional behavioral context such as pagination details, rate limits, 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?
Extremely concise (one short phrase) but lacks structure. While brevity is good, it sacrifices clarity and does not front-load key information about what the tool does.
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, many siblings, and an output schema, the description is too minimal. It does not explain what constitutes a safety failure, the data sources, or the intended use case, leaving the agent underinformed.
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 parameters have descriptions), so the description does not need to add extra meaning. The tool description contributes no parameter information beyond the schema, meeting 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 states it covers clinical/preclinical safety failures across modalities, which is clear but vague. It does not differentiate from many similar sibling tools like search_admet_failures or search_developability_failures, so the agent may not know which to use.
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 on when to use this tool versus alternatives. The description provides no context about when it is appropriate or preferable to other search tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_target_historyARead-onlyIdempotentInspect
ALL failed approaches against a target across every modality.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | Yes | UniProt accession or gene symbol (required) |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the description doesn't need to reiterate safety. However, the claim 'ALL failed approaches' may slightly conflict with openWorldHint, but no explicit contradiction. Description adds no new behavioral context beyond weak alignment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, front-loaded with the core action and 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?
Output schema exists so return format is covered. The description is minimal but covers purpose. Lacks usage guidance among siblings, but given rich annotations and schema, 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 covers 100% of parameters with descriptions. The tool description does not add any additional meaning, so baseline of 3 applies.
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 'ALL failed approaches against a target across every modality' clearly states the tool retrieves all failed histories for a target, distinguishing it from modality-specific siblings like search_failed_adcs or search_safety_failures.
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 on when to use this versus the many modality-specific sibling tools. The description does not mention prerequisites, context, or exclusions, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_vaccine_immunogenicity_failuresCRead-onlyIdempotentInspect
Failed vaccine immunogen designs.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails). | curated |
| limit | No | Maximum number of findings to return (1–100, default 25). | |
| offset | No | Number of findings to skip before this page, for pagination (default 0). | |
| target | No | UniProt accession or gene symbol | |
| outcome | No | outcome filter (inactive, failed_safety, terminated, …) | |
| compound | No | compound name, ChEMBL ID, or InChIKey |
Output Schema
| Name | Required | Description |
|---|---|---|
| findings | No | Matching negative findings (same shape as the REST /findings endpoint). |
| has_more | No | True when more results exist beyond this page. |
| coverage_note | No | Honest coverage caveat for thin Phase-1 modalities (present only when relevant). |
| query_metadata | Yes | Echo of the resolved query — tool, limit, offset, and any applied presets. |
| returned_count | No | Findings returned in this page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, idempotentHint, etc., indicating safe read behavior. The description adds the subject matter but no new behavioral traits (e.g., pagination, filtering behavior). It does not contradict 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 extremely short (4 words) but lacks a verb and is not a complete sentence. While concise, it sacrifices clarity and structure 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?
Given 6 parameters, many sibling tools, and an output schema, the description is completely inadequate. It fails to explain what constitutes a failure, how results are categorized, or how this tool differs from similar searches.
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 having a description. The tool description adds no parameter-level information, 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 is a noun phrase 'Failed vaccine immunogen designs.' It indicates the tool returns failed designs but lacks a verb to specify the action (search/retrieve). It does not distinguish this tool from similar siblings like 'search_failed_vaccines', which likely overlap.
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 such as 'search_failed_vaccines' or 'search_inactive_compounds'. No when-not or context clues.
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!