Security
Security
Design posture
- No provider credentials in the client. The open-source MCP servers require only your access token; market data flows through the hosted relay under your token.
- Derived-only surface. Tool responses contain ratios, percentile ranks, labels, buckets, and counts — raw provider values are never returned, and the relay scrubs provider detail from error responses (generic 502s).
- PII minimisation. Access logs carry no client IPs or query strings; prospect emails are never logged; token emails are issued and mailed without storing the plaintext token in logs.
- Secrets. Stripe keys, the Firestore writer key, and provider keys live in Google Cloud Secret Manager, resolved lazily; nothing secret ships in the open-source repo or the image.
- Webhook integrity. Stripe webhooks are signature-verified over the raw body and applied idempotently by event id — a duplicate delivery never double-grants credits.
- No order placement. No tool can place, cancel, or route an order; there is no order-placement code path in the MCP package.
- Bounded capacity. Quotas, burst limits, and credit pools cap every token — there is no unlimited consumption path.
Reporting a vulnerability
Email contact@121initiative.com with the subject line "Security". We aim to acknowledge reports within two business days. Please do not test against production without prior coordination.