Skip to main content

Thoth governance proxy for Claude Desktop / MCP servers

Project description

aten-thoth-mcp-proxy

Thoth governance sidecar for Claude Desktop and MCP servers. Intercepts every tools/call and enforces HIPAA/SOC2 policy before the upstream MCP server executes.

Install

pip install aten-thoth-mcp-proxy
thoth --version

Usage

Wrap a single MCP server

thoth run \
  --agent-id gdrive \
  --tenant-id your-org \
  --enforcement-mode progressive \
  --api-key "$THOTH_API_KEY" \
  -- npx -y @modelcontextprotocol/server-gdrive

Wrap your entire Claude Desktop config (idempotent)

thoth wrap-config \
  --tenant-id your-org \
  --api-key "$THOTH_API_KEY" \
  --enforcement-mode progressive \
  --output ~/Library/Application\ Support/Claude/claude_desktop_config.json \
  ~/Library/Application\ Support/Claude/claude_desktop_config.json

Show governance state

thoth status

Environment variables

Variable Description
THOTH_API_KEY API key from your Thoth dashboard
THOTH_ENFORCER_URL Override enforcer URL (default: Thoth cloud)
THOTH_USER_ID Per-user identifier for audit trail (email or LDAP uid)

Session intent (HIPAA minimum-necessary)

thoth run \
  --agent-id phi-boundary \
  --tenant-id your-org \
  --session-intent phi_eligibility_check \
  --enforcement-mode block \
  --api-key "$THOTH_API_KEY" \
  -- npx -y @mcp/server-phi-boundary

Enterprise fleet deployment

See Enterprise Fleet Deployment for Jamf + Intune deployment guides.

Why the proxy is open source

The proxy is intentionally open source. Security and compliance buyers — the exact people deploying this — need to audit what runs on their employees' machines. An opaque binary raises questions; readable source closes them.

The moat is not here. The proxy is ~250 lines that intercept a JSON-RPC call and POST to an enforcer. Anyone can write this. What competitors cannot replicate is the enforcer logic, the MOSES behavioral baselines, the compliance packs, and the session telemetry that compounds with every governed customer. All of that is server-side and never ships in this package.

Stable public API

The following are part of the stable public API surface as of v0.1.0. Breaking changes require a major version bump and a migration guide:

Interface Stable
thoth run CLI flags
thoth wrap-config CLI flags and intent_map.json schema
thoth status output format
--session-intent flag name and string values
THOTH_API_KEY, THOTH_ENFORCER_URL, THOTH_USER_ID env vars
JSON-RPC error codes -32001 (BLOCK) and -32002 (STEP_UP)

The session_intent string values (e.g. phi_eligibility_check, calendar_management) are defined by the enforcer's compliance packs, not this package. New intent values are additive and non-breaking; removing or renaming an existing value is a breaking change on the enforcer side.

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aten_thoth_mcp_proxy-0.1.0.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aten_thoth_mcp_proxy-0.1.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file aten_thoth_mcp_proxy-0.1.0.tar.gz.

File metadata

  • Download URL: aten_thoth_mcp_proxy-0.1.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aten_thoth_mcp_proxy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0a668423c8eb91e2ccc02b6166db099dc3d76c1204406d149ffbb2f7ae63269d
MD5 f5c83e56d7143ce26e8fd2320cc8676c
BLAKE2b-256 fe484f3a1dea1bea207b9dc0e49727a31741b67a4c929453ed5d70d42277c0d0

See more details on using hashes here.

File details

Details for the file aten_thoth_mcp_proxy-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aten_thoth_mcp_proxy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c5e2c59997c1c4be7b3193a002f2d84273d2c835589217276aafcb5d0f4a3602
MD5 20f9e3ac3ae3ebe126a4475cf9abe680
BLAKE2b-256 2e8c36b70a6f2c91b0724030b5052efa80dfcfdbdda5ece96635d84a68827bf2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page