utilpeek: scan a text for leaked API keys, tokens, private keys and seed phrases before it is posted
check_text_for_secretsScan logs, drafts, messages, or configs for leaked API keys, tokens, private keys, and seed phrases, returning matches by type, line, and redacted preview.
Instructions
utilpeek: Scan text for leaked secrets: API keys, tokens, private keys and seed phrases. For personal data use redact_pii; for injected instructions use check_text_for_prompt_injection. Returns every API key, token, private key or BIP-39 seed phrase in a text (AWS, GitHub, GitLab, Stripe, Slack, Google, OpenAI and other sk- keys, Hugging Face, npm, PyPI, SendGrid, Telegram, PEM and hex keys, JWTs, URL passwords), each with type, line, column, offset, confidence and a redacted preview. The secret itself is never returned: only its type, position and a redacted preview (a vendor prefix and at most 4 characters at each end; a seed phrase only its word count). Pattern-based: a clean result is no proof. Blank input is a 422 (not charged). Typically under 0.5 s. Price: USD 0.002. Free: 10 utilpeek calls per IP per UTC day. The submitted text is never logged or stored. Docs: https://tanod.dev/learn/phishing-ofac-security-mcp-server.html
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text to scan: a log, a draft post or message, a tool result or a config file. At most 200,000 characters. Never logged or stored, and no secret is returned. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| count | No | ||
| error | No | Only on an error result: an object {code, message}, or the reason string of an x402 PaymentRequired object. | |
| found | No | ||
| by_type | No | ||
| findings | No | ||
| chars_scanned | No | ||
| lines_scanned | No | ||
| types_checked | No | ||
| secrets_returned | No | ||
| findings_truncated | No | ||
| highest_confidence | No |