Literature Evidence MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Literature Evidence MCPSearch recent CRISPR cancer papers and check if the top citation is retracted."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Literature Evidence MCP
An open-source scientific literature and evidence provenance MCP server.
Important: v0.3 is a bibliographic/traceability and evidence-audit MVP, NOT an automated peer reviewer, meta-analysis engine, PRISMA-compliant review engine, validated quality score, or scientific truth oracle. It never labels a paper scientifically proven solely from an abstract or citation.
Features implemented in v0.3
MCP tool | Status / guarantee |
| OpenAlex, Europe PMC, Crossref concurrent metadata search, DOI deduplication, provider error reporting. Search is non-exhaustive. |
| Crossref metadata, relations, publisher links. |
| Exact normalized DOI/title metadata match, NOT content verification. |
| Crossref |
| Europe PMC/PMC XML for supplied PMCID; records section/paragraph-span IDs, offsets, XML and paragraph SHA-256, and truncation. No PDF page claims. |
| Fetches Europe PMC JATS XML and returns direct matching paragraph IDs, section, and hashes; no scientific validity verdict. |
| Deterministic literal text presence only. Does not prove scientific claim. |
| Transparent keyword/phrase screening; NOT risk-of-bias evaluation. |
| Outcome-specific source-anchored HUMAN-SUPPLIED annotation validation. Flags untraceable/contradictory evidence; never infers formal RoB2/ROBINS-I judgments. |
| Fetches Europe PMC full-text JATS XML by PMCID and independently anchors human annotations to exact paragraphs with source SHA-256; handles truncated sources explicitly. |
| Screens user-supplied p values, sample sizes and CI range inconsistencies; does NOT recompute analyses. |
| Metadata comparison, NOT conflicting results inference. |
| Publisher-registered Crossref links; cannot guarantee raw data/code. |
| Validates explicit user-supplied nodes and evidence-referenced edges. No inferred evidence. |
| Timestamped multi-provider search log; NOT PRISMA screening. |
| Append local hash-chained JSONL evidence record with cross-process file locking. |
| Integrity check detects modified rows; cannot detect wholesale replacement/truncation without an external signed anchor. |
Related MCP server: traceable-research-mcp
Install and run
Requires Python 3.11 or later.
python -m venv .venv
. .venv/bin/activate # Windows: .venv\\Scripts\\activate
python -m pip install -e '.[dev]'
pytest -q
literature-evidence-mcp # stdio; no terminal output is expectedLocal HTTP (do not expose to the Internet without an authenticated proxy):
MCP_TRANSPORT=streamable-http MCP_PORT=8000 literature-evidence-mcp
# MCP endpoint: http://127.0.0.1:8000/mcpConfigure your MCP client to execute literature-evidence-mcp as a local subprocess. SDK: MCP Python v2.
OpenAlex basic queries can be keyless but have a restrictive daily budget. Obtain a key from OpenAlex and set OPENALEX_API_KEY for regular use. Environment variables are not committed.
Scientific integrity and constraints
Exact / proxy / unknown: tools distinguish bibliographic facts, text matches, and method-term proxies from scientific validation. All uncertain scientific conclusions remain
NOT_VERIFIED/SCREENING_ONLY.Never interpret zero search results as evidence a paper does not exist. Providers may be unavailable, rate-limited, incomplete or stale.
Crossref retraction check is a metadata check, not a global clearance certificate.
No unrestricted URL retrieval: fixed trusted origins and API paths, DOI and PMCID validation, request timeouts, streaming response-size limits, bounded retries.
Raw bibliographic responses are not persisted unless explicitly passed into
export_evidenceor throughlog_review_search.Full-text reuse and redistribution are controlled by source/publisher licenses; this server does not download arbitrary PDFs or bypass access controls.
Hash-chain is not independently authenticated; keep external checkpoints if you need tamper-evidence against complete log replacement. v0.2 serializes writers across processes using a local lock file; it cannot guarantee atomic behavior on all network filesystems.
Current limitations and roadmap (NOT YET IMPLEMENTED)
Evaluate API coverage/precision against independently labeled benchmark queries and monitor API drift.
Page/figure/table provenance from licensed PDFs and JATS XML; v0.2 supports paragraph-level XML spans only.
Human-supervised formal RoB 2, ROBINS-I, GRADE; v0.3 adds cited annotation traceability and numerical field screens but NOT validated risk judgments or statistical reproduction.
Citation graph with verified edge provenance and correction/retraction propagation.
PRISMA 2020-compatible reviewer double-screening and export.
Audited quantitative extraction/meta-analysis with independent statistical tests and uncertainty.
API rate accounting, request queueing, persistent cache, integration/security hardening and authenticated hosting.
Obtain a blind expert-labeled retrieval and risk-of-bias test set; current ROBoto2 excerpt-match audit and 3-query competitor smoke cannot prove accuracy superiority.
v0.3 evidence audit and external evaluations
17 MCP tools (3 new:
audit_methodology,audit_pmc_methodology,check_statistical_reporting).External ROBoto2 benchmark: 174 of 413 delimited expert quote excerpts were located verbatim in PDF-parsed article text across 93 studies (42.13%); 0/413 rotated control matches. This is NOT bias-judgment or scientific accuracy; quoted reviewer notes and PDF parses can differ. Dataset licensing not verified; raw dataset is not redistributed. See benchmark protocol and aggregate report.
Same-query, same-provider retrieval smoke tests comparing this MCP, Athenaeum, and Paper Search MCP are recorded in competitor audit and
reports/live-*.json. Counts and times are not expert relevance metrics, and no performance dominance is asserted.
Testing
Offline deterministic tests mock every external provider and check concurrent ledger writers, covering DOI validation, error handling, failure isolation, ambiguous status reporting, ledger corruption, method-screening caveats and evidence graph validation.
Verification: On 2026-10-18, 20 baseline v0.2 tests passed with the real MCP v2 SDK in a connected development environment, including in-process MCP tool discovery/call. The opt-in python scripts/live_smoke.py also passed for OpenAlex, Europe PMC and Crossref. CI does not run live provider checks. Hosted Streamable HTTP, production resilience, source accuracy, formal risk-of-bias validity, and competitive superiority have NOT been independently verified.
License and contributions
Apache-2.0. See LICENSE, CONTRIBUTING.md, SECURITY.md. Neither the license nor this repository grants rights to republish third-party scientific articles.
Documentation references
v0.2 technical change log
Added direct full-text quote provenance (
verify_source_quote), explicit section and paragraph IDs, UTF-8 text hashes and truncation indicators.Replaced unbounded HTTPX body buffering with a streamed 2 MB JSON / 4 MB XML response cap.
Serialized evidence writes across independent callers/processes using
filelockandasyncio.to_thread; the ledger still requires independently stored checkpoints for stronger guarantees.Added regression tests for nested sections, source offsets, missing quotations, oversized responses and concurrent writers.
Scientific limits remain: matching text is not proof, keyword methodology screening is not a formal bias assessment, and no independent competitor benchmark has been performed.
v0.3 technical change log
Real Europe PMC XML paragraph source-bound annotation audit, distinguishing incomplete retrieval from proven absence; never claims RoB2 assessment.
58 deterministic unit and protocol tests; 91% measured Python line coverage on local Python 3.12 (verification pending CI).
Human-supplied outcome-specific methods evidence traceability; unknowns and contradictions explicit.
Mechanical checks for invalid p-values, sample sizes and interval bounds; no fabricated inferential statistics.
Pinned external ROBoto2 research benchmark with aggregate report, licensing caveat and non-comparable RoB category warning.
Three-engine public-provider retrieval smoke and evidence-based competitor feature matrix; no claimed superiority.
Available Tools
17 toolsassess_methodologyC
Transparent phrase screening only; NOT a RoB-2, GRADE, or statistical audit.
| Name | Required | Description | Default |
|---|---|---|---|
| source_id | Yes | ||
| source_text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose a meaningful behavioral boundary — the output is phrase-level screening, not a validated risk-of-bias or statistical assessment — which helps an agent avoid misusing the result. It says nothing about input requirements, safety profile, or what the screening returns, leaving substantial behavioral gaps.
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 single-sentence fragment is brief but under-specified rather than concise — it spends its only content on exclusions and never describes the action. Front-loading the scope limitation is good, but the definition is too thin to earn 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?
In a dense sibling set with multiple audit and statistical-checking tools, no annotations, no output schema, and 0% parameter documentation, the description should do far more. It usefully carves out a niche versus audits but omits return format, expected input content, and any usage conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both parameters, so the description must compensate and does not. It offers no indication of what source_text should contain (abstract? full paper? methods section?) or what source_id refers to, despite source_text format being critical for a screening tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the operation as 'transparent phrase screening,' which gives some sense of scope and distinguishes it from heavier siblings like audit_methodology and check_statistical_reporting. However, it never states a concrete verb-plus-resource ('screens methodology phrases in a source text') or what the screening produces, so the purpose is only implied.
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 'NOT a RoB-2, GRADE, or statistical audit' clause effectively signals when this tool is the wrong choice and implicitly routes the agent toward audit_methodology/check_statistical_reporting. It never states when this tool IS the right choice or names those alternatives explicitly, so guidance is only half-present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_methodologyB
Audit traceability of outcome-specific, user-annotated methods evidence.
Quotes are checked against supplied raw text. Labels are never scientifically validated. Human RoB2/ROBINS-I assessment remains necessary.
| Name | Required | Description | Default |
|---|---|---|---|
| outcome | Yes | ||
| study_id | Yes | ||
| annotations | Yes | ||
| source_text | Yes | ||
| study_design | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and does disclose meaningful limits: it verifies quote-to-text traceability and explicitly does not scientifically validate labels. However, it omits other behavioral facts an agent needs, such as whether the operation is read-only, what it returns, and how mismatched quotes are reported.
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?
Three short, front-loaded statements with no filler; the core purpose leads and the caveats follow. The fragmented line breaks are mildly awkward but do not impede comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five required parameters, an untyped nested annotations array, no output schema, and no annotations, the description is under-specified. While the scope-limiting caveats are useful, an agent still lacks parameter semantics and any sense of the return shape needed to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across five required parameters, so the description must compensate but largely does not. It loosely maps to a few fields ('outcome-specific', 'user-annotated', 'supplied raw text') but gives no meaning for study_id or study_design and no format for the annotations array, leaving most parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (audit) and resource (traceability of methods evidence, with quotes checked against raw text), so the agent knows this is a traceability-verification tool rather than a validity assessor. It does not, however, distinguish itself explicitly from close siblings like audit_pmc_methodology or assess_methodology, leaving that separation to inference.
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 carves out a clear boundary ('Quotes are checked against supplied raw text', 'Labels are never scientifically validated'), which implicitly tells the agent this is a limited scope-check rather than a full appraisal. But it never states when to choose this over audit_pmc_methodology or assess_methodology, nor any prerequisites, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
audit_pmc_methodologyC
Fetch Europe PMC XML and validate user annotations against direct JATS paragraphs.
No scientific conclusion, risk-of-bias judgement or absence claim is inferred.
| Name | Required | Description | Default |
|---|---|---|---|
| pmcid | Yes | ||
| outcome | Yes | ||
| annotations | Yes | ||
| study_design | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that it pulls external Europe PMC XML and that no scientific conclusion, risk-of-bias judgement, or absence claim is inferred, which meaningfully bounds interpretation of results. It still omits auth requirements, failure behavior when a PMC ID is invalid, and what the validation result contains.
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 short sentences, front-loaded with the action before the limitation. The second sentence is a slightly awkward fragment, but nothing is padded or wasted.
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?
A tool taking four required, undocumented arguments with no output schema and no annotations needs more than two sentences. The description never explains the annotation format, what 'outcome' and 'study_design' should contain, or how validation findings are returned.
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?
All four parameters are required with 0% schema description coverage, and the description mentions none of them. The non-obvious 'annotations' array of free-form objects and the 'outcome'/'study_design' strings are left entirely unexplained in both the schema and the prose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names two specific actions (fetch Europe PMC XML, validate user annotations) against a concrete resource (direct JATS paragraphs), which is far more informative than a bare 'audit' label. It does not, however, distinguish this from the sibling 'audit_methodology', so an agent cannot tell the two apart from the text alone.
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 statement of when to use this tool versus the similarly named audit_methodology, no prerequisites, and no conditions that select it over alternatives. The only scoping present is a negative claim about what is not inferred, which bounds output rather than guiding selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
build_evidence_graphC
Validate user-supplied evidence graph with traceable evidence identifiers.
| Name | Required | Description | Default |
|---|---|---|---|
| edges | Yes | ||
| nodes | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not say whether validation persists anything, what a failure looks like, what makes a graph valid, or what 'traceable evidence identifiers' must conform to. The name/description tension between 'build' and 'validate' further obscures whether this is a read-only check or a mutation.
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 front-loaded sentence with no padding, so it is structurally efficient. The problem is under-specification rather than verbosity, which caps the score at adequate.
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?
A graph-building/validation tool with no annotations, no output schema, and zero parameter documentation needs a far richer description. Nothing tells the agent the expected graph shape, the validation criteria, or what is returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and both parameters are unconstrained arrays of arbitrary objects (additionalProperties: true). The phrase 'traceable evidence identifiers' is the only hint at expected node/edge content, and it is far too vague to compensate for the missing schema documentation of two required 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 states a specific verb and resource: validate an evidence graph with traceable evidence identifiers. However, the tool NAME says 'build' while the description says 'validate' — an agent cannot tell whether this constructs or only checks a graph. It also does nothing to distinguish itself from close siblings like verify_evidence_ledger or export_evidence.
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 when-to-use guidance, no prerequisites, and no mention of alternatives. With siblings such as verify_evidence_ledger and verify_claim in the same family, the agent is given no basis for choosing this tool over them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_retractionB
Inspect Crossref update-to and Retraction Watch-linked updates; absence is inconclusive.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it does disclose one important trait: the two upstream data sources consulted and the fact that a null result cannot be treated as confirmation of validity. It says nothing about authentication, rate limits, latency, or how a hit is reported.
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 tight sentence with no filler, and the caveat is placed where it will be read. It is dense and jargon-heavy ('update-to'), but every clause 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?
There is no output schema, so the description should ideally describe what a positive hit looks like; it only frames the negative case. The absence-inconclusive note is valuable, but return-shape and source-precedence details are missing for a tool whose whole value is its answer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the single 'doi' parameter is never mentioned in the description, so it adds no syntax or format guidance (e.g., bare DOI vs. URL form). The parameter name is self-explanatory enough that this is a moderate rather than severe gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Inspect) and a well-defined resource (Crossref update-to and Retraction Watch-linked updates), which is enough to separate it from siblings like verify_citation or get_paper. It stops short of naming the input (a DOI) or the output, so it is clear but not maximally so.
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 clause 'absence is inconclusive' is a genuine interpretive caveat that tells the agent how to read a negative result, which implies when this tool is worth calling. However, it never states when to prefer this over verify_citation or get_paper, nor any prerequisite or sequencing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_statistical_reportingA
Find mechanically inconsistent p values/CIs/sample-size entries, not test results.
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read-only detection pass but never states whether anything is mutated, what permissions are needed, what the output looks like (no output schema exists), or how many records it can handle — none of the behavioral traits beyond the one-sentence scope are disclosed.
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 front-loaded sentence with the core scope stated first and the exclusion tacked on efficiently. Every clause earns its place; nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool this is a thin but workable definition. The hint about which statistical quantities matter partially compensates for the completely opaque record schema, but with no annotations and no output schema, the agent still lacks enough to construct correct input records with confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% with a single untyped array-of-objects parameter (additionalProperties: true, no defined keys), so the description must explain what a "record" must contain. It hints at the relevant fields (p values, CIs, sample sizes) but never states the expected key names, required vs optional entries, or the record structure an agent must build.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Find") and a precisely bounded resource ("mechanically inconsistent p values/CIs/sample-size entries"), then distinguishes itself from broader siblings like assess_methodology by excluding semantic judgment ("not test results"). An agent can tell this apart from the other audit tools without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase "not test results" gives an explicit when-not boundary, steering the agent away from using this for interpreting or assessing findings. However, it names no concrete alternative sibling to route to when the task actually is about test results, so guidance is clear but not fully actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_studiesC
Compare supplied bibliographic metadata; no inferred theoretical disagreements.
| Name | Required | Description | Default |
|---|---|---|---|
| papers | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and largely fails: it does not say how comparison is performed, whether the operation is read-only, what permissions or input validity are required, or what the result looks like. The only disclosure is a negative scope constraint (no inferred theoretical disagreements), which is useful but thin.
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 short, front-loaded sentence with no filler, so there is nothing to trim. However, the brevity is closer to under-specification than to disciplined conciseness for a tool with an opaque nested input.
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 one structurally undefined parameter, no output schema, and no annotations, the description should explain expected input shape and return behavior. It explains neither, leaving the agent unable to construct 'papers' confidently or predict results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'papers' is an array of free-form objects with additionalProperties=true and 0% schema description coverage. 'Supplied bibliographic metadata' hints at expected content but gives no field names, shapes, or required keys, so the agent must guess the object structure entirely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Compare supplied bibliographic metadata'), which is clearly distinguishable from siblings like audit_methodology or check_statistical_reporting. The scope caveat ('no inferred theoretical disagreements') further narrows intent, though no sibling is named explicitly.
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 'no inferred theoretical disagreements' clause implicitly bounds what the tool is for, but there is no when-to-use condition, no prerequisite, and no named alternative among the 16 siblings. An agent gets a limitation without a selection rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_evidenceC
Append a JSON evidence record to local hash-chained JSONL ledger.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| payload | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral weight. It discloses that the operation appends to a local hash-chained JSONL ledger, which implies durable, tamper-evident, local writes. However, it omits error behavior, idempotency, permission requirements, and whether an existing chain is required.
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?
It is a single front-loaded sentence with no filler. While very short for the tool's complexity, the sentence itself earns its place and is not padded.
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 two undocumented required parameters, a nested payload object, no annotations, no output schema, and 0% schema description coverage. A single-sentence description is not enough for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both required parameters. The description never explains what 'kind' should contain or what shape the 'payload' object takes, leaving the agent with no semantic guidance for either argument.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Append') and resource ('JSON evidence record to local hash-chained JSONL ledger'), which is more specific than a generic 'export'. It does not explicitly differentiate from siblings like verify_evidence_ledger or build_evidence_graph, so it stops short of a 5.
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 when-to-use guidance, no prerequisites, and no mention of alternative tools. The agent is left to infer that this is the write-side counterpart to verify_evidence_ledger.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_data_and_codeB
Find Crossref links to supplements/data/software, if registered; do not fetch them.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses that results are conditional on registration and that it is a lookup-only operation that does not retrieve the underlying artifacts, but it omits auth requirements, failure behavior, and return shape.
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 tight sentence with the core action front-loaded and the negative constraint appended. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter lookup with no output schema or annotations, the description covers the essentials: what it finds and that it will not fetch. It leaves the return format and the not-registered case underexplained, which matters since there is no output schema to fall back on.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the single required parameter (doi) is never mentioned in the description. The name is fairly self-evident, but the description adds no meaning such as accepted DOI formats or whether prefix-only DOIs work, so it fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: find Crossref links to supplements, data, or software. It clearly distinguishes itself from content-retrieval siblings like read_fulltext and get_paper by scoping to link discovery, though it never names a sibling explicitly.
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?
"If registered" and "do not fetch them" imply when the tool is useful (locating links only, not retrieving content) and set an expectation of possible empty results. However, no alternative tool is named for the actual fetching step, so routing is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_paperA
Get Crossref DOI metadata and source links; does NOT validate scientific conclusions.
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the data source (Crossref) and the key limitation (no conclusion validation), which is real value, but says nothing about authentication, rate limits, or behavior on an unresolvable DOI. Adequate but incomplete for a no-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the scope claim front-loaded and the limitation attached via a semicolon. Every clause earns its place; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter lookup with no output schema, the description supplies the data source, the retrieval target (metadata and source links), and the explicit non-goal. What is missing, return shape and failure behavior for bad DOIs, is modest given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there is one parameter ('doi'), so the description must compensate. Calling out 'Crossref DOI' implies the identifier namespace, which is useful, but it adds no format example, prefix guidance, or resolution behavior. Partial compensation only.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Get Crossref DOI metadata and source links.' The negative clause 'does NOT validate scientific conclusions' further separates it from validation-oriented siblings such as verify_citation and verify_claim. However, it doesn't explicitly declare which sibling to use for validation, so it stops short of a 5.
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 negation ('does NOT validate scientific conclusions') implicitly signals when-not-to-use, which is useful routing against verify_claim/verify_citation. But there is no positive guidance on when to reach for this tool (e.g., 'use this to fetch bibliographic metadata before citing') and no named alternative for the validation case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_review_searchC
Search + log reproducible search records; NOT an exhaustive systematic review.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit_per_source | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. Beyond the phrase 'reproducible search records', it says nothing about what gets logged, where records are stored, whether the operation mutates state, required permissions, or what the response contains. For a search-plus-persist tool this is a significant gap.
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 tight sentence with the core action front-loaded and the clarifying exclusion appended. It wastes no words, though the extreme brevity borders on under-specification rather than genuine 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?
With no annotations, no output schema, and 0% parameter documentation, the description is the only source of behavioral detail and provides almost none. An agent cannot determine what the tool logs, what it returns, or how it differs operationally from the many search/verification siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both parameters. The description does not explain what 'query' accepts or how 'limit_per_source' behaves (its unit, default, or per-source meaning). With two undocumented parameters, the description needed to compensate and does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names specific verbs and a resource: 'search + log reproducible search records'. The 'NOT an exhaustive systematic review' clause hints at scope, differentiating it conceptually from a full-review tool. However, it never names or distinguishes itself from the closest sibling, search_literature, so an agent still has to guess which search tool fits.
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 'NOT an exhaustive systematic review' boundary gives a when-not signal, implying this is a lightweight, reproducible-search-logging step. But there is no explicit when-to-use guidance and no named alternative (e.g., search_literature) to route between, so the agent must infer selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_fulltextA
Read OA full-text XML by PMCID from Europe PMC, with source hash and truncation flag.
| Name | Required | Description | Default |
|---|---|---|---|
| pmcid | Yes | ||
| max_chars | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose that the response includes a source hash and a truncation flag, plus the OA-only limitation. It omits failure behavior for non-OA items, rate limits, and what happens when truncation occurs, so disclosure is partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the operation and source front-loaded and no filler; every clause conveys information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations, no output schema, and 0% schema coverage, the description gives only a partial picture: it names the return elements but leaves error handling, non-OA behavior, and max_chars semantics unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate. Mentioning 'truncation flag' loosely connects to max_chars (default 30000), but neither parameter's format, default, or effect is explained beyond that hint.
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 gives a specific verb ('Read'), resource ('OA full-text XML'), identifier ('by PMCID'), and source ('Europe PMC'), so an agent knows exactly what it retrieves. It does not explicitly distinguish itself from siblings like get_paper or verify_source_quote, which is the only gap.
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 'OA' qualifier implies this only works for open-access articles, which is a useful implicit constraint, but there is no explicit when-to-use guidance or comparison against get_paper (metadata) or search_literature. Usage context is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_literatureC
Search OpenAlex, Europe PMC, Crossref; deduplicate DOI and report each provider error.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| limit_per_source | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden. It earns credit for two non-obvious behaviors — cross-provider DOI deduplication and reporting each provider error — but omits whether the call is read-only, rate/limit behavior, authentication needs, and result shape or pagination.
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 front-loaded sentence with no filler: verb first, then providers, then dedup/error behaviors. It is slightly telegraphic ('report each provider error' leaves format unspecified), but structure and size are appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a multi-provider search tool with no annotations, no output schema, and 0% schema coverage, the description is materially incomplete. It omits query syntax, return format, pagination/limit semantics, and error/dedup output shape, all of which an agent needs before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for both parameters, so the description must compensate and does not. It says nothing about query syntax (boolean? DOI? identifiers?) or what limit_per_source controls, leaving the agent to guess both parameter meanings.
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?
Specific verb ('Search') plus three named resource providers (OpenAlex, Europe PMC, Crossref), with two extra behaviors (DOI dedup, per-provider error reporting). It is clearly distinguishable from verification/audit siblings by subject matter, but it never contrasts itself with the closest neighbor, find_data_and_code, which also performs scholarly discovery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to use this versus alternatives such as get_paper, read_fulltext, or find_data_and_code, and no prerequisites or exclusions. Usage is only inferable from the verb 'Search', which is not enough guidance when the sibling set overlaps on discovery.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_citationB
Verify bibliographic DOI/title match in Crossref (not validity of the publication).
| Name | Required | Description | Default |
|---|---|---|---|
| doi | Yes | ||
| claimed_title | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses that the check is against Crossref and that it is a bibliographic match rather than a publication-validity judgment, but it does not describe return behavior, match strictness, failure modes, or external API constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. The scope and key exclusion are communicated immediately.
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?
There is no output schema and no annotations, so the description should do more to explain what a successful or failed verification returns. It gives the core scope but leaves important agent-facing details absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for both required parameters. It mentions 'DOI/title match,' which ties the parameters together, but it does not explain DOI formatting, title-matching behavior, exactness requirements, or how the claimed title is compared.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Verify') and resource ('bibliographic DOI/title match in Crossref'), and the parenthetical distinguishes it from publication-validity checks. It does not explicitly name sibling tools, but its scope is clear enough to separate it from claim or source verification.
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?
It implies usage by saying it verifies a DOI/title match and explicitly excludes checking the validity of the publication. However, it does not say when to use this instead of alternatives like verify_claim, verify_source_quote, or check_retraction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_claimB
Check literal quote presence. This cannot scientifically verify a claim.
| Name | Required | Description | Default |
|---|---|---|---|
| quote | Yes | ||
| source_id | Yes | ||
| source_text | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose one important limitation: it is a literal-string check, not scientific verification. It still omits what a pass/fail result means, whether it is read-only, and failure behavior, so it is only partially transparent.
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 short sentences, both earning their place, with the core function front-loaded and the caveat immediately after. No padding 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?
With no annotations, no output schema, and three entirely undocumented parameters, the description does not supply enough for an agent to call the tool correctly or interpret its result. The limitation caveat helps but leaves substantial 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 description coverage is 0% across three required parameters, and the description says nothing about quote, source_text, or source_id. It therefore fails to compensate for the missing schema documentation, leaving an agent to infer the relationship between quote and source_text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and object ('Check literal quote presence'), which is clearer than the tool name 'verify_claim' suggests. However, it does nothing to distinguish itself from the near-identical sibling 'verify_source_quote', so an agent cannot tell which to select without opening both schemas.
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 second sentence functions as a when-not guideline ('This cannot scientifically verify a claim'), steering the agent away from treating it as scientific validation. But there is no positive when-to-use statement and no explicit routing to an alternative such as verify_source_quote or assess_methodology.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_evidence_ledgerA
Check local JSONL ledger integrity; cannot detect replacement of the entire ledger.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses a key limitation (it cannot detect whole-ledger replacement), which is genuinely valuable scope information, but it omits what checks are performed, whether the operation is read-only, and what a pass/fail result looks like.
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 clause states the action first, then the critical scope limitation, with zero filler. Every word earns its place and the most decision-relevant caveat is front-loaded after the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no annotations and no output schema, the description covers purpose and one limitation but does not describe the return value or what 'integrity' encompasses. Adequate but leaves an agent guessing at the outcome semantics of a verification call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so per the baseline this scores 4. There are no input semantics for the description to clarify, and the empty schema is consistent with the description's self-contained verification scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Check local JSONL ledger integrity'), and the 'ledger' resource clearly differentiates it from sibling verify_* tools like verify_citation and verify_claim. However it never names or contrasts with any sibling explicitly, so the differentiation is inferred from the unique resource rather than stated.
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 its usage context (verifying a local ledger's integrity) but gives no explicit when-to-use trigger and names no alternative tools. The 'cannot detect replacement of the entire ledger' clause is a scope caveat rather than routing guidance, so an agent has only an implicit sense of when to prefer this over other verification tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_source_quoteB
Retrieve Europe PMC full text and locate quote in source paragraphs; NOT a scientific verdict.
| Name | Required | Description | Default |
|---|---|---|---|
| pmcid | Yes | ||
| quote | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses retrieval of external full text but says nothing about failure behavior (quote not found), whether the pmcid must be an exact PMC identifier, rate limits, or what the result looks like. 'NOT a scientific verdict' is a useful output-scoping caveat but far from complete behavioral disclosure.
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 compact sentence with the action front-loaded and the important limitation trailing. No filler, though the semicolon-heavy phrasing is slightly terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-required-parameter tool with no annotations and no output schema, the description should explain return shape (found/not-found, position, matched text) and any pmcid format expectations. It omits both, leaving the agent unable to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and neither parameter has a description, so the description is the only source of meaning. It implies 'pmcid' identifies the Europe PMC source and 'quote' is the string being located, which covers both params conceptually, but adds no format, matching, or normalization guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb chain (Retrieve + locate) on a specific resource (Europe PMC full text / source paragraphs) and the boundary condition 'NOT a scientific verdict', which distinguishes it from siblings like verify_claim and verify_evidence_ledger. Clear without needing to inspect the schema.
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 'NOT a scientific verdict' clause implies when NOT to rely on this tool's output, but no alternative sibling is named and no positive trigger condition (e.g., 'use when you have a pmcid and an exact quote string') is given. Usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
17 tool updates
v0.2.0- First observed
assess_methodology - First observed
audit_methodology - First observed
audit_pmc_methodology - First observed
build_evidence_graph - First observed
check_retraction - First observed
check_statistical_reporting - First observed
compare_studies - First observed
export_evidence - First observed
find_data_and_code - First observed
get_paper - First observed
log_review_search - First observed
read_fulltext - First observed
search_literature - First observed
verify_citation - First observed
verify_claim - First observed
verify_evidence_ledger - First observed
verify_source_quote
TDQS
Scored across 17 tools
Several tools have overlapping boundaries: verify_claim, verify_source_quote, and verify_citation all concern verifying quotes/citations, while audit_methodology, audit_pmc_methodology, and assess_methodology all touch methodology review. The descriptions add disclaimers that help differentiate them (e.g. 'phrase screening only' vs 'traceability'), but an agent could still misselect among these clusters.
Every tool follows a consistent verb_noun snake_case pattern (search_literature, verify_citation, check_retraction, audit_methodology). The only minor variation is audit_pmc_methodology inserting a qualifier, but it still fits the same convention cleanly.
At 17 tools the set is on the heavy side for a single literature-evidence server, and several of those slots go to near-duplicate verification/audit operations. The scope is coherent but feels somewhat bloated rather than tightly scoped.
The surface covers the full research workflow: discovery (search_literature, get_paper), verification (verify_citation, verify_claim, check_retraction, read_fulltext), methodology auditing, and evidence ledger export/integrity. Coverage is strong, with only minor gaps such as no explicit bibliography/export formatting for citations.
Maintenance
Related MCP Connectors
Academic literature search, retrieval, and private library management on top of OpenAlex.
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Machine-readable entity discovery with provenance, trust and verified source evidence.
Scholarly search: OpenAlex, Crossref, arXiv, OpenCitations and PubMed in one endpoint.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables multi-source literature search, full-text retrieval, reference analysis, and journal quality assessment across Europe PMC, PubMed, arXiv, CrossRef, OpenAlex, and EasyScholar via the MCP protocol.518 npm1MIT
- AlicenseNot gradedqualityCmaintenanceEnables traceable scholarly literature reviews using free APIs, generating reports where every claim links to evidence IDs.MIT
- AlicenseAqualityCmaintenanceEnables searching scholarly literature across CrossRef, ERIC, Semantic Scholar, and OpenAlex, and retrieving open-access PDFs via Unpaywall.9MIT
- AlicenseBqualityAmaintenanceEnables provenance-first scholarly retrieval, paper ingestion, and reproducible research workflows by searching academic and developer sources, extracting source-located facts and claims, and preserving evidence and provider uncertainty for MCP clients.371Apache 2.0