AOP MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AOP_MCP_LOG_LEVEL | No | Application log level. | INFO |
| AOP_MCP_ENVIRONMENT | No | Controls defaults like permissive CORS and logging detail. | development |
| AOP_MCP_AUDIT_LOG_PATH | No | When set, appends hash-chained MCP tool-call audit records as JSONL while preserving the in-memory audit buffer used by replay packages. | |
| AOP_MCP_COMPTOX_API_KEY | No | API key for CompTox (required for assay mapping and higher quota). | |
| AOP_MCP_COMPTOX_BASE_URL | No | Base URL for CompTox enrichment calls. | https://comptox.epa.gov/dashboard/api/ |
| AOP_MCP_AOP_DB_SPARQL_ENDPOINTS | No | Comma-separated list of AOP-DB SPARQL endpoints (defaults to AOP-Wiki for fallback). | https://aopwiki.rdf.bigcat-bioinformatics.org/sparql |
| AOP_MCP_COMPTOX_BIOACTIVITY_URL | No | Base URL for CompTox Bioactivity API (required for assay mapping). | https://comptox.epa.gov/ctx-api/ |
| AOP_MCP_ENABLE_FIXTURE_FALLBACK | No | Set to 1 to serve fixture data when remote SPARQL endpoints are unavailable. | 0 |
| AOP_MCP_AOP_WIKI_SPARQL_ENDPOINTS | No | Comma-separated list of AOP-Wiki SPARQL endpoints. | https://aopwiki.rdf.bigcat-bioinformatics.org/sparql |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_aopsC | Search Adverse Outcome Pathways by text query. |
| get_aopB | Fetch a single AOP with metadata. |
| get_key_eventB | Fetch a single key event with OECD-style metadata fields. |
| list_key_eventsC | List key events for an AOP. |
| list_kersC | List key event relationships for an AOP. |
| get_kerB | Fetch a single key event relationship with plausibility, evidence, and quantitative-support text. |
| get_related_aopsB | Find AOPs related to a source AOP through shared key events or KERs. |
| assess_aop_confidenceB | Build an OECD-style heuristic confidence summary for an AOP from AOP-, KE-, and KER-level evidence text. |
| find_paths_between_eventsB | Find directed KE/KER paths between two events within a selected AOP. |
| map_chemical_to_aopsC | Map a chemical to related AOPs using AOP-DB and CompTox. |
| map_assay_to_aopsA | Given an assay identifier, return related AOPs. Do not pass AOP IDs. |
| search_assays_for_key_eventA | Given a key event, return candidate assays using KE-derived gene and phrase terms. This is a discovery helper, not a curated KE-to-assay mapping. |
| list_assays_for_aopB | List assay candidates for one AOP using linked stressor chemicals and CompTox bioactivity, with diagnostics explaining empty results. |
| get_assays_for_aopC | Given one AOP identifier, return assay candidates. Use this when you have an AOP ID and want assays. |
| discover_orphan_stressors_for_aopA | Start from one AOP's strongest assay candidates, pull active assay chemicals from CompTox, exclude already curated AOP stressors, and return mechanistic orphan chemical candidates with diagnostics. |
| discover_orphan_stressors_for_aopsB | Aggregate orphan chemical candidates across multiple AOPs by combining each pathway's strongest assay evidence, excluding stressors already curated anywhere in the selected AOP set, and ranking chemicals by cross-AOP support. |
| list_assays_for_aopsB | Aggregate and deduplicate assay candidates across multiple AOPs, with per-AOP diagnostics for empty results. |
| get_assays_for_aopsB | Given multiple AOP identifiers, return aggregated assay candidates. Use this when you have a list of AOP IDs. |
| list_assays_for_queryB | Given a phenotype or mechanism query, search AOPs and return aggregated assay candidates with query and per-AOP diagnostics. |
| discover_orphan_stressors_for_queryC | Given a phenotype or mechanism query, search AOPs, aggregate orphan chemical candidates across the selected AOPs, and return query plus per-AOP diagnostics. |
| export_assays_tableB | Export aggregated assay candidates as CSV or TSV from a query or explicit AOP list. |
| export_draft_review_artifactC | Export a scientist-facing draft review artifact as markdown or json by rendering the unified draft review bundle, including an optional publication-style markdown profile. |
| list_saved_draft_review_artifactsA | List saved local draft review artifacts from the configured artifact output directory, with optional draft, profile, format, and subdirectory filters. |
| export_draft_replay_packageB | Export a deterministic replay package for one draft version, including graph/provenance integrity, Registry support, optional saved artifact verification, and recent MCP audit records. |
| export_tool_call_audit_log_evidenceB | Export a bounded, chain-verified evidence package from the durable MCP tool-call audit JSONL log. |
| list_tool_call_audit_recordsA | List recent process-local MCP tool-call audit records with optional tool-name and status filters, plus durable audit persistence status. |
| verify_tool_call_audit_logB | Verify the durable MCP tool-call audit JSONL hash chain from the configured audit log path or an explicit local path. |
| plan_linear_draft_review_documentC | Build a connector-ready Linear document payload from either a live draft review export or a previously saved draft review artifact. |
| save_draft_review_artifactC | Render and save a draft review artifact to the local artifact output directory, with optional subdirectory, filename override, and publication-style markdown profile support. |
| trace_chemical_on_draftB | Project one chemical's CompTox bioactivity onto draft key events by matching each KE to candidate assays and returning a draft graph activity overlay. |
| review_draft_assay_cutoff_orderingB | Review per-KER assay-cutoff ordering evidence for a draft by combining draft stressor links, KE assay candidates, and CompTox bioactivity cutoffs. |
| review_draft_bundleC | Build a unified draft review bundle that combines draft validation, structured evidence-gap findings, per-KER assay-cutoff ordering review, and optional chemical projection into one response. |
| review_registry_handoff_bundleB | Review a Registry aop_context handoff bundle and return bounded-use import guidance for AOP draft review. |
| review_draft_evidence_gapsB | Mine one draft for concrete evidence gaps across root metadata, topology, KE assay coverage, KER evidence fields, and linked stressor resolvability. |
| get_applicabilityC | Normalize applicability parameters (species, sex, life stage). |
| get_evidence_matrixC | Build an evidence matrix from KER facets. |
| create_draft_aopC | Create a new draft AOP for write-path workflows. |
| attach_registry_handoff_to_draftC | Attach a validated Registry aop_context handoff bundle to a draft's provenance for later review/export. |
| add_or_update_keC | Add or update a key event within a draft. |
| add_or_update_kerC | Add or update a key event relationship within a draft. |
| link_stressorD | Link a stressor to a draft entity. |
| validate_draft_oecdB | Validate a draft against OECD AOP handbook-style completeness expectations. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 42 tools
The set contains multiple near-duplicate tools with overlapping purposes, especially the list_assays_for_aop vs get_assays_for_aop and list_assays_for_aops vs get_assays_for_aops pairs, plus three discover_orphan_stressors variants. An agent could easily misselect among assay discovery and draft-review/export tools despite descriptions. Some distinctions exist, but boundaries are blurred.
Most names follow a snake_case verb_noun pattern (get_aop, list_key_events, create_draft_aop), which is predictable. Some deviations like add_or_update_ke, plan_linear_draft_review_document, and trace_chemical_on_draft introduce minor inconsistency, and the list_/get_ synonym split weakens consistency.
42 tools is excessive for a single domain and includes many input-variant duplicates (single vs multiple AOPs, query vs explicit) that could be consolidated. This exceeds the 25+ threshold for 'too many' per the rubric.
The surface covers core AOP lifecycle operations: search/get AOPs, key events, KERs, assays, chemical mapping, draft creation, KE/KER editing, validation, evidence review, and export/audit. Missing delete/remove operations and draft-level metadata updates are minor gaps agents can work around.