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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a668423c8eb91e2ccc02b6166db099dc3d76c1204406d149ffbb2f7ae63269d
|
|
| MD5 |
f5c83e56d7143ce26e8fd2320cc8676c
|
|
| BLAKE2b-256 |
fe484f3a1dea1bea207b9dc0e49727a31741b67a4c929453ed5d70d42277c0d0
|
File details
Details for the file aten_thoth_mcp_proxy-0.1.0-py3-none-any.whl.
File metadata
- Download URL: aten_thoth_mcp_proxy-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5e2c59997c1c4be7b3193a002f2d84273d2c835589217276aafcb5d0f4a3602
|
|
| MD5 |
20f9e3ac3ae3ebe126a4475cf9abe680
|
|
| BLAKE2b-256 |
2e8c36b70a6f2c91b0724030b5052efa80dfcfdbdda5ece96635d84a68827bf2
|