Update (v0.3.1, April 2026): Several governance and safety controls recommended in this review have been partially implemented in v0.3.1, including explicit applicability-domain gating (
ad_status,ad_warning,ad_recommendation), human review checkpoints (require_human_review), and privacy-aware logging. The longer-term contract and schema extensions described below (attachment manifests, data-matrix contracts, endpoint-summary exports) remain on the roadmap.
Reviewed sources:
Guidance on Grouping of Chemicals, Third Edition(OECD, 2025), DOI10.1787/b254a158-enCustomisation Opportunities of IUCLID for the Management of Chemical Data, 4th edition(OECD, 2025), DOI10.1787/d8db13f7-en
Objective:
- Check whether O-QT MCP should change its public contracts, payloads, or packaging semantics to remain aligned with current OECD grouping and data-management expectations.
O-QT MCP is still positioned correctly. The reviewed guidance does not argue for turning O-QT into a broader orchestrator or for embedding IUCLID itself inside the MCP. The main gaps are in contract richness and packaging semantics:
- the MCP already produces workflow outputs, grouping/read-across dossiers, uncertainty tables, provenance, and PDF artifacts
- the OECD grouping guidance expects that evidence, applicability domain, uncertainty, and study selection remain inspectable in a structured way
- the IUCLID customisation guidance expects clearer document/package semantics, especially attachments, endpoint summaries, and editable-vs-packaged data bundles
The correct response is an interoperability and reporting pass, not an architecture rewrite.
Current O-QT MCP behavior already fits a large part of the OECD guidance:
build_grouping_justificationalready returns a dossier-shaped object with target resolution, selected analogues, excluded analogues, a data matrix, similarity assessment, endpoint justifications, and uncertainty reporting.run_oqt_multiagent_workflowalready packages JSON, Markdown, and PDF artifacts in one MCP call.- Provenance has been strengthened across QSAR models, profilers, simulators, and hazard analysis so model ownership, donors, citations, and study metadata can be surfaced when the Toolbox returns them.
- Portable handoff schemas already separate workflow provenance, hazard evidence, and read-across support instead of forcing downstream consumers to parse raw MCP payloads.
- Report tools already expose artifact metadata such as content type, archive members, and extracted PDFs when the Toolbox returns bundles.
This means the baseline scientific and architectural role of the module is sound.
The Guidance on Grouping of Chemicals raises five contract-level expectations that should be reflected more explicitly in O-QT MCP.
The guidance treats applicability domain as more than a short note. For analogue and category approaches it expects:
- inclusion and exclusion criteria
- allowed structural differences
- physicochemical boundaries
- metabolic or degradation boundaries
- explanation of why excluded candidates were rejected
- visibility into boundary or sentinel chemicals where relevant
Current O-QT output captures some of this implicitly through:
source_analoguesexcluded_analoguesstructure_comparisonphysicochemical_comparisonsimilarity_assessment
Recommended MCP change:
- add a first-class
applicability_domainblock togrouping_justification - include
inclusion_criteria,exclusion_criteria,allowed_differences,boundary_notes,subcategories, andsupporting_similarity_contexts - surface the same information in
oqtReadAcrossSummary.v1instead of reducing it to a short free-text summary
The guidance is very explicit that grouping/read-across reporting should include a matrix of:
- target plus source substances or category members
- endpoints
- physicochemical properties
- kinetics
- profiling
- supporting data tied to the target endpoints
- result type labels such as experimental, planned, QSAR, HTS/HCS/omics, or AOP
Current O-QT already creates a useful data_matrix, but it is still an internal workflow structure rather than a stable published contract.
Recommended MCP change:
- publish a new schema such as
oqtGroupingDataMatrix.v1, or extendoqtReadAcrossSummary.v1with a stabledataMatrix - define row-level fields like
substanceRole,endpoint,methodType,resultType,valueSummary,reference,studyReliability, andusedForGapFilling - ensure excluded candidates can be reported in a companion annex-style structure rather than only through free-text limitations
The current implementation is already close here. The guidance expects uncertainty to remain visible by similarity rationale, data quality, strength of evidence, and what is not addressed.
Current O-QT already includes:
uncertainty_assessment.assessment_tableaccepted_leveloverall_levelacceptable_for_contextwhat_is_not_addressed
Recommended MCP change:
- keep the current table shape stable and promote it into the portable read-across handoff
- add explicit
decision_context_fitwording to make it obvious whether residual uncertainty is tolerable for the stated use - add optional
uncertainty_reduction_actionsso a downstream client can tell whether the next step is more data, narrower scope, or expert review
The guidance requires endpoint-by-endpoint justification, not only an overall narrative. The IUCLID guidance separately highlights that Endpoint Summaries have become part of the OECD Harmonised Templates and include:
- administrative and regulatory flags
- linked studies
- key information
- key values for assessment
- classification or non-classification justification
- attachments
Current O-QT endpoint justifications are useful but still lighter than an OHT-style summary.
Recommended MCP change:
- add an OHT-inspired export layer rather than a full OHT implementation
- introduce a schema such as
oqtEndpointSummary.v1with:endpointkeyValueslinkedStudiesclassificationRationalesupportingEvidenceattachmentsprovenance
- allow
analyze_chemical_hazardandbuild_grouping_justificationto emit endpoint summaries when the underlying Toolbox response contains enough detail
This would satisfy the reporting direction without forcing the MCP to become an IUCLID clone.
The guidance repeatedly treats HTS/HCS, omics, bioactivity similarity, and AOPs as legitimate supporting lines of evidence for grouping. O-QT today can represent profiler, simulator, and QSAR evidence, but it does not yet provide a clearly named slot for:
- bioactivity-profile evidence
- AOP linkage
- omics-specific metadata
- anchor chemicals or bridging studies
Recommended MCP change:
- extend similarity contexts so they can declare
support_typevalues such asqsar,profiler,metabolism,bioactivity,omics,aop,bridging_study - add optional placeholders rather than pretending the Toolbox provides all of these today
- document clearly when a context is
not_assessedbecause the MCP lacks source evidence, not because similarity was disproven
The Customisation Opportunities of IUCLID document is mainly about packaging, document structure, and system integration. It implies four concrete changes for O-QT MCP.
IUCLID treats attachments as standalone files attached either in data fields or in document metadata. O-QT already returns PDFs, archive bundles, JSON, and Markdown, but the portable schema only describes the three primary artifacts at a high level.
Recommended MCP change:
- add an
attachment_manifestorattachmentsarray tooqtWorkflowRecord.v1 - include
name,role,fieldName,mediaType,encoding,sizeBytes,sha256, andsource - use the same manifest for ZIP members extracted from Toolbox reports
This makes the MCP output easier to map into dossier-style systems and easier to verify in downstream automation.
IUCLID draws a clear distinction between an editable dataset and a packaged, read-only dossier. O-QT today returns assembled responses, but does not declare whether the output is best interpreted as:
- a working evidence bundle still open to extension
- a read-only packaged report for exchange
Recommended MCP change:
- add
package_semanticstooqtWorkflowRecord.v1 - define fields like
mode,rootEntityType,isReadOnly, andcontainsExternalReferences - use values such as
working_bundlefor live MCP responses andpackaged_dossierfor frozen export bundles
This is a small change with high interoperability value.
IUCLID makes the root entity explicit, with linked sub-entities and documents below it. O-QT does not need IUCLID entity complexity, but it would benefit from declaring the root object in each workflow package.
Recommended MCP change:
- let workflow-style outputs declare a
root_entity - support simple values such as
substance_workflow,grouping_dossier, orhazard_summary - allow attachments, endpoint summaries, and study references to point back to that root entity
This keeps the package navigable for clients that need to persist or transform it.
The IUCLID document strongly separates public REST integration from deeper extension work. For O-QT, that means:
- do not build IUCLID customisation logic into the core workflow runner
- do build a clean export or adapter layer that can map O-QT evidence into dossier-oriented structures
Recommended MCP change:
- keep the current MCP response shapes as the execution layer
- add optional export helpers later, for example
export_grouping_bundleorbuild_endpoint_summaries - reserve any future IUCLID-specific mapping for a separate adapter module
The existing published schemas are a good baseline, but after reviewing the OECD guidance they are missing a few things:
Needs:
- attachment manifest
- package semantics
- root entity identifier/type
- optional external reference inventory
- optional method catalog for report generation and data extraction
Needs:
- applicability domain block
- richer analogue selection rationale
- boundary or sentinel chemical notes
- uncertainty table instead of only overall residual uncertainty
- optional data matrix reference or embedded summary
- optional endpoint-summary references
Needs:
- optional endpoint summaries
- optional study reference collection
- explicit evidence-source typing for profiler, QSAR, metabolism, empirical study, or literature
- optional attachment references for generated reports
These documents do not justify expanding O-QT MCP into the following:
- a suite orchestrator
- a full IUCLID replacement
- a complete implementation of OECD Harmonised Templates
- nanomaterial-specific or UVCB-specific scientific logic that the Toolbox does not already provide in a usable way
- final risk conclusions or cross-module BER/WoE synthesis
Those would increase surface area without improving the current module boundary.
The highest-leverage path is a small contract-focused sequence.
Files likely affected:
schemas/oqtWorkflowRecord.v1.jsonsrc/tools/implementations/workflow_runner.pysrc/tools/implementations/toolbox_execution.py- tests for schema and runtime payloads
Goal:
- publish a stable artifact/attachment manifest and declare whether the returned package is a working bundle or packaged dossier
Files likely affected:
schemas/oqtReadAcrossSummary.v1.json- possibly a new
schemas/oqtGroupingDataMatrix.v1.json src/tools/implementations/workflow_runner.py- tests and examples
Goal:
- make the current
data_matrixportable and stable enough for downstream ingestion
Partially implemented in v0.3.1.
run_qsar_predictionnow returnsad_status,ad_warning, andad_recommendation, andrun_oqt_multiagent_workflowsupportsrequire_human_review=trueto pause workflow execution when predictions are out-of-domain. The remaining work is to expose full inclusion/exclusion rules and boundary notes in the grouping/read-across handoff contract.
Files likely affected:
src/tools/implementations/workflow_runner.pyschemas/oqtReadAcrossSummary.v1.json- README and docs
Goal:
- expose inclusion rules, exclusion rules, allowed differences, and subcategory or boundary notes directly in the handoff contract
Files likely affected:
- new schema file for endpoint summaries
- hazard-analysis and grouping outputs
- docs describing the OHT-inspired mapping
Goal:
- provide a compact endpoint summary format that is richer than the current endpoint justification but intentionally lighter than full IUCLID/OHT authoring
The reviewed OECD documents do not require a redesign of O-QT MCP. They do justify one more reporting-contract pass:
- make evidence packaging more dossier-like
- make attachments and bundle semantics explicit
- publish the data matrix and uncertainty structures as stable portable contracts
- add endpoint-summary style exports where the Toolbox returns enough information
That would materially improve interoperability while preserving the module's current role as a specialized OECD QSAR Toolbox MCP.