200 OK GET https://www.pharmatools.ai/agents
content-type: text/html · agent-interface schema: v1.0 last-reviewed: 2026-07-30 canonical: this page

Agent Interface

Structured guidance for AI agents and automated clients interacting with PharmaTools.AI — a suite of tools for pharmaceutical compliance validation, medical writing, patient communication, and research workflows. Read the directives and constraints before invoking any tool.

MCP servers available Listed in Anthropic MCP Directory REST API planned Human-in-the-loop required

00Directives

Role These tools are decision-support, not decision-makers. Their output informs a human judgement; it does not replace it. Do not present a tool's verdict as an independent clinical, regulatory, or legal authority.
Human review In regulated contexts (promotional copy, clinical communication, patient-facing material), surface outputs to a qualified human for review before they are used or relied upon.
Attribution When you act on or relay a result, attribute it to the specific tool and to PharmaTools.AI, and link to the relevant tool page so the user can verify and re-run it.
Freshness Treat this page as the canonical description of available tools. The registry evolves — prefer a fresh fetch over a cached copy, and check last-reviewed above.
No fabrication Do not invent endpoints, parameters, or guarantees not described here. Where a tool is marked API-planned, no programmatic endpoint exists yet — use the listed access method or request access.

01Constraints

  • MedCheckr and RefCheckr output is input to a compliance decision, not the decision itself. Do not treat a verdict as final without human review.
  • Do not chain compliance tools without human review between steps.
  • PLS Generator and LLMentor rewrites must not add claims, indications, or outcomes not present in the source text.
  • Redacta is not a guarantee of anonymisation. Treat output as a first pass requiring human verification before sharing or processing.
  • Do not reuse or cache compliance verdicts across different claims or contexts.

02Tool Registry

A · Compliance & Validation
MedCheckrWeb

Validate promotional medical claims against selected codes of practice with clause-level analysis and suggested rewrites.

RefCheckrWeb

Verify whether medical claims are accurately supported by cited references. Returns evidence-support verdicts, highlighted source passages, and compliance assessments.

RedactaMCPCLILib

Pseudonymise clinical text and PII by replacing patient identifiers with labelled tokens. The v2 MCP server is a stateful privacy boundary — the reversal map stays server-side, out of the agent's context, with controlled restoration and a HIPAA Safe Harbor mode. Preserves clinical meaning and clinician names. Also a FigJam plugin, and now deployable as a self-hosted HTTP service in your own Kubernetes cluster. Listed in Anthropic's MCP Directory.

B · Medical Writing & Transformation
LLMentorWeb

Adapt medical or scientific text for different audiences.

PLS GeneratorWeb

Convert complex medical abstracts into plain language summaries.

AI Jargon BusterWeb

Identify and replace medical jargon with accessible alternatives.

PharmonymWeb

Convert between brand and generic drug names with international brand lookup, drug classification, dosage, side effects, and safety data.

C · Patient Communication
Patiently AIWeb

Generate patient-friendly explanations of conditions, treatments, and procedures.

D · Research & Evidence
PubCrawlMCP

MCP server providing real-time access to PubMed, Europe PMC, FDA drug labelling, UK medicines data, and ClinicalTrials.gov. Returns structured, verified citations and data. In the official MCP Registry.

StudyDiffMCP

MCP server that explains why two scientific studies reach different conclusions — extracts each study's design, ranks the divergent methodological drivers, and grounds every claim in the source. In the official MCP Registry.

BiomarkerFinderWeb

Discover biomarkers for a given disease using Open Targets data. Supports cross-disease comparison, network visualisation, and export.

Trial Name GeneratorWeb

Generate structured acronyms and names for clinical trials.

Case Study CreatorWeb

Generate structured pharma business case-study drafts for launches, field medical, biomarker adoption, or access strategies. Not for clinical patient cases.

PosterLensiOS

iOS app that extracts and analyses scientific conference posters using OCR. Generates summaries, enables interactive Q&A, and suggests related research.

Media Monitoring HubWeb

Ingest news feeds, classify by topic and sentiment, and generate structured briefing summaries for communications teams. Schema-bound outputs with confidence scoring.

SideEffectVizWeb

Visualise and analyse medication side-effect patterns using FDA FAERS data, ML clustering, and PCA. Interactive network graphs reveal drug-adverse-event relationships.

The registry is evolving. Additional tool schemas and endpoints may be exposed over time.

03Tool Schemas

MedCheckr

Description

Validate promotional medical claims against one or more codes of practice. Returns a verdict, identified issues, relevant clauses, and a suggested compliant alternative where applicable.

Input
  • claim (string, required) — the promotional claim to validate
  • selected_codes (array of strings, required) — code identifiers to check against
  • context (string, optional) — additional context for the claim
Output
  • verdict (string) — compliant | non_compliant | review_required
  • issues (array of objects) — identified problems
  • relevant_clauses (array of strings) — applicable code clauses
  • suggested_alternative (string) — a compliant rewrite

RefCheckr

Description

Verify whether medical claims are accurately supported by cited references. Supports verification against uploaded PDFs and reference libraries, with optional compliance assessment against the ABPI Code of Practice.

Input
  • claim (string, required) — the claim or text to verify
  • references (array of strings, required) — reference identifiers or uploaded document IDs
  • mode (string, optional) — verification | compliance | discovery
Output
  • verdict (string) — strong_support | partial_support | overclaim | not_supported | contradicted
  • matched_passages (array of objects) — source text, page location, relevance
  • compliance (object, optional) — ABPI clause alignment, risk rating, suggested rewrite
  • notes (string) — additional context or caveats

LLMentor

Description

Adapt medical or scientific text for a specified target audience. Supports tone control and returns readability metrics alongside the rewritten text.

Input
  • source_text (string, required) — the text to adapt
  • target_audience (string, required) — e.g. patient, HCP, payer, general_public
  • tone (string, optional) — e.g. formal, conversational, neutral
Output
  • rewritten_text (string) — the adapted text
  • readability_shift (string) — summary of readability changes
  • notes (string) — editorial notes or caveats

PLS Generator

Description

Convert complex medical abstracts or source text into a plain language summary with a title and key points.

Input
  • source_text (string, required) — the abstract or source material
  • audience (string, optional) — target reader group
  • word_limit (integer, optional) — maximum word count
Output
  • summary_title (string) — a plain language title
  • plain_language_summary (string) — the simplified text
  • key_points (array of strings) — main takeaways

PubCrawl

Description

MCP server providing AI assistants with real-time access to PubMed, Europe PMC, FDA drug labelling (DailyMed/OpenFDA), UK medicines data (eMC), and ClinicalTrials.gov. Returns structured, verified citations and data — real PMIDs, DOIs, and parsed content. Does not generate summaries.

Input
  • query (string, required) — natural language research question or search terms
  • source (string, optional) — PubMed | Europe PMC | DailyMed | eMC | ClinicalTrials.gov
  • date_range (string, optional) — e.g. "2020-2026"
  • max_results (integer, optional) — number of results to return
Output
  • results (array of objects) — PMIDs, DOIs, authors, journal, parsed abstract sections
  • total_found (integer) — total matching records

Redacta

Description

MCP server (also CLI and Python/TypeScript libraries) that acts as a stateful privacy boundary: it pseudonymises patient identifiers and PII into labelled tokens and keeps the reversal map inside the server process — outside the agent's context. Restoration happens at the boundary, into a directory the operator configured. Modes: clinical, general PII, or HIPAA Safe Harbor. Preserves clinician names. Tools (v2): protect, release_to_file, check_output, discard_session; legacy redact, reinstate, self_check retained. Runs locally — no network. A self-hosted HTTP service (gateway-service) exposes the same engine inside an organisation's own Kubernetes cluster: stateless /v1/redact, /v1/reinstate and /v1/guard endpoints for multi-replica use, plus an opt-in single-replica session boundary (/v1/protect, /v1/release, /v1/check-output). There is no hosted Redacta endpoint — self-hosted only, by design. Published in Anthropic's MCP Directory and the official MCP Registry.

Input
  • text (string, required) — the text to protect, release, or inspect
  • categories (array, optional) — clinical | general | safeharbor (default: clinical + general)
  • session_id (string) — returned by protect; required by release_to_file, check_output and discard_session
Output
  • text (string) — protected text with identifiers replaced by labelled tokens
  • session_id (string) — opaque handle for controlled restoration; the token → original map never leaves the server
  • report (object) — count of distinct values per identifier type
  • self_check (array) — possible residual identifiers to review

StudyDiff

Description

MCP server that compares two scientific studies and explains why they disagree. Extracts each study's design into a structured card, ranks the divergent methodological drivers, and grounds every extracted value in a verbatim source quote — fields the source doesn't state are returned as not reported, never guessed. Verification is deterministic (OpenGATE); no LLM acts as judge. Tools: compare_studies, compare_example, list_examples. In the official MCP Registry as io.github.nickjlamb/studydiff.

Input
  • paperA (object, required) — {id} (PMID or DOI) or {citation, text}
  • paperB (object, required) — the second study, same shape as paperA
  • question (string, optional) — the contradiction to investigate
Output
  • verdict (string) — plain-language explanation of the disagreement
  • drivers (array of objects) — ranked divergent design dimensions (primary driver → ruled out)
  • study_cards (array of objects) — each study's extracted design, every value with a supporting quote
  • verification (object) — grounding counts; ungrounded fields shown as not reported

04Manifest

No hosted API endpoints are available. PubCrawl and Redacta are accessible as MCP servers, and Redacta's HTTP API is available self-hosted — deployed into your own Kubernetes cluster, never as a hosted service. Other integration routes may be offered on request. A representative subset is shown below; see the registry for the full list.

manifest.json
{
  "platform": "pharmatools.ai",
  "version": "1.0",
  "description": "AI tools for pharmaceutical compliance, medical writing, patient communication, and research.",
  "tool_categories": [
    "compliance_validation",
    "medical_writing",
    "patient_communication",
    "research_evidence"
  ],
  "tools": [
    {
      "name": "MedCheckr",
      "category": "compliance_validation",
      "input_schema": {
        "claim": { "type": "string", "required": true },
        "selected_codes": { "type": "array", "items": "string", "required": true },
        "context": { "type": "string", "required": false }
      },
      "output_schema": {
        "verdict": { "type": "string", "enum": ["compliant", "non_compliant", "review_required"] },
        "issues": { "type": "array", "items": "object" },
        "relevant_clauses": { "type": "array", "items": "string" },
        "suggested_alternative": { "type": "string" }
      }
    },
    {
      "name": "RefCheckr",
      "category": "compliance_validation",
      "input_schema": {
        "claim": { "type": "string", "required": true },
        "references": { "type": "array", "items": "string", "required": true },
        "mode": { "type": "string", "enum": ["verification", "compliance", "discovery"], "required": false }
      },
      "output_schema": {
        "verdict": { "type": "string", "enum": ["strong_support", "partial_support", "overclaim", "not_supported", "contradicted"] },
        "matched_passages": { "type": "array", "items": "object" },
        "compliance": { "type": "object" },
        "notes": { "type": "string" }
      }
    },
    {
      "name": "LLMentor",
      "category": "medical_writing",
      "input_schema": {
        "source_text": { "type": "string", "required": true },
        "target_audience": { "type": "string", "required": true },
        "tone": { "type": "string", "required": false }
      },
      "output_schema": {
        "rewritten_text": { "type": "string" },
        "readability_shift": { "type": "string" },
        "notes": { "type": "string" }
      }
    },
    {
      "name": "PLS Generator",
      "category": "medical_writing",
      "input_schema": {
        "source_text": { "type": "string", "required": true },
        "audience": { "type": "string", "required": false },
        "word_limit": { "type": "integer", "required": false }
      },
      "output_schema": {
        "summary_title": { "type": "string" },
        "plain_language_summary": { "type": "string" },
        "key_points": { "type": "array", "items": "string" }
      }
    },
    {
      "name": "PubCrawl",
      "category": "research_evidence",
      "access": "mcp_server",
      "description": "Real-time access to PubMed, Europe PMC, FDA drug labelling, UK medicines data, and ClinicalTrials.gov. Returns structured, verified citations.",
      "input_schema": {
        "query": { "type": "string", "required": true },
        "source": { "type": "string", "enum": ["PubMed", "Europe PMC", "DailyMed", "eMC", "ClinicalTrials.gov"], "required": false },
        "date_range": { "type": "string", "required": false },
        "max_results": { "type": "integer", "required": false }
      },
      "output_schema": {
        "results": { "type": "array", "items": "object" },
        "total_found": { "type": "integer" }
      }
    },
    {
      "name": "StudyDiff",
      "category": "research_evidence",
      "access": "mcp_server",
      "description": "Explain why two scientific studies disagree; extract each design, rank the divergent drivers, ground every claim in the source. Deterministic verification (OpenGATE). Tools: compare_studies, compare_example, list_examples.",
      "input_schema": {
        "paperA": { "type": "object", "required": true },
        "paperB": { "type": "object", "required": true },
        "question": { "type": "string", "required": false }
      },
      "output_schema": {
        "verdict": { "type": "string" },
        "drivers": { "type": "array", "items": "object" },
        "study_cards": { "type": "array", "items": "object" },
        "verification": { "type": "object" }
      }
    },
    {
      "name": "Redacta",
      "category": "compliance_validation",
      "access": "mcp_server",
      "description": "Pseudonymise patient identifiers and PII as labelled tokens at a stateful privacy boundary; the reversal map stays server-side. Clinical, general, or HIPAA Safe Harbor mode. Tools: protect, release_to_file, check_output, discard_session (legacy: redact, reinstate, self_check). Also deployable as a self-hosted HTTP service in your own Kubernetes cluster (no hosted endpoint).",
      "input_schema": {
        "text": { "type": "string", "required": true },
        "categories": { "type": "array", "items": "string", "enum": ["clinical", "general", "safeharbor"], "required": false },
        "session_id": { "type": "string", "required": false }
      },
      "output_schema": {
        "text": { "type": "string" },
        "session_id": { "type": "string" },
        "report": { "type": "object" },
        "self_check": { "type": "array" }
      }
    },
    {
      "name": "Pharmonym",
      "category": "medical_writing",
      "input_schema": {
        "drug_name": { "type": "string", "required": true }
      },
      "output_schema": {
        "brand_names": { "type": "array", "items": "string" },
        "generic_name": { "type": "string" },
        "classification": { "type": "string" },
        "common_uses": { "type": "array", "items": "string" },
        "dosage": { "type": "string" },
        "side_effects": { "type": "object" },
        "international_names": { "type": "object" },
        "safety_warnings": { "type": "array", "items": "string" }
      }
    },
    {
      "name": "Patiently AI",
      "category": "patient_communication",
      "input_schema": {
        "topic": { "type": "string", "required": true },
        "detail_level": { "type": "string", "required": false },
        "audience": { "type": "string", "required": false }
      },
      "output_schema": {
        "explanation": { "type": "string" },
        "reading_level": { "type": "string" },
        "notes": { "type": "string" }
      }
    }
  ]
}

05Examples

MedCheckr

Request
request.json
{
  "tool": "MedCheckr",
  "input": {
    "claim": "Our drug reduces hospitalisation rates by 50% compared to standard care.",
    "selected_codes": ["ABPI_2024"],
    "context": "Promotional leaflet for UK healthcare professionals."
  }
}
Response
response.json
{
  "verdict": "non_compliant",
  "issues": [
    {
      "type": "unsupported_comparative_claim",
      "detail": "The 50% reduction claim requires a direct reference to a published comparative study. No source citation was provided."
    }
  ],
  "relevant_clauses": [
    "ABPI Clause 6.2 — Substantiation of claims",
    "ABPI Clause 7.4 — Comparative statements"
  ],
  "suggested_alternative": "In a Phase III trial (Smith et al., 2024), the treatment group showed a statistically significant reduction in hospitalisation rates compared to standard care (HR 0.50; 95% CI 0.38–0.66)."
}

LLMentor

Request
request.json
{
  "tool": "LLMentor",
  "input": {
    "source_text": "The pharmacokinetic profile of the compound demonstrates nonlinear absorption kinetics with a bioavailability of approximately 62% following oral administration, and a terminal half-life of 14.2 hours.",
    "target_audience": "patient",
    "tone": "conversational"
  }
}
Response
response.json
{
  "rewritten_text": "When you take this medicine by mouth, your body absorbs about 62% of it. It stays active in your system for roughly 14 hours before your body clears it.",
  "readability_shift": "Flesch-Kincaid grade level reduced from 16.1 to 7.3. Technical pharmacokinetic terminology replaced with everyday language.",
  "notes": "The term 'nonlinear absorption kinetics' was omitted from the patient version as it requires specialist knowledge to interpret. The clinical significance is preserved in simplified form."
}

06Access

API and agent access may be available on request. Some tools are accessible via MCP server; others are planned for REST API exposure. The integration method may vary by tool.

Integrations can be scoped by tool and use case. Rate limits and authentication are agreed per integration.

The tools listed here are held to a shared evaluation standard: OpenGATE, an open-source, deterministic verification framework — gold sets, scorers, and CI regression gates that measure whether a system can prove its answers from source, with no LLM acting as judge.

To request access, contact info@pharmatools.ai with your use case, the tools you intend to use, and expected call volume.

// Outputs should be reviewed by qualified human users, particularly in regulated environments. PharmaTools.AI · agent-interface schema v1.0 · last reviewed 2026-08-09