Claude Code とその他のクライアント
keygrant の MCP サーバーは、標準の stdio プロトコルで通信します。起動方法は 2 通りあり、どちらも同じ動作です。keygrant-mcp コマンドを使う方法と、keygrant mcp を使う方法です。
Claude Code(単一のプロジェクト)
keygrant init は、プロジェクトの .mcp.json に次の内容を書き込みます。
{
"mcpServers": {
"keygrant": { "command": "keygrant-mcp" }
}
}
チームでも keygrant を使っているなら、.mcp.json をコミットしてください。シークレットは含まれていません。
Claude Code(すべてのプロジェクト)
代わりに、ユーザースコープで一度だけ登録します。
claude mcp add --scope user keygrant -- keygrant mcp
この場合でも、各プロジェクトの CLAUDE.md(またはユーザーレベルの CLAUDE.md)にガイダンスを入れておく必要があります。そうすることで、モデルは値を尋ねるのではなく $NAME を使うべきだと理解します。keygrant init がこのガイダンスを追加しますが、自分でコピーすることもできます。
## Secrets (keygrant)
API keys and other secrets are managed by keygrant and must NEVER appear in
this conversation. Rules:
- Never ask the user to paste a secret value; never echo, log, or hardcode one.
- To see which secrets exist, use the `list_secrets` MCP tool.
- To run a command that needs a secret, use the `exec_with_secrets` MCP tool
and reference the secret as an environment variable (e.g. `$STRIPE_KEY` /
`%STRIPE_KEY%`). The user approves each use via a native dialog.
- If access is denied, do not retry; ask the user what they want to do.
その他の MCP クライアント
stdio の MCP サーバーを起動できるクライアントであれば、どれでも動作します。引数なしで keygrant-mcp を指定してください。Cursor の mcp.json をはじめ、ほとんどのクライアントは上記と同じ mcpServers の形式を使います。
クライアントがコマンドを見つけられない場合は、絶対パスを指定してください。ツールのインストール先は、uv tool dir または pipx environment で確認できます。
コマンド内でのシェル構文
exec_with_secrets は、プラットフォームのシェルを通じてコマンドを実行します。
| プラットフォーム | シェル | シークレットの参照方法 |
|---|---|---|
| macOS、Linux | sh -c | $STRIPE_KEY |
| Windows | cmd /c | %STRIPE_KEY% |
| Windows(PowerShell 経由) | cmd /c powershell -Command "..." | $env:STRIPE_KEY |
このことはツールの説明でモデルに伝えられているため、ユーザーが修正する必要はほとんどありません。