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、Linuxsh -c$STRIPE_KEY
Windowscmd /c%STRIPE_KEY%
Windows(PowerShell 経由)cmd /c powershell -Command "..."$env:STRIPE_KEY

このことはツールの説明でモデルに伝えられているため、ユーザーが修正する必要はほとんどありません。