Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Security-first SendGrid MCP server: dry-run default, recipient allowlists, rate caps, audit log.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
SENDGRID_API_KEY, SENDGRID_MCP_MODE, SENDGRID_MCP_RECIPIENT_ALLOWLIST, SENDGRID_MCP_WRITES_PER_HOUR, SENDGRID_MCP_MAX_RECIPIENTS, SENDGRID_MCP_AUDIT_LOG, SENDGRID_MCP_ALLOW_BCC「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"sendgrid-secure": {
"command": "uvx",
"args": [
"sendgrid-mcp-secure"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"SENDGRID_MCP_MODE": "your-value",
"SENDGRID_MCP_RECIPIENT_ALLOWLIST": "your-value",
"SENDGRID_MCP_WRITES_PER_HOUR": "your-value",
"SENDGRID_MCP_MAX_RECIPIENTS": "your-value",
"SENDGRID_MCP_AUDIT_LOG": "your-value",
"SENDGRID_MCP_ALLOW_BCC": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add sendgrid-secure --env SENDGRID_API_KEY=your-value --env SENDGRID_MCP_MODE=your-value --env SENDGRID_MCP_RECIPIENT_ALLOWLIST=your-value --env SENDGRID_MCP_WRITES_PER_HOUR=your-value --env SENDGRID_MCP_MAX_RECIPIENTS=your-value --env SENDGRID_MCP_AUDIT_LOG=your-value --env SENDGRID_MCP_ALLOW_BCC=your-value -- uvx sendgrid-mcp-secure動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"sendgrid-secure": {
"command": "uvx",
"args": [
"sendgrid-mcp-secure"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"SENDGRID_MCP_MODE": "your-value",
"SENDGRID_MCP_RECIPIENT_ALLOWLIST": "your-value",
"SENDGRID_MCP_WRITES_PER_HOUR": "your-value",
"SENDGRID_MCP_MAX_RECIPIENTS": "your-value",
"SENDGRID_MCP_AUDIT_LOG": "your-value",
"SENDGRID_MCP_ALLOW_BCC": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"sendgrid-secure": {
"type": "stdio",
"command": "uvx",
"args": [
"sendgrid-mcp-secure"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"SENDGRID_MCP_MODE": "your-value",
"SENDGRID_MCP_RECIPIENT_ALLOWLIST": "your-value",
"SENDGRID_MCP_WRITES_PER_HOUR": "your-value",
"SENDGRID_MCP_MAX_RECIPIENTS": "your-value",
"SENDGRID_MCP_AUDIT_LOG": "your-value",
"SENDGRID_MCP_ALLOW_BCC": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
SENDGRID_MCP_MODE envSENDGRID_MCP_RECIPIENT_ALLOWLIST envSENDGRID_MCP_WRITES_PER_HOUR envSENDGRID_MCP_MAX_RECIPIENTS envSENDGRID_MCP_AUDIT_LOG envSENDGRID_MCP_ALLOW_BCC envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Choppaaahh で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:SENDGRID_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.0)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, EmbeddedCI BenchPod
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drive a BenchPod hardware-in-the-loop bench: power, flash, UART, I2C, CAN, analog and logic.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
A security-first MCP server for the SendGrid v3 API.
Email is an irreversible, reputation-bearing action. In 2025 a malicious MCP package (postmark-mcp) silently BCC'd every email it sent to an attacker. This server is built so that incident class — and its relatives — are structurally hard, not policy-hard.
preview_email validates and renders the exact payload, returns it for inspection, and mints a single-use confirm token (10-minute expiry). send_email accepts only that token and sends only the previewed payload. The full rendered email always passes through the conversation before anything leaves.SENDGRID_MCP_MODE=live in the server environment, no network write ever fires. Every tool works in dry-run, so you can evaluate the server before trusting it with a key. (Read tools do still query SendGrid — dry-run stops writes, not traffic.)@domains via server env — immune to prompt injection in the chat.server.py; the only third-party dependency is the official mcp SDK. Audit it in one read.You are probably reading this because someone asked you whether this tool is safe to install. Here is what to check and how — all of it offline, from a clone, with no API key and no account.
verify block: a command, and what its output should be. Run them.C1 — the self-test passes (python3 test_server.py, 32 checks, offline). C6 — dry-run gates every write. C7 — the API key never leaves the environment. G1 — releases from 0.1.1 carry PEP 740 attestations; 0.1.0 does not. Verify it, don't take our word for it.api.sendgrid.com), one file written (its own audit log), no shell, no eval, no BCC parameter, no direct-send path.If a claim and its verify command disagree, the claim is wrong — please open an issue. Prose version of all of it: TRUST.md.
Several SendGrid MCP servers exist. They solve different problems:
READ_ONLY flag — its answer to send-safety is to turn sending off.If you want campaign management, use a marketing server. If you want an agent that can send email without you holding your breath, that is this.
| Tool | Class | Notes |
|---|---|---|
preview_email | write-gated | validates + renders + mints confirm token |
send_email | write | takes ONLY a confirm token |
add_suppression | write | safe direction — stops future sends |
remove_suppression | write | dangerous direction — requires confirm=true |
list_templates / get_template | read | dynamic + legacy templates |
get_email_stats | read | delivery/opens/clicks/bounces |
list_suppressions / check_suppression | read | all five suppression lists |
get_domain_auth | read | domain authentication validity |
server_status | read | live security posture of this server |
Claude Desktop / Claude Code / Cursor (via uv):
{
"mcpServers": { "sendgrid": { "command": "uvx", "args": ["sendgrid-mcp-secure"], "env": { "SENDGRID_API_KEY": "SG.your-key", "SENDGRID_MCP_MODE": "dry-run" } } } }
Start in dry-run (the default). Watch the audit log and the rendered previews. Flip to live when you have seen what it does.
Or run from a clone: python3 server.py (stdio transport).
| Env var | Default | Meaning |
|---|---|---|
SENDGRID_API_KEY | — | required for live mode |
SENDGRID_MCP_MODE | dry-run | dry-run or live |
SENDGRID_MCP_RECIPIENT_ALLOWLIST | any | comma list: emails and/or @domains |
SENDGRID_MCP_MAX_RECIPIENTS | 10 | per-send cap (to + cc) |
SENDGRID_MCP_ALLOW_BCC | off | 1 to allow (not recommended) |
SENDGRID_MCP_WRITES_PER_HOUR | 20 | write-action rate limit |
SENDGRID_MCP_AUDIT_LOG | ~/.sendgrid-mcp/audit.jsonl | append-only audit |
Use a SendGrid API key with restricted scopes (Mail Send + read scopes you need). The server never needs Full Access.
The self-test runs offline — no key, no network:
python3 test_server.py
32 checks: golden fixtures on payload construction, adversarial fixtures on the exact failure modes this server exists to prevent (blind sends, allowlist bypass, token replay, forged tokens, rate-limit exhaustion, BCC injection), and an end-to-end preview→send flow over the real tool functions.
Output contract: every tool returns a JSON object; failures return {"error": "..."} instead of raising, so agent loops degrade gracefully.
send_email call is separately visible and approvable) and the allowlist for the strongest posture.MIT license.
Questions, bug reports, security issues: open a GitHub issue or email heychopp@proton.me. Security reports welcome by email first.