Skip to main content

MCP server that pauses AI before it sends an email you'll regret.

Project description

bodhisattva-mcp

The pause before a regrettable send.

demo placeholder — replaced in Task 13

An MCP server that intercepts email sends from AI agents (Claude Desktop, Claude Code, Cursor, Codex) and runs every draft through a wisdom-frame pass. Depending on what the frame sees, it either:

  • proceeds — sends immediately via Gmail;
  • revises — returns a suggested rewrite and does not send; or
  • holds — does not send (critical wellbeing signal, or consequential with no safe revision).

Every pause is logged to a local SQLite journal. A localhost-only web UI at http://localhost:8473 lets you review past pauses and see the framing's reasoning.

Quickstart

# 1. Install
uv tool install bodhisattva-mcp

# 2. Drop in your Google Cloud OAuth client secret (see Install guide).
#    Assumes exactly one client_secret_*.json in ~/Downloads — rename manually if you have several.
mkdir -p ~/.bodhisattva && mv ~/Downloads/client_secret_*.json ~/.bodhisattva/client_secret.json

# 3. Configure your LLM provider
export ANTHROPIC_API_KEY=sk-ant-...

# 4. Wire into your MCP client (example: Claude Code)
cat > .mcp.json <<'EOF'
{
  "mcpServers": {
    "bodhisattva": {
      "command": "uvx",
      "args": ["bodhisattva-mcp"]
    }
  }
}
EOF

Full setup (Google Cloud OAuth, all MCP clients): docs/install.md.

What it does

Existing AI safety layers protect infrastructure and budgets. Bodhisattva protects relationships. When an agent tries to send an email on your behalf, the framing looks at: emotional context, interpersonal stakes, whether the draft would be hard to take back — and inserts a pause.

You stay in the loop. The agent gets a clear structured response (proceed / revise / hold) it can act on. The journal at http://localhost:8473 lets you see your own patterns over time.

What it doesn't do (yet)

v0.1 is intentionally narrow:

  • Gmail only. Slack, Outlook, and other wrappers are v0.3+.
  • No hosted memory. The framing is stateless: it sees the current draft and optional context field, not your past conversations. Memory-aware framing is v0.2.
  • No Google verification. You bring your own Google Cloud OAuth app, so you're a "test user" of your own app. This is a feature: your drafts never touch any server except the LLM provider you chose.

Privacy

Local-first. Your drafts stay on your machine except for the framing call you chose to route through your LLM provider. Credentials are stored at ~/.bodhisattva/ with 0600 permissions. Full details: docs/privacy.md.

Install

Full install guide: docs/install.md.

Status

  • v0.1 (this release): free tier — one wrap (send_email), local journal, bring-your-own LLM key.
  • v0.2 (planned): hosted memory-aware framing + paid subscription.
  • v0.3+: Slack, Outlook, additional wrappers as demand dictates.

Contributing

See CONTRIBUTING.md. Changelog: CHANGELOG.md.

License

MIT — see LICENSE.

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

bodhisattva_mcp-0.1.0a1.tar.gz (159.3 kB view details)

Uploaded Source

Built Distribution

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

bodhisattva_mcp-0.1.0a1-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file bodhisattva_mcp-0.1.0a1.tar.gz.

File metadata

  • Download URL: bodhisattva_mcp-0.1.0a1.tar.gz
  • Upload date:
  • Size: 159.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bodhisattva_mcp-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 d38bb17b37bc1365886d1e04c4440b1c6d868aa3744ebf1249f791079d012fde
MD5 ed3256f5647f5a96cf022f4e490cad9f
BLAKE2b-256 04ac30860f3241e231e1685df516f5be53ebaa8d41428dbd6a4b83c452bade56

See more details on using hashes here.

Provenance

The following attestation bundles were made for bodhisattva_mcp-0.1.0a1.tar.gz:

Publisher: release.yml on rogercollell/bodhisattva-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bodhisattva_mcp-0.1.0a1-py3-none-any.whl.

File metadata

File hashes

Hashes for bodhisattva_mcp-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 f85371b244083bdd520576c0dbfd25592e315f66bc975ff91e9c783814ab3481
MD5 7d8d242aff80625695a6c39f2c5df8e7
BLAKE2b-256 b528691b085b3b302f11702d5dc5bb9e72e1f8397c3f3d1568ca3938d8d24dde

See more details on using hashes here.

Provenance

The following attestation bundles were made for bodhisattva_mcp-0.1.0a1-py3-none-any.whl:

Publisher: release.yml on rogercollell/bodhisattva-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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