nullary

Negative results intelligence for drug discovery — query measured failures via MCP.

Should I use this

Quality & Safety

B
Description quality
69%
Schema completeness
88%
Naming quality
95%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (31)

  • LOWTool 'search_failed_selectivity' description lacks action verbin search_failed_selectivity
  • LOWTool 'search_admet_failures' description lacks action verbin search_admet_failures
  • LOWTool 'search_failed_guides' description lacks action verbin search_failed_guides
  • LOWTool 'search_failed_essentiality_screens' description lacks action verbin search_failed_essentiality_screens
  • LOWTool 'search_ancestry_specific_failures' description lacks action verbin search_ancestry_specific_failures
  • LOWTool 'search_developability_failures' description lacks action verbin search_developability_failures
  • LOWTool 'search_failed_peptide_therapeutics' description lacks action verbin search_failed_peptide_therapeutics
  • LOWTool 'search_peptide_stability_issues' description lacks action verbin search_peptide_stability_issues
  • LOWTool 'search_failed_protacs' description lacks action verbin search_failed_protacs
  • LOWTool 'search_protac_e3_issues' description lacks action verbin search_protac_e3_issues

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~12,635Tokens (tool definitions)
~3.8 KBTypical response size
Significant attention impact (9.87% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "nullary": {
      "url": "https://mcp.nullary.ai/mcp"
    }
  }
}

Remote endpoints

https://mcp.nullary.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (35)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_inactive_compounds(target, compound, outcome, tier, limit, ...)

Inactive small-molecule compound-target pairs.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_selectivity(target, compound, outcome, tier, limit, ...)

Small molecules that failed selectivity.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_admet_failures(target, compound, outcome, tier, limit, ...)

Small-molecule ADMET failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_guides(target, compound, outcome, tier, limit, ...)

Failed/ineffective CRISPR guides.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_essentiality_screens(target, compound, outcome, tier, limit, ...)

Non-dependency / failed essentiality screens.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_ancestry_specific_failures(target, compound, outcome, tier, limit, ...)

Ancestry-specific CRISPR failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_developability_failures(target, compound, outcome, tier, limit, ...)

Antibody developability failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_clinical_antibodies(target, compound, outcome, tier, limit, ...)

Discontinued/terminated clinical antibodies.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_peptide_therapeutics(target, compound, outcome, tier, limit, ...)

Failed peptide therapeutics.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_peptide_stability_issues(target, compound, outcome, tier, limit, ...)

Peptide stability/half-life failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_protacs(target, compound, outcome, tier, limit, ...)

PROTACs that failed degradation/ternary/permeability.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_protac_e3_issues(target, compound, outcome, tier, limit, ...)

PROTAC E3-ligase recruitment / ternary failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_oligonucleotides(target, compound, outcome, tier, limit, ...)

ASOs/siRNAs that failed engagement/developability.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_oligo_delivery_failures(target, compound, outcome, tier, limit, ...)

Oligonucleotide delivery failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_vaccines(target, indication, outcome, tier, limit, ...)

Failed/terminated vaccines (by pathogen/indication).

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "indication": {
      "type": "string",
      "description": "disease/indication"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_vaccine_immunogenicity_failures(target, compound, outcome, tier, limit, ...)

Failed vaccine immunogen designs.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_adcs(target, compound, outcome, tier, limit, ...)

ADCs that failed at any stage.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_adc_linker_failures(target, compound, outcome, tier, limit, ...)

ADC failures attributed to linker chemistry.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_bispecifics(target, compound, outcome, tier, limit, ...)

Bispecifics that failed at any stage.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_bispecific_format_failures(target, compound, outcome, tier, limit, ...)

Bispecific format/engineering failures.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_admet_failures_all_modalities(target, compound, outcome, tier, limit, ...)

ADMET failures across ALL modalities.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_drug_drug_interaction_failures(compound, outcome, tier, limit, offset)

Drug-drug interaction failures.

Input Schema

{
  "type": "object",
  "properties": {
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_mechanism_failures(target, compound, outcome, tier, limit, ...)

Approaches that failed for a mechanism (by target).

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_failed_replications(target, compound, outcome, tier, limit, ...)

Findings that failed to replicate.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_safety_failures(target, compound, outcome, tier, limit, ...)

Clinical/preclinical safety failures across modalities.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol"
    },
    "compound": {
      "type": "string",
      "description": "compound name, ChEMBL ID, or InChIKey"
    },
    "outcome": {
      "type": "string",
      "description": "outcome filter (inactive, failed_safety, terminated, …)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_target_history(target, tier, limit, offset)

ALL failed approaches against a target across every modality.

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "UniProt accession or gene symbol (required)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": [
    "target"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_indication_history(indication, tier, limit, offset)

ALL failed approaches for an indication across every modality.

Input Schema

{
  "type": "object",
  "properties": {
    "indication": {
      "type": "string",
      "description": "indication (required)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": [
    "indication"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢search_pathogen_history(pathogen, tier, limit, offset)

Vaccine + antimicrobial + antibody failures for a pathogen.

Input Schema

{
  "type": "object",
  "properties": {
    "pathogen": {
      "type": "string",
      "description": "pathogen name (required)"
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": [
    "pathogen"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "findings": {
      "type": "array",
      "description": "Matching negative findings (same shape as the REST /findings endpoint).",
      "items": {
        "type": "object"
      }
    },
    "returned_count": {
      "type": "integer",
      "description": "Findings returned in this page."
    },
    "has_more": {
      "type": "boolean",
      "description": "True when more results exist beyond this page."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query — tool, limit, offset, and any applied presets."
    },
    "coverage_note": {
      "type": "string",
      "description": "Honest coverage caveat for thin Phase-1 modalities (present only when relevant)."
    }
  },
  "required": [
    "query_metadata"
  ]
}
🟢get_compound(inchi_key, chembl_id, pubchem_cid, tier, limit, ...)

A compound (structure, name, max clinical phase) + its full negative profile across modalities/sources.

Input Schema

{
  "type": "object",
  "properties": {
    "inchi_key": {
      "type": "string",
      "description": "Compound InChIKey (provide one of inchi_key, chembl_id, or pubchem_cid)."
    },
    "chembl_id": {
      "type": "string",
      "description": "ChEMBL molecule ID, e.g. CHEMBL941."
    },
    "pubchem_cid": {
      "type": "integer",
      "description": "PubChem Compound ID (CID)."
    },
    "tier": {
      "type": "string",
      "enum": [
        "curated",
        "all"
      ],
      "default": "curated",
      "description": "Confidence tier. 'curated' (default) returns the credible layer; 'all' also includes high-volume screening-grade rows (PubChem HTS inactives, CRISPR non-essential tails)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Number of findings to skip before this page, for pagination (default 0)."
    }
  },
  "required": []
}

Output Schema

{
  "type": "object",
  "properties": {
    "compound": {
      "type": "object",
      "description": "Identity: pref_name, chembl_id, inchi_key, max_phase."
    },
    "findings": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Every negative finding for this molecule."
    },
    "returned_count": {
      "type": "integer"
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "A compound's identity plus its full negative profile across modalities and sources."
}
🟢get_finding_provenance(id)

Full provenance + detail for a single finding by id.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "finding UUID"
    }
  },
  "required": [
    "id"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "finding": {
      "type": "object",
      "description": "The finding with source, DOI/PMID, assay context, and confidence tier."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "A single finding with full provenance."
}
🟢get_target_landscape(target)

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).

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "gene symbol or UniProt accession (required)"
    }
  },
  "required": [
    "target"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "by_modality": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Per-modality failed-agent counts."
    },
    "by_outcome": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Per-outcome counts."
    },
    "summary": {
      "type": "string",
      "description": "One-line natural-language summary."
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "Target exhaustion index — distinct agents tried-and-failed, by modality and outcome."
}
🟢list_top_targets(family, limit)

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).

Input Schema

{
  "type": "object",
  "properties": {
    "family": {
      "type": "string",
      "description": "target family filter (optional)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 25,
      "description": "Maximum number of findings to return (1–100, default 25)."
    }
  }
}

Output Schema

{
  "type": "object",
  "properties": {
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "The most heavily-pursued targets, ranked by recorded negative findings."
}
🟢list_models

Summary of the Layer-1 inactivity-scoring model registry: how many per-target models, split by family, and median scaffold-split ROC-AUC.

Input Schema

{
  "type": "object",
  "properties": {}
}

Output Schema

{
  "type": "object",
  "properties": {
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "Summary of the Layer-1 model registry: counts by family and median scaffold-split ROC-AUC."
}
🟢get_model_card(target)

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).

Input Schema

{
  "type": "object",
  "properties": {
    "target": {
      "type": "string",
      "description": "gene symbol or UniProt accession (required)"
    }
  },
  "required": [
    "target"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "Per-target Layer-1 model card: training counts and held-out scaffold-split metrics."
}
🟢get_coverage

Per-modality and per-source coverage stats (honest Phase-1 numbers).

Input Schema

{
  "type": "object",
  "properties": {}
}

Output Schema

{
  "type": "object",
  "properties": {
    "by_modality": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Per-modality finding counts."
    },
    "by_source_type": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Per-source finding counts."
    },
    "total": {
      "type": "integer"
    },
    "curated_total": {
      "type": "integer"
    },
    "query_metadata": {
      "type": "object",
      "description": "Echo of the resolved query."
    }
  },
  "required": [
    "query_metadata"
  ],
  "description": "Per-modality and per-source coverage counts."
}

Recommended Prompts

search_research
Search for information about [topic] using nullary
Expected tools: search_inactive_compounds
find_specific
Find [specific item] using nullary
Expected tools: search_inactive_compounds
retrieve_data
Get details about [item] from nullary
Expected tools: search_target_history
fetch_info
Fetch [information type] using nullary
Expected tools: search_target_history
list_items
List all [items] available in nullary
Expected tools: list_top_targets

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded35 tools
verifiedversion not recorded35 tools