Skip to content

Security: PatterAI/awesome-chatgpt-call

Security

SECURITY.md

Security policy

Supported versions

Security fixes land on main and ship as patch releases on the latest minor.

Version Supported
0.1.x yes
< 0.1 no

Reporting a vulnerability

Please do not open a public GitHub issue for a security vulnerability. Instead:

Include reproduction steps, the affected version, and any logs or stack traces you can share. Phone numbers, Twilio Account SIDs, OpenAI keys, and tenant tokens must be redacted before sending.

What to expect

  • An acknowledgement within 3 business days.
  • A triage assessment (severity, scope) within 7 business days.
  • A fix or mitigation plan with a target release date for confirmed issues.
  • Credit in the changelog and release notes if you wish.

In scope

  • The MCP server endpoints under /mcp.
  • The setup wizard at /setup.
  • Any code path that handles tenant tokens, Twilio credentials, OpenAI / ElevenLabs keys, phone numbers, or call transcripts.
  • The encryption-at-rest layer (src/crypto.ts).
  • The multi-tenant isolation guarantees (DB queries scoped by tenant_token).

Out of scope

  • Issues in upstream dependencies (getpatter, mcp-use, @modelcontextprotocol/sdk, better-sqlite3) — please report those upstream.
  • Vulnerabilities that require server root or physical access to the host.
  • Social engineering of an end user during a live call.
  • Deployment platform issues (Manufact, Render, Fly, etc.).

Hardening checklist for operators

If you self-host this server, before exposing it to the internet:

  1. Set a unique 32-byte MASTER_KEY per environment. Rotate annually or on suspected compromise.
  2. Set ADMIN_TOKEN if you do not want public signup at /setup.
  3. Run behind HTTPS — never serve the wizard over plain HTTP. Tokens are sent in form bodies and Authorization headers.
  4. Restrict outbound connectivity from the container if Cloudflare tunnel egress is the only network egress you need.
  5. Set Twilio account-level spend limits as a defense-in-depth against compromised tenant tokens.
  6. Monitor /healthz and ship logs to a system that does not retain Bearer tokens in URLs.

There aren't any published security advisories