GXP GATEWAY AUDIT

Your AI, APIs and gateways touch lab systems.
Who keeps the audit trail?

GxP Gateway Audit (package mcp-glp-audit-proxy) records every call your AI assistants, integrations and gateways make to your systems, in a tamper-evident, fail-closed audit trail you host yourself. It complements your systems' own audit trail and is designed to support GLP/GxP, 21 CFR Part 11 and EU GMP Annex 11 workflows.

Request a demoSee the 23 regulationsDownload flyer (PDF)
Community edition: free, MIT, v0.4.0Self-hosted23 regulations and guidelines mapped240 automated tests

What you get

Use AI and automation on regulated data without losing track of who did what, when and why.

01

A complete record of every call

Who called which system, what was done, when, and the reason given, written at the moment of the call.

02

Tampering is detectable

Records are hash-chained. If one is altered, removed or reordered, verification shows exactly where.

03

Nothing goes unrecorded

Fail-closed: if a record cannot be written, the call does not go through, and you are alerted.

04

Human approval when you need it

Optionally require an approver to approve, review or reject a call before it is authorised.

05

Ready for inspections and audits

Search and export the trail, run review-by-exception, and produce an offline regulatory report of your configuration.

06

Easy to add

Runs as a reverse proxy in front of what you already have: clients only change their base URL. Always over TLS.

Regulations and guidelines covered

GxP Gateway Audit is designed to support the audit-trail and data-integrity requirements of each regulation below. Whether a system meets a regulation depends on the customer's validation, configuration and procedures.

Community

FDA 21 CFR Part 11

Regulation · USA

Status: Supported in Community (audit trail, access); e-signatures out of scope

Key controls: Hash-chained time-stamped trail, RBAC, export

Your part: Customer validates, syncs clocks, reviews trail; approval is not an e-signature

Community

21 CFR 58 (GLP) and 211 (GMP), record clauses

Regulation · USA

Status: Supported in Community

Key controls: Reason on writes, per-person identity

Your part: Analysed for record-keeping clauses only; keep reason capture on, no shared tokens

Community

FDA Part 11 Scope and Application (2003), Data Integrity Q&A (2018)

Guidance · USA

Status: Supported in Community

Key controls: Reconstruction of events, unique attribution

Your part: Customer SOPs and review

Partly

FDA Computer Software Assurance (2026)

Guidance · USA

Status: Partly supported

Key controls: Digital logs as assurance evidence

Your part: Device quality-system software; supporting practice only

Community

EU GMP Annex 11 (2011) and 2025 draft

Regulation (GMP guide) · EU / PIC/S

Status: Supported in Community

Key controls: Who/what/when/why, UTC, audit cannot be switched off, searchable export

Your part: Draft not in force; old/new values stay in target system

Partly

EU GMP Chapter 4

Regulation (GMP guide) · EU

Status: Partly supported

Key controls: Retention profiles, no disposal

Your part: Analysed for record clauses; archive is customer duty

Community

EMA computerised systems in clinical trials (2023)

Guidance · EU

Status: Supported in Community

Key controls: UTC, config record at start, search/export

Your part: Main text analysed; sec. 6.12 and Annexes 1-4 not read in detail

Partly

EU AI Act (high-risk systems)

Regulation · EU

Status: Partly supported

Key controls: Automatic event logs, 6-month default retention

Your part: Only if the customer's AI system is high-risk; gateway alone does not meet Art. 12

Customer responsibility

GDPR (EU) 2016/679

Regulation · EU

Status: Customer responsibility

Key controls: hash_only default, personal-data table (Art. 30)

Your part: Customer is controller: body mode, retention, erasure; no encryption at rest in Community

Community

OECD GLP Principles No. 1 and No. 17

Guidance (GLP) · OECD

Status: Supported in Community

Key controls: Append-only attributable records, QA read-only, 10-year profile, legal hold

Your part: No. 1 analysed for record clauses; facility SOPs and archive

Community

OECD No. 22 Data Integrity

Guidance (GLP) · OECD

Status: Supported in Community

Key controls: Startup record, config changes, reason

Your part: Add-on audit is a justified, time-bound measure

Partly

OECD No. 15, No. 25, No. 17 Suppl. 1

Guidance (GLP) · OECD

Status: Partly supported

Key controls: Tamper-evident chain, independent verify, TLS 1.3

Your part: WORM and signing: Pro or customer storage; failed-login lockout optional, off by default

Community

WHO TRS 1033 Annex 4

Guidance · International (WHO)

Status: Supported in Community

Key controls: Users, dates, reasons, audit enable/disable

Your part: No shared logins: customer user management

Community

MHRA GxP Data Integrity (2018)

Guidance · UK

Status: Supported in Community

Key controls: Who/what/when/why at time of call

Your part: ALCOA+ across process is customer duty

Community

PIC/S PI 041-1 and PI 011-3

Guidance · International (PIC/S)

Status: Supported in Community

Key controls: True-time records

Your part: PI 011-3 analysed for audit trail/backup sections only

Partly

ICH E6(R3)

Guidance (GCP) · International (ICH)

Status: Partly supported

Key controls: Access and role logging, retention

Your part: Data governance sections only; GCP not a target use

Community

Swiss GLP Ordinance SR 813.112.1

Regulation · Switzerland

Status: Supported in Community

Key controls: Person-linked changes with reason, 10-year retention profile

Your part: Archive and backup are customer duties

Customer responsibility

Swiss AGIT Validation of Computerised Systems V4.0

Guidance (GLP) · Switzerland

Status: Customer responsibility (tools Supported in Community)

Key controls: OQ runner, RTM, config report

Your part: Customer validates the gateway (AGIT category C); Pro adds IQ/OQ pack

Partly

Swiss AGIT Archiving and Acquisition of Electronic Raw Data V3.0

Guidance (GLP) · Switzerland

Status: Partly supported

Key controls: Readable JSONL, open verifier, archive manifest

Your part: WORM/off-site archive and archivist are customer duties

Partly

Swiss AGIT Change Management and IT Service Providers V2.0

Guidance (GLP) · Switzerland

Status: Partly supported

Key controls: Release notes naming affected requirements

Your part: Impact assessment and supplier agreements are customer duties

Not analysed

ISPE GAMP 5 2nd ed.

Industry guide · International

Status: Not analysed

Key controls: -

Your part: Paywalled; not regulator text

Not analysed

eIDAS / ZertES (qualified signatures)

Regulation · EU / Switzerland

Status: Not analysed

Key controls: -

Your part: Out of scope; e-signatures not provided

Not analysed

Swissmedic GMP/GCP guidance

Guidance · Switzerland

Status: Not analysed

Key controls: -

Your part: No separate guideline located; Swissmedic applies EU GMP/PIC/S

Legend. Legend: Supported in Community = the open-source edition provides controls designed to support the requirement; Supported with Pro = needs Pro features (signing, WORM, database storage, IQ/OQ pack); Partly supported = some requirements are supported, others stay with the customer or were only partly analysed; Customer responsibility = mainly the customer's procedures, the gateway only helps; Not analysed = text not reviewed (see Coverage). "Supported" is not a third-party approval; the customer's validation decides fitness for use. Rows link to the section that gives details.

No regulation is Pro-only as a whole: every supported row is supported by the free Community edition. Pro adds features such as record signing, WORM retention, database storage and the IQ/OQ pack. Personal electronic signatures under 21 CFR Part 11 are out of scope.

Limitations

  • The gateway records calls, not the internal state of the target system. It complements, and does not replace, the target system's own audit trail (old and new values).
  • In hash-only and redacted modes the trail proves a payload existed and was unaltered, but not its content. Responses are stored only in full mode.
  • A shared bearer token is an access gate, not a unique user identity. Attribution through an end-user header is only as strong as the gateway that authenticated the person.
  • The Community edition is tamper-evident (hash chain), not signed and not tamper-proof. Signing and WORM retention are Pro features.
  • Reason capture can be configured off; doing so removes a control the regulations expect.
  • Timestamps are as accurate as the host clock.
  • The failed-login lockout (listen.auth_failure_limit) is optional and off by default. The configuration report links it to its rule, and the customer's QA decides whether to switch it on.
  • Configuration changes take effect, and are recorded, only when the proxy restarts.

Summary table

RegulationTypeOriginSupportKey controlsNotes / customer action
FDA 21 CFR Part 11RegulationUSACommunity
Supported in Community (audit trail, access); e-signatures out of scope
Hash-chained time-stamped trail, RBAC, exportCustomer validates, syncs clocks, reviews trail; approval is not an e-signature
21 CFR 58 (GLP) and 211 (GMP), record clausesRegulationUSACommunity
Supported in Community
Reason on writes, per-person identityAnalysed for record-keeping clauses only; keep reason capture on, no shared tokens
FDA Part 11 Scope and Application (2003), Data Integrity Q&A (2018)GuidanceUSACommunity
Supported in Community
Reconstruction of events, unique attributionCustomer SOPs and review
FDA Computer Software Assurance (2026)GuidanceUSAPartly
Partly supported
Digital logs as assurance evidenceDevice quality-system software; supporting practice only
EU GMP Annex 11 (2011) and 2025 draftRegulation (GMP guide)EU / PIC/SCommunity
Supported in Community
Who/what/when/why, UTC, audit cannot be switched off, searchable exportDraft not in force; old/new values stay in target system
EU GMP Chapter 4Regulation (GMP guide)EUPartly
Partly supported
Retention profiles, no disposalAnalysed for record clauses; archive is customer duty
EMA computerised systems in clinical trials (2023)GuidanceEUCommunity
Supported in Community
UTC, config record at start, search/exportMain text analysed; sec. 6.12 and Annexes 1-4 not read in detail
EU AI Act (high-risk systems)RegulationEUPartly
Partly supported
Automatic event logs, 6-month default retentionOnly if the customer's AI system is high-risk; gateway alone does not meet Art. 12
GDPR (EU) 2016/679RegulationEUCustomer responsibility
Customer responsibility
hash_only default, personal-data table (Art. 30)Customer is controller: body mode, retention, erasure; no encryption at rest in Community
OECD GLP Principles No. 1 and No. 17Guidance (GLP)OECDCommunity
Supported in Community
Append-only attributable records, QA read-only, 10-year profile, legal holdNo. 1 analysed for record clauses; facility SOPs and archive
OECD No. 22 Data IntegrityGuidance (GLP)OECDCommunity
Supported in Community
Startup record, config changes, reasonAdd-on audit is a justified, time-bound measure
OECD No. 15, No. 25, No. 17 Suppl. 1Guidance (GLP)OECDPartly
Partly supported
Tamper-evident chain, independent verify, TLS 1.3WORM and signing: Pro or customer storage; failed-login lockout optional, off by default
WHO TRS 1033 Annex 4GuidanceInternational (WHO)Community
Supported in Community
Users, dates, reasons, audit enable/disableNo shared logins: customer user management
MHRA GxP Data Integrity (2018)GuidanceUKCommunity
Supported in Community
Who/what/when/why at time of callALCOA+ across process is customer duty
PIC/S PI 041-1 and PI 011-3GuidanceInternational (PIC/S)Community
Supported in Community
True-time recordsPI 011-3 analysed for audit trail/backup sections only
ICH E6(R3)Guidance (GCP)International (ICH)Partly
Partly supported
Access and role logging, retentionData governance sections only; GCP not a target use
Swiss GLP Ordinance SR 813.112.1RegulationSwitzerlandCommunity
Supported in Community
Person-linked changes with reason, 10-year retention profileArchive and backup are customer duties
Swiss AGIT Validation of Computerised Systems V4.0Guidance (GLP)SwitzerlandCustomer responsibility
Customer responsibility (tools Supported in Community)
OQ runner, RTM, config reportCustomer validates the gateway (AGIT category C); Pro adds IQ/OQ pack
Swiss AGIT Archiving and Acquisition of Electronic Raw Data V3.0Guidance (GLP)SwitzerlandPartly
Partly supported
Readable JSONL, open verifier, archive manifestWORM/off-site archive and archivist are customer duties
Swiss AGIT Change Management and IT Service Providers V2.0Guidance (GLP)SwitzerlandPartly
Partly supported
Release notes naming affected requirementsImpact assessment and supplier agreements are customer duties
ISPE GAMP 5 2nd ed.Industry guideInternationalNot analysed
Not analysed
-Paywalled; not regulator text
eIDAS / ZertES (qualified signatures)RegulationEU / SwitzerlandNot analysed
Not analysed
-Out of scope; e-signatures not provided
Swissmedic GMP/GCP guidanceGuidanceSwitzerlandNot analysed
Not analysed
-No separate guideline located; Swissmedic applies EU GMP/PIC/S

Details by regulation

GxP Gateway Audit is an audit proxy placed in front of MCP tool servers and HTTPS APIs. It writes a computer-generated, time-stamped, hash-chained audit trail of every call. It is designed to support customers' GLP, GMP and Part 11 data-integrity programmes. It has no third-party approval, and using it does not by itself make any system meet these rules. Fitness for use must be established by the customer's own validation, SOPs and reviews.

Texts checked: 25 October 2026, official sources (eCFR, fda.gov, health.ec.europa.eu, oecd.org, one.oecd.org, who.int, fedlex.admin.ch, picscheme.org, gov.uk, ich.org, ai-act-service-desk.ec.europa.eu).

1. FDA 21 CFR Part 11

Requirement: 11.10(e) "Use of secure, computer-generated, time-stamped audit trails to independently record the date and time of operator entries and actions that create, modify, or delete electronic records. Record changes shall not obscure previously recorded information." Also 11.10(b) copies, 11.10(c) protection, 11.10(d) "Limiting system access to authorized individuals", 11.10(g) authority checks.

Designed to support: server-generated UTC timestamps; append-only SHA-256 hash chain with a verify tool that detects altered, removed or reordered entries; fail-closed (no response is returned if the record cannot be written); role-based access (operator, approver, QA read-only, admin); tool and route allow/deny lists; complete electronic export.

Customer responsibility: system validation, clock synchronisation, record retention and backup, user management, and audit trail review. Electronic signatures (11.50, 11.70, 11.100, 11.200, 11.300) are out of scope; the approval feature is not an electronic signature.

2. FDA predicate rules and guidance (21 CFR 58, 211; Part 11 Scope and Application 2003; Data Integrity Q&A 2018)

Requirement: 58.130(e) changes "shall indicate the reason for such change"; Data Integrity Q&A 2018 defines an audit trail as a record that "allows for reconstruction of the course of events" and warns "When login credentials are shared, a unique individual cannot be identified through the login".

Designed to support: a reason is required on write calls by default (X-Audit-Reason header or reason field); per-person identity through one client certificate per person, or through a user id from an authenticated gateway.

Customer responsibility: keep reason capture switched on; do not rely on a shared token alone for attribution.

3. EU GMP Annex 11 (2011) and the 2025 draft revision

Requirement: Annex 11 sec. 9 "For change or deletion of GMP-relevant data the reason should be documented"; 12.4 systems "should be designed to record the identity of operators entering, changing, confirming or deleting data including date and time"; 7.1 "Access to data should be ensured throughout the retention period". The 2025 draft (consultation, not in force) adds who/what/when/why, time zone, audit trail "enabled and locked at all times", and searchable, sortable copies.

Designed to support: reason on writes, operator identity and UTC time in each record, audit that cannot be switched off (attempts are logged), searchable export for QA.

Customer responsibility: risk assessment, periodic audit trail review, retention and archive controls, and capturing old and new values in the target system's own audit trail.

4. OECD GLP Principles (No. 1) and No. 17 Computerised Systems

Requirement: No. 17 para 80 "Any change to electronic records must not obscure the original entry and be time and date stamped and traceable to the person who made the change"; para 95 record "the date, time and identity of operators entering, changing, confirming or deleting data"; No. 1 8.3.5 "Reason for changes should be given."

Designed to support: append-only, time-stamped, attributable records with reason; QA read-only role; admin-only settings; Swiss GLP retention profile (10 years after study completion) with legal hold.

Customer responsibility: test facility SOPs, archive management, and retaining original and modified data in the target system (No. 17 para 83).

5. MHRA GxP Data Integrity (2018) and PIC/S PI 041-1

Requirement: MHRA 6.13 an audit trail records actions "without obscuring or overwriting the original record" and captures "who, what, when and why"; PIC/S 9.6 entries "recorded in true time".

Designed to support: per-call records written at the time of the call, with identity, action, time and reason.

Customer responsibility: data governance, ALCOA+ controls across the whole process, and review.

6. OECD No. 22 Data Integrity, WHO TRS 1033 Annex 4 and the Swiss GLP Ordinance

Requirement: OECD No. 22 6.13 audit trails "should always be switched on during GLP activities", and switching them off and on again "should" be recorded automatically; WHO TRS 1033 Annex 4 11.10 audit trails "should reflect ... users, dates, times, ... changes and reasons for changes ... and enabling and disenabling of audit trails", 11.9 "shared logins or generic user access should not be used"; Swiss GLP Ordinance (SR 813.112.1) Annex 2 sec. 8.3 para 5 audit trails linking changes to persons with a reason, and sec. 10 retention "for at least ten years after study completion".

Designed to support: a record written when auditing starts; configuration changes recorded; per-person identity via client certificates or an authenticated gateway; reason on writes; a 10-year Swiss GLP retention profile.

Customer responsibility: individual user accounts, periodic checks that auditing is running, archive and backup. WHO 11.12 and OECD No. 22 6.13 accept add-on audit software as a justified, documented and time-bound measure for systems without their own audit trail, not as a permanent replacement.

6a. Swiss AGIT Guidelines for the Validation of Computerised Systems (V4.0, 2025)

AGIT guidance is not legally binding; it interprets the GLP Principles for Swiss test facilities. In a GLP test facility the gateway is itself a computerised system that transfers and stores GLP data, so the customer validates it like any configurable system (AGIT category C). The gateway is designed to support that work: an open OQ test runner, a requirements traceability matrix, a configuration report per regulation, release notes, audit-trail search and export for the audit-trail review SOP, and documented system requirements. Backup and restore, contingency planning and the validation itself remain customer procedures.

6b. Swiss AGIT Guidelines for the Archiving of Electronic Raw Data (V3.0, 2026) and for the Acquisition and Processing of Electronic Raw Data (V3.0, 2025)

AGIT guidance is not a legal document. It expects archived electronic raw data and their audit trails to stay complete, unaltered, linked to their metadata and readable for the whole retention period (at least 10 years under the Swiss GLP Ordinance), with an index of archived files, integrity checks at risk-based intervals, tested backups, validated migrations, and disposal only with documented test facility management approval.

Designed to support: plain-text JSONL records readable with standard tools and an open-source verifier; a hash chain and head file that show whether a log is complete and unaltered; UTC timestamps; a 10-year retention profile, legal hold, and no disposal function in the Community edition. Also in Community 0.4.0: an archive manifest (archive-manifest: file list with sizes, hashes, record ranges and versions); verification of an archived copy against that manifest (verify --manifest) with a dated check report; closing a log segment requires a reason, a ticket and an approver, all recorded; offline runs (verify, export, manifest, report, review) are written to a separate hash-chained run log, checked with verify-run-log, and never append to the live audit log.

Customer responsibility: the archivist, archive storage on read-only or WORM media, off-site backups, clock synchronisation, control of the gateway configuration, periodic integrity checks, migration and disposal procedures. The gateway records gateway activity; it complements, and does not replace, the data audit trail of the target system.

7. EU AI Act (only for high-risk AI systems)

Requirement: Art. 12(1) high-risk AI systems "shall technically allow for the automatic recording of events (logs)"; Art. 19(1) and 26(6) logs kept "of at least six months, unless provided otherwise in applicable Union or national law".

Designed to support: automatic logs of every tool or API call that a provider or deployer may keep; a 6-month default retention floor. The gateway does not by itself make an AI system meet Art. 12; whether the AI Act applies depends on the customer's system.

8. GDPR (Regulation (EU) 2016/679)

Every audit record holds personal data (user id and name, client certificate fingerprint, request path, kept headers), whatever the body mode. The body mode is the customer's choice and applies to both MCP and HTTPS traffic: the default hash_only stores only SHA-256 hashes of bodies, while full stores request and response bodies, which may include personal data. A SHA-256 of a short body can be re-identified by guessing, so hash_only is not anonymisation. The customer is the controller and decides the lawful basis, the body mode, retention, and how to answer erasure requests. Records are append-only and hash-chained: removing one breaks verification, so legal retention duties (GDPR Art. 17(3)) and erasure must be weighed by the customer before choosing full mode. The Community edition does not encrypt the log at rest; use disk encryption. A table of the personal data in each record is provided for the customer's record of processing (Art. 30).

6c. OECD No. 15 (archives), No. 25 (IT security) and No. 17 Supplement 1 (cloud)

These OECD advisory documents expect archived electronic records to be locked so they cannot be altered or deleted without detection, transfers documented with a chain of custody, migrations validated, accounts locked after repeated failed sign-ins, backups kept apart from the original data, and controls in cloud settings that the test facility runs independently of the provider.

Designed to support: a hash chain and head file that make alteration or deletion detectable; verification that the test facility can run itself against a head value it keeps on another system; TLS 1.3 for remote access; recorded failed authentication attempts. Also in Community 0.4.0: an archive manifest with custody records (archive-transfer) and a receipt that is added only when the received package matches (verify --manifest --received-by); an optional limit on repeated failed authentication attempts (listen.auth_failure_limit), off unless configured.

Customer responsibility: read-only or WORM archive storage, off-site backups of logs and configuration, restore tests, separation of system administration from data ownership, and service agreements with any hosting provider.

6d. EMA guideline on computerised systems and electronic data in clinical trials (2023), PIC/S PI 011-3 and AGIT change management and IT service provider guidelines

The EMA guideline expects changes to user roles and permissions to be recorded, timestamps to be unambiguous, the audit trail to be exportable as a searchable data file, the generation of data extracts and exports to be traceable, and audit trail review to be risk-based. AGIT expects software upgrades to be impact-assessed against the affected requirements.

Designed to support: UTC timestamps; recorded configuration at every start; audit-trail search and export. Also in Community 0.4.0: each startup record holds the identities and roles, the body mode and a SHA-256 of the effective configuration, and lists what changed since the previous start (with an optional change reason); a review-by-exception report (review) with JSON, Markdown or CSV output; a record of each offline export and verification run in a separate hash-chained run log; release notes that name the affected requirements and the effect on existing records; and an OQ runner option (--requirement) that repeats only the tests mapped to named requirements.

The gateway's hash chain is kept on the customer's system. It is not a distributed or independent ledger.

Coverage of this mapping
Regulation or guidanceStatus
21 CFR Part 11Analysed
21 CFR Part 58Analysed (record clauses: 58.130(e), 58.190, 58.195)
21 CFR 211 (record-related)Analysed (record clauses: 211.68, 211.180, Subpart J)
FDA Part 11 Scope and Application (2003)Analysed
FDA Data Integrity Q&A (2018)Analysed
FDA Computer Software Assurance guidance (Feb 2026)Analysed (applies to device quality-system software; supporting practice only)
EU GMP Annex 11 (2011)Analysed
EU GMP Annex 11 draft (2025)Analysed (draft, not in force)
EU GMP Chapter 4Analysed (record clauses: 4.9-4.10, retention)
OECD GLP No. 1Analysed (record clauses: 8.3.5, 10)
OECD GLP No. 17Analysed
OECD GLP No. 22Analysed
PIC/S PI 041-1Analysed
MHRA GxP Data Integrity (2018)Analysed
WHO TRS 1033 Annex 4Analysed
Swiss GLP Ordinance SR 813.112.1Analysed (Swissmedic applies EU GMP/PIC/S; no separate computerised-system guideline located)
ICH E6(R3)Analysed (data governance: 4.2.2-4.2.8, 4.3.8; GCP not a target use)
ISPE GAMP 5 2nd ed.Not analysed (paywalled; not regulator text)
Swiss AGIT CSV V4.0Analysed (validation guideline)
Swiss AGIT Archiving of Electronic Raw Data V3.0Analysed
Swiss AGIT Acquisition and Processing of Electronic Raw Data V3.0Analysed
OECD No. 15, No. 17 Suppl. 1, No. 25Analysed
EMA GCP computerised systems guideline (2023)Analysed (main text sec. 4-6.11; sec. 6.12 and Annexes 1-4 not read in detail)
PIC/S PI 011-3Analysed (sections 19-20, audit trail and backup; PI 041 preferred)
Swiss AGIT IT Service Providers V2.0, Change Management V2.0Analysed
GDPRAnalysed (Official Journal text, Arts. 4, 5, 17, 25, 30, 32)
EU AI ActAnalysed (Official Journal text, Arts. 12, 19, 26(6))
eIDAS / ZertES, RFC 3161Not analysed (out of scope; electronic signatures not provided)
OECD GLP FAQNot analysed (not obtained)

This page describes design intent. It is not legal advice and it is not a third-party approval of the product.

How it works

Three steps, no changes to your target systems.

Clients, AI assistants, gateways→GxP Gateway Audit (MCP / HTTPS, always TLS)→MCP servers, APIs, LLM endpoints
1. CONNECT

Point clients at the proxy

Only the base URL changes. Authentication by mTLS and/or token.

2. RECORD

Every call is written to the trail

Who, what, when and why, with the request body stored the way you choose: hash only (default), redacted or full.

3. VERIFY

Check and review at any time

If a record is deleted or the chain is broken, it stops and alerts, saying which record and when. Review and archive tools help QA.

Technical details (for IT and validation teams)

These materials support your own validation process; your organisation remains responsible for validating its use.

Community vs Pro

Start free with Community. Pro is the paid edition for larger deployments, demo on request.

Community

Free, MIT, available now (v0.4.0)

  • Hash chain, RFC 8785 canonical records
  • Approvals, reasons and roles
  • TLS 1.3 / mTLS, body storage modes
  • Regulatory report, archive manifest, run log
  • Open OQ runner and traceability matrix
Pro

Paid edition, demo on request

  • Ed25519/ECDSA record signing and signed checkpoints
  • RFC 3161 timestamps, signed archive manifests
  • PostgreSQL and SQL Server stores
  • S3 Object Lock (WORM), KMS/HSM, syslog
  • Review flags and sign-off, PDF/CSV reports
  • Full IQ/OQ validation pack, SSO/OAuth
CapabilityCommunity: free, MIT, available now (v0.4.0)Pro: demo on request
ChannelsMCP and HTTPS: mcp2mcp, mcp2api, api2mcp, api2api, mcp2llm, api2llmYes
Reverse proxy, TLS, mTLS and/or token authYesYes
Audit trailTamper-evident, fail-closed hash chain (schema 1.3.0). Every record is RFC 8785 canonical JSON, hash-chained with SHA-256.+ signed records
Optional human approvalAn approver records approved, reviewed or rejected with glp_approve (MCP) or POST /_glp/approve (HTTPS); only approved authorises the call.Yes
Audit storageJSONLPostgreSQL and SQL Server stores
Body storageHash only (default), redacted or fullYes
Review & archiveReview command, archive manifests, hash-chained run log for offline runs+ WORM archiving to S3 Object Lock, SIEM
Regulatory reportOffline command+ reports
ValidationOpen traceability matrix and OQ runnerFull IQ/OQ validation pack
Enterprise—SSO, approvals
Tests240 automated tests—
FlyerDownload flyer (PDF, EN) · ES—
Hello-world guidesStep by step: stdio → proxy → stdio / stdio → proxy → HTTPS / HTTPS gateway—
How to get itPyPI / GitHub / Release v0.4.0 / MCP RegistryPaid edition, demo on request: Request a Pro demo

See it on your stack

A short demo on one workflow with the tools you already own.

Request a demoDownload flyer (PDF)

Contact

GxP Gateway Audit (package mcp-glp-audit-proxy) is designed to support GLP/GxP, 21 CFR Part 11 and EU GMP Annex 11 workflows and complements your systems' own audit trail. It does not by itself guarantee regulatory compliance and does not replace the validation of your systems, which remains the responsibility of the user organisation. This page describes design intent. It is not legal advice and it is not a third-party approval of the product.
© Antonio Castellon · [email protected]