JATS Article Check
Guest access is available after setup. Full account linking verified by PowMCP: Claude only.
Use in your browser
Check a public or pasted JATS XML article with the JATS4R Schematron rules under Saxon-HE. See the conformance verdict, exact rule-code evidence, and changes between two versions of the same article.
Guest includes 50 lifetime app requests. Create a free account for 100 app requests each calendar month. One allowance across every app, in your browser and your agent.One allowance across every app, in your browser and your agent. Manage usage
Guest access is available after setup. Full account linking verified by PowMCP: Claude only.
Connect this app on its own. Add other PowMCP apps whenever your agent needs another job done.
Open the apps workspace
Choose your agent. Each button opens a new tab with only this app's endpoint ready to add.
Copy one ready-to-send prompt for any agent that supports remote MCP connections.
For clients that require manual configuration, use this app-only endpoint, its JSON entry, or one terminal command.
ChatGPT: enable Developer mode in Settings → Security and login, then add this MCP endpoint from the Plugins page. Availability depends on your account and workspace policy. PowMCP has not yet verified ChatGPT account linking. OpenAI setup guide
https://powmcp.com/scholarly-article-check/mcp {
"mcpServers": {
"powmcp-scholarly-article-check": {
"type": "http",
"url": "https://powmcp.com/scholarly-article-check/mcp"
}
}
}Terminal agents add this app with one command:
claude mcp add --transport http powmcp-scholarly-article-check https://powmcp.com/scholarly-article-check/mcpcodex mcp add powmcp-scholarly-article-check --url https://powmcp.com/scholarly-article-check/mcpgemini mcp add --transport http powmcp-scholarly-article-check https://powmcp.com/scholarly-article-check/mcpManage, disable, or remove this connection in your agent's own MCP settings. PowMCP does not label an external connection as installed without confirmation from that client.
Proof
Check a hosted or pasted JATS XML article against the JATS4R reuse and quality rules with the real Schematron engine, with exact rule-code evidence
Validate one public JATS XML journal article (NISO Z39.96, as served by PMC / Europe PMC and publishers) against the JATS4R Schematron reuse and quality rules (citation typing, ORCID, data-availability and funding statements, clinical-trial and ethics/COI checks, CRediT roles, display-object accessibility) with exact rule-code and SVRL-location evidence, or compare two same-lineage articles, with a clear machine-conformance-versus-scholarly-correctness boundary.
Request cost1 completed result
Guests get 50 lifetime app requests. Free accounts get 100 each calendar month.
article_check
Validates one public-URL or pasted JATS XML journal article (NISO Z39.96, as served by PMC / Europe PMC and publishers) against the JATS4R (JATS for Reuse) Schematron reuse and quality rules, the beyond-DTD interoperability checks a plain XML validator cannot make: citation typing, ORCID, data-availability and funding statements, clinical-trial and ethics/COI checks, CRediT roles, and display-object accessibility. The rules are compiled app-local to an ISO Schematron XSLT2 validator stylesheet and run under the vendored Saxon-HE 10.9 JVM in a no-network sandbox, with the article's DOCTYPE-referenced DTD stripped and never fetched (offline, XXE-safe). Supply exactly one of url (a public HTTP(S) JATS-XML URL) or body (the raw JATS XML pasted inline). Returns the conformance verdict: a conforms boolean, the JATS4R schematron package version and the Saxon engine version, the detected JATS model (article-type and dtd-version), severity counts, the failed-assert and successful-report totals, findings grouped by JATS4R rule code, bounded per-finding evidence (rule code, severity, SVRL location XPath, and message), a structural inventory (section/citation/contributor/figure/table counts and data-availability/funding/ethics presence), and distinguished states (not-well-formed-xml, not-a-jats-article, jats-conformant, jats-nonconformant, responded-other). Use for one-article conformance and diagnosis: 'will this pass PMC ingest', 'is this JATS4R-conformant', 'what reuse-rule problems does it have', 'is it clean enough to submit'. A conforms result means only that the bytes satisfied the JATS4R Schematron profile at the named versions; it never judges whether the article is scientifically correct, whether its citations are accurate, or whether a specific publisher's or PMC's ingest board will accept it, and it does not validate an un-hosted local draft. Offline validation is fast: a few seconds, mostly JVM and rule-set load; a call may take up to ~110 seconds. Lead with conformance pass/fail, then the schematron and engine versions.
article_compare
Runs the identical app-local JATS4R Schematron validation (Saxon-HE 10.9) over exactly two JATS XML articles, baseline first (urlA or bodyA), revised second (urlB or bodyB), sequentially under one shared 115-second deadline, then reports which JATS4R findings regressed or were resolved between them, keyed by rule code and SVRL location. Select this whenever the user gives two articles and asks what conformance changed or which is cleaner: the same article before and after copyediting or an XML regeneration, or two renders/revisions of the same canonical article (the JATS/DTD version may differ). The tool verifies that both inputs are JATS <article> documents and share at least one declared article-id; missing or disjoint identifiers produce an explicit not-comparable result with no diff or ranking. Returns per-article identifiers, hashes, detected JATS models, conforms verdicts and severity counts, a comparability note, and, only for shared-identity revisions, regressions, resolved findings, and a ranking by conformance then fewer error-severity findings. The ranking orders automated JATS4R conformance only (it never means one article is truer, more scholarly, or more likely to be accepted), and human review remains required for both.
Other apps for the jobs next to JATS Article Check.
Scope and boundaries for JATS Article Check.
Validate the Europe PMC fullTextXML URL for PMC2231364, or paste one complete JATS article body and set maxFindings to control how much rule evidence is returned.
Read status first: only a JATS conformant or nonconformant state means Schematron validation ran. Conforms means zero error-severity JATS4R finding, although warnings and informational findings may remain; fix the most severe rules at their reported locations and rerun. A non-article state or truncated findings cannot support a complete verdict, and conformance does not guarantee publisher acceptance or scholarly correctness.
The pinned JATS4R Schematron profile checks reuse and interoperability rules, not scholarly correctness, citation accuracy, or acceptance by PMC or a publisher. Validation runs offline without fetching a DOCTYPE DTD, pasted bodies are limited to about 8 MB, and maxFindings can make the returned list partial.