mcpField
O
onepassword-agent-mcp

onepassword-agent-mcp

ローカル
github.com/gambadioセキュリティ03 日前に更新

onepassword-agent-mcp について

onepassword-agent-mcp は、AI エージェントが承認済みの 1Password フィールドを使えるようにするローカル MCP サーバーです。ダッシュボードで承認、シークレットの保存、任意の無人アクセスを管理できます。

主な機能

  1. 01承認済みシークレットフィールドの暗号化ハンドル
  2. 02ローカルクリップボードからの取得と 1Password への保存
  3. 03アイテムとフィールドの承認を管理するダッシュボード
  4. 04サイト単位のアクセス制御
  5. 05任意の暗号化サービスアカウントトークン
  6. 06シークレット値を含まないローカル操作履歴

活用シーン

  1. 01承認済み認証情報をエージェントにウェブサイトへ貼り付けさせる
  2. 02コピーしたパスワードや API キーを 1Password に保存する
  3. 03アイテムのフィールド承認を確認または取り消す
  4. 04スコープを限定したサービスアカウントで無人アクセスを有効にする

MCP 対応

ローカル MCP サーバーを通じて、承認済み 1Password フィールドの検索・利用やアイテム保存のツールを提供します。エージェントにはシークレットの平文ではなく暗号化ハンドルを渡し、承認と権限はローカル設定で管理します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"gambadio-onepassword-agent": {
"command": "npx",
"args": [
"-y",
"onepassword-agent-mcp"
]
}
}
}
起動コマンドnpx -y onepassword-agent-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmonepassword-agent-mcp0.4.2

ツール

15

掲載時のツール一覧 · 2 日前に更新

このツールにパラメーターはありません。

詳細

1Password Agent MCP ロゴ

1Password Agent MCP

ローカルの MCP サーバーを通じて、AI エージェントが 1Password のシークレットを利用・保存できるようにします。ダッシュボードからすべてを管理できます。

  • 承認済みのシークレットを利用: エージェントには暗号化されたハンドルが渡されます。サーバーが選択されたフィールドをローカルで解決し、コピーまたは貼り付けます。平文がエージェントに返されることはありません。
  • コピーしたシークレットを保存: ブラウザーまたはローカルアプリでパスワードや API キーをコピーすると、サーバーがメタデータのみのツール引数を使って 1Password に保存します。
  • 無人で動作: 新しいアイテムの自動承認を有効にし、スコープを限定した 1Password サービスアカウントを接続すると、デスクトップのロック解除を繰り返し求められることなく利用できます。

npm パッケージ · セットアップガイド · ユーザーガイド · セキュリティモデル · アンインストールガイド

独立したプロジェクトです。1Password とは提携しておらず、推奨も受けていません。インストールごとに、それぞれのローカル設定と 1Password アカウントを使用します。

合成データのアイテム例、承認済みフィールド、クリップボードのキャプチャ状態を示す保管庫ビュー

合成データのアイテム例を表示した現在のダッシュボードです。この README のスクリーンショットはすべてデモデータを使用しています。実際のアカウント、パスワード、サービスアカウントのトークンは表示されていません。保管庫のスクリーンショットを原寸大で開く。

クイックスタート

Node.js 20 以降、1Password CLI(op)、およびローカル stdio サーバーに対応した MCP クライアントが必要です。1Password デスクトップ統合またはスコープを限定したサービスアカウントを使って認証してください。

macOS では、必要に応じて前提条件をインストールします。

brew install node 1password-cli

デスクトップ認証を使うには、1Password → 設定 → 開発者を開き、1Password CLI と統合を有効にします。信頼できるクライアントだけを承認してください。サービスアカウントの設定については、無人アクセスをご覧ください。

ガイド付きインストーラーをインストールして実行します。

npm install -g onepassword-agent-mcp
onepassword-agent-mcp install

インストーラーは対応している MCP クライアントを検出し、設定を更新する前に確認を求めます。macOS では、任意で表示可能なメニューバーショートカットも別途提案します。

ダッシュボードを起動します。

onepassword-agent-mcp admin

http://127.0.0.1:7319を開きます。手動でセットアップする場合は、onepassword-agent-mcp doctorを実行し、続いてonepassword-agent-mcp setup all --applyを実行してください。

既存のインストールを更新しますか? npm install -g onepassword-agent-mcp@latestを実行し、管理コンソールと既存の MCP クライアントを再起動して、新しいコードを使うようにしてください。ローカル設定、承認情報、暗号化キーは保持されます。

ダッシュボード

サイドバーでは、日常的な 4 つのタスクを分けて管理できます。

ビュー管理できる内容
保管庫エージェント用保管庫の作成、アイテムのコピーまたは移動、特定フィールドの承認、エージェントに許可の管理。
権限アイテム作成、クリップボードのキャプチャ、自動承認の有効化、無人アクセスと任意の Mac メニューバーショートカットの設定。
プロフィールエージェントが直接読み取れるメールアドレスや住所などのプロフィール情報を追加。
アクティビティシークレットの値を含まない最近のローカル操作を確認。
エージェントに最初の認証情報を渡す
  1. Vaultを開きます。Agent Vault Setupで、専用のVaultがまだない場合はCreate MCPVAULTを選択します。
  2. Choose From 1PasswordでSource vaultを選択し、アイテムを検索してCopyをクリックします。アイテムをApprove Agent Itemsにドラッグして、CopyまたはMoveを選ぶこともできます。
  3. Approve Agent ItemsでReview Detailsをクリックします。許可するフィールドを正確に選び、エージェントによる使用を許可するWebサイトを入力します。
  4. Approve Selectedをクリックします。承認したフィールドがAllowed For Agentsに表示されます。アクセスを管理するには、Enabledスイッチ、Save、Deleteの各コントロールを使用します。
  5. MCP クライアントで、現在のWebサイト用に承認された認証情報を探し、指定したフィールドに貼り付けるようエージェントに依頼します。

Copyでは元のアイテムが保持されます。Moveでは転送後に元のVaultからアイテムが削除されます。アイテムをエージェント用Vaultにコピーしても、承認されたことにはなりません。Webサイトのリストが空の場合、すべてのWebサイトが許可されます。アクセスを制限する場合は、ドメインを追加してください。

タイプフィルターのAll Fields、Logins、API Keys、Credit Cards、Notes & SSH、Otherを使うと、大きなVaultを確認しやすくなります。カードのCVVやPINなどの機密フィールドは、手動承認時に自動で候補として表示されません。

新しく保存した認証情報を別のVaultに戻すには、Review Details → Save this item to another vaultを開きます。Copy To Vaultではエージェント用Vaultのアイテムが保持されます。Move To Vaultではエージェント用Vaultからアイテムが削除され、ローカルの承認も解除されます。添付ファイル、ドキュメント、パスキーを含むアイテムには、1Passwordアプリを使用してください。

エージェントに許可する操作を選ぶ

Permissionsを開き、必要な設定を選んでからSave Settingsをクリックします。以下の3つのオプションは、いずれも新規インストール時はオフです。

設定効果
Allow agents to save new items into MCPVAULT対応する新しいアイテムを、設定済みのエージェント用Vaultに保存できるようにします。
Save secrets from the clipboardメタデータのみのクリップボード保存を許可します。アイテムの作成も有効にする必要があります。
Automatically approve items agents create新しい保存が確認された後、対応するフィールドを承認し、エージェントがすぐに使用できるようにします。

合成設定によるアクセス許可の有効化と、無人アクセスが表示された画面

オプトインの3つのアクセス許可を有効にし、サービスアカウントのステータスをシミュレーションしたデモ設定です。トークンフィールドは空で、保存されたトークンは表示されません。アクセス許可のスクリーンショットを原寸大で開く。

レスポンシブダッシュボードを表示

合成デモ設定を使用した、幅の狭いモバイル表示でのアクセス許可画面

幅の狭い表示での同じローカルダッシュボードです。このスクリーンショットはリモートアクセスを示すものではありません。サーバーはデフォルトでループバックにバインドされます。

Profileビューは別になっています。ここに入力した値は、get_profile_dataを通じてエージェントが読み取れるよう意図されています。パスワードやトークンをプロフィールの値として保存しないでください。

ブラウザーまたは選択したテキストから保存する

権限で、エージェントによる MCPVAULT への新規アイテムの保存を許可とクリップボードからシークレットを保存を有効にし、設定を保存をクリックします。エージェントが新しいアイテムをすぐに使用できるようにする場合は、任意で自動承認を有効にします。

  1. ブラウザーでシークレットのコピーボタンをクリックするか、ローカルアプリでテキストを選択してコピーを実行します。エージェントは、フィールド、クリップボード、DOM の値、またはシークレットが見えるスクリーンショットを読み取らずに、この操作を行う必要があります。
  2. メタデータのみを指定して、ローカルツールを呼び出します。
{
  "title": "Example account",
  "requestId": "example-signup-unique-id",
  "category": "login",
  "url": "https://example.com",
  "username": "my-login"
}

これらの引数を save_secret_from_clipboard で使用します。対応するカテゴリは login、password、api_credential、secure_note です。スペースや改行を含め、テキストは完全にそのまま保持されます。このツールは、この MCP サーバーをホストするコンピューター上で実行され、そのコンピューターのクリップボードを読み取ります。リモートブラウザーのクリップボードは別のクリップボードです。

アプリは再試行用のスナップショットをローカルで暗号化し、15 分間使用できるようにします。平文はローカル CLI の標準入力を介してのみ渡され、保存されたアイテムが検証されます。応答には保存と承認のメタデータのみが含まれ、コピーしたテキストは含まれません。承認済みの暗号化ハンドルには、検索/一覧表示ツールを使用してください。有効期限が切れた暗号文は、プロセスの実行中、または停止期間後の次回キャプチャ時に削除されます。メタデータのみのレコードにより、古いリクエスト ID の再利用を防ぎます。クリップボードの消去時には、値が変更されていないことを再確認しますが、これはベストエフォートです。返された消去ステータスを確認してください。クリップボードマネージャーが独自の履歴を保持する場合があります。

再試行するには、同じ requestId とメタデータを再利用します。クリップボードが変更されていても、再試行には元の暗号化済みキャプチャが使われます。有効期限が切れたキャプチャでは、無関係なテキストをキャプチャせずに処理が失敗します。新しいリクエストを意図的に開始する前に、前の操作を確認してください。タイトル、ユーザー名、URL などのメタデータはモデルに表示されます。これらのフィールドにシークレットを絶対に入れないでください。すでにコンテキストにある値には、引き続き save_secret_item を使用できますが、その値が露出することを防ぐことはできません。

自動承認

権限で、エージェントが作成したアイテムを自動的に承認を有効にし、設定を保存をクリックします。このオプションはデフォルトでオフです。エージェントによるアイテムの作成も有効にする必要があります。

有効にすると、save_secret_item または save_secret_from_clipboard による検証済みの保存時に、設定されたエージェントのボールト内で、新しいアイテムの対応するすべてのフィールドが自動的に承認されます。これには、クレジットカードの CVV と PIN も含まれます。エージェントは、結果として得られる暗号化ハンドルをすぐに使用できます。既存のアイテム、および管理コンソールからコピーまたは移動されたアイテムには、引き続き手動承認が必要です。

CLI の制御、サイトのスコープ設定、再試行の動作

CLI からも同じ保存済みオプションを制御できます。

onepassword-agent-mcp settings auto-approve on
onepassword-agent-mcp settings auto-approve off
onepassword-agent-mcp settings --json

変更は MCP サーバーを再起動しなくても、以降の新規保存に適用されます。変更内容をプレビューするには --dry-run を追加します。このオプションをオフにしても、既存の承認は維持されます。承認を取り消すには、エージェントに許可で個別の承認を無効にするか、削除してください。自動承認の選択は、各保存の開始時に記録されます。以前の保存や自動承認を選択しなかった保存を再試行しても、自動承認に切り替わることはなく、再試行によって取り消された承認が復元されることもありません。

自動承認では、allowedSites が指定されている場合はその値を使用し、指定されていない場合は保存されたアイテムのウェブサイトを使用します。リストが空の場合、またはアイテムにウェブサイトがない場合は、すべてのサイトが許可されます。approveForAgents: false を指定すると、その保存に対する承認はスキップされます。自動承認がオフの場合、approveForAgents: true を指定すると、従来どおり単一フィールドの承認が行われます。approveField が指定されていればそのフィールドを使用し、allowedSites が指定されていなければすべてのサイトを許可します。自動承認がオンの場合、approveField を指定しても、承認対象のフィールドは絞り込まれません。

## 無人アクセス

Permissions → Unattended accessカードでは、1Password のサービスアカウントトークンをローカルダッシュボードに直接入力できます。1Password のサービスアカウント設定で、専用のエージェント用保管庫のみにアクセスできるトークンを作成してください。read_itemsを付与し、保存する場合はwrite_itemsも付与します。ダッシュボードでService account tokenに貼り付け、Save encrypted tokenをクリックします。入力欄はすぐにクリアされます。チャットでトークンを送信しないでください。

アプリはトークンを~/.onepassword-mcp/access.jsonにローカルで暗号化して保存し、ダッシュボードや MCP クライアントに返すことはありません。また、トークンを CLI プロセスの環境にのみ渡します。設定の変更は、再起動せずに後続の CLI 呼び出しに適用されます。Test connectionは保管庫を参照できるか確認しますが、テスト項目の書き込みや書き込み権限の確認は行いません。デスクトップ認証に戻すにはUse saved service accountをオフにするか、Remove saved tokenを選択してローカルの認証情報を削除します。トークンをどこでも無効にする場合は、1Password でトークンを取り消してください。処理中の操作は、切り替え後も完了する場合があります。

外部で設定されたOP_SERVICE_ACCOUNT_TOKENが優先され、ダッシュボードにはそのモードが表示されます。ローカルトークンを削除しても、環境変数の認証情報は無効になりません。サービスアカウントは、組み込みの Personal/Private/Employee 保管庫にはアクセスできません。スコープを設定した無人アクセスが有効な間、コンソールに表示されるのはトークンでアクセスできる保管庫のみです。他のデスクトップアカウントの保管庫から項目をコピーする前に、この機能を無効にしてください。

権限は次の3つのレイヤーに分かれています。

権限設定場所
項目の作成、クリップボードのキャプチャ、自動フィールド承認このコンソールの Permissions ビュー。承認はローカルに保持されます
1Password の繰り返しのロック解除/生体認証プロンプト無人操作には、サポート対象のサービスアカウント方式を使用します
MCP ツール呼び出し前の確認MCP クライアント独自の権限設定

このアプリは、MCP クライアントのツール確認設定を変更したり、1Password のデスクトップロック解除保護を回避したりすることはありません。1Password のデスクトップ連携セキュリティモデルおよびサービスアカウントの CLI ドキュメントを参照してください。

クライアントのセットアップ

セットアップ CLI は、デフォルトでドライランを表示します。インストールされている Claude Code、Claude Desktop、Codex、VS Code、Xcode のコーディングエージェント、Raycast AI を検出します。

onepassword-agent-mcp setup all

検出されたすべてのクライアントにセットアップを適用します。

onepassword-agent-mcp setup all --apply

このコマンドは実行ファイルの絶対パスを使用するため、GUI アプリは Terminal のPATHに依存しません。Claude Desktop と VS Code の JSON は、タイムスタンプ付きのバックアップを作成してマージされます。Xcode では通常の CLI 設定を使用しないため、Xcode の非公開 Codex および Claude 設定フォルダーは個別に処理されます。

Raycast はアプリ管理のストレージに MCP 設定を保存しており、サポート対象の外部設定書き込み機能を公開していません。CLI は Raycast の公式Import Servers画面を開きます。準備されたエントリーを確認し、Raycast で一度確定してください。これがクライアント固有の唯一の対話型手順です。

Claude Code
onepassword-agent-mcp setup claude-code --apply

同等のコマンド:

claude mcp add --scope user onepassword-agent-mcp -- onepassword-agent-mcp mcp
Codex
onepassword-agent-mcp setup codex --apply

同等のコマンド:

codex mcp add onepassword-agent-mcp -- onepassword-agent-mcp mcp
VS Code の GitHub Copilot
onepassword-agent-mcp setup copilot --apply

同等の VS Code コマンド:

code --add-mcp '{"name":"onepassword-agent-mcp","command":"onepassword-agent-mcp","args":["mcp"]}'

.vscode/mcp.jsonでのワークスペース用フォールバック:

{
  "servers": {
    "onepassword-agent-mcp": {
      "type": "stdio",
      "command": "onepassword-agent-mcp",
      "args": ["mcp"]
    }
  }
}
Claude Desktop
onepassword-agent-mcp setup claude-desktop --apply

CLI は、Claude Desktop のユーザー JSON にサーバー設定を安全にマージし、その他の設定はすべて保持します。

Xcode
onepassword-agent-mcp setup xcode --apply

Xcode 内でのみ使用される、分離された Codex および Claude Agent の環境を設定します。

Raycast AI
onepassword-agent-mcp setup raycast --apply

最終確認のため、Raycast のネイティブインポート画面が開きます。Raycast はデフォルトで、MCP ツール呼び出し前に確認を求めます。

ChatGPT Desktop

ChatGPT Desktop は、意図的にローカルセットアップの対象に含まれていません。現在、ChatGPT は任意のローカル stdio コマンドではなく、リモート MCP サーバーに接続します。接続するためだけに、このパスワードブリッジを公開トンネル経由で公開しないでください。

その他の MCP クライアント

汎用 MCP JSON を出力します:

onepassword-agent-mcp setup generic --json

汎用設定:

{
  "mcpServers": {
    "onepassword-agent-mcp": {
      "command": "onepassword-agent-mcp",
      "args": ["mcp"]
    }
  }
}

ランタイムとメニューバー

npm パッケージをインストールすると、コマンドのみが追加されます。起動エージェント、デーモン、バックグラウンドサービス、スタートアップ項目、ブラウザー拡張機能、非表示の常駐プロセスはインストールされません。

  • onepassword-agent-mcp admin は、そのターミナルプロセスが起動している間のみ、ローカル承認コンソールを実行します。
  • onepassword-agent-mcp mcp は stdio MCP サーバーです。Claude Code、Codex、VS Code などの MCP クライアントは、必要に応じて子プロセスとして起動します。
  • onepassword-agent-mcp setup ... --apply は、MCP クライアントの設定を書き込むだけです。既存の JSON ファイルは、マージ前にバックアップされます。
  • オプションの macOS メニューバーコンパニオンは、明示的に選択した場合にのみインストールされます。実行中は常にアイコンが表示されます。
  • ログイン時に起動するかどうかは別途選択する項目で、デフォルトでは無効です。有効にした場合でも、表示されているメニューバーアプリは、Open Admin Console を選択するまで管理サーバーを起動しません。
  • オプションのメニューバーのログイン項目を有効にしている場合、または別のアプリが MCP クライアントを起動し、それが stdio サーバーを起動する場合を除き、コンピューターを再起動してもこのプロジェクトは自動起動しません。
  • ~/.onepassword-mcp のローカル状態には、設定、承認、プロファイルデータ、監査および保存操作のメタデータ、暗号化キー、オプションの暗号化されたサービスアカウントの認証情報、クリップボードの再試行記録が含まれます。ローカル状態を参照してください。

この説明は、いつでも確認できます:

onepassword-agent-mcp runtime
オプションの Mac メニューバー

macOS では、ガイド付きインストーラーで、メニューバーに明確に表示される 1P 項目を追加できます。ダッシュボードの Permissions → Mac Menu Bar Shortcut から、後で有効にすることもできます。

コンパニオンは、native/MenuBarApp.swift の読み取り可能な Swift ソースからローカルでビルドされます。npm パッケージに不透明なアプリバイナリは含まれていません。生成されるアプリは、プロジェクトのティール色の盾のロゴを使用し、~/Applications/1Password Agent MCP.app に配置され、管理者アクセスを求めることはありません。

手動での操作:

onepassword-agent-mcp menubar status
onepassword-agent-mcp menubar install
onepassword-agent-mcp menubar launch
onepassword-agent-mcp menubar remove
onepassword-agent-mcp menubar install --launch-at-login
onepassword-agent-mcp menubar login on
onepassword-agent-mcp menubar login off
onepassword-agent-mcp menubar uninstall --apply

menubar remove を使用すると、アンインストールせずに表示されているショートカットを閉じられます。再表示するには menubar launch を使用します。アンインストール後に再インストールするには menubar install を使用します。管理コンソールの実行中は、ローカル管理ページの Permissions → Mac Menu Bar Shortcut からも同じインストール操作を行えます。

メニューには、Open Admin Console、Stop Admin Console、Launch Menu Bar at Login、Remove From Menu Bar、Uninstall Menu Bar Shortcut が含まれます。Open Admin Console は、必要に応じてコンソールを起動してから開くため、別途 Start 操作を行う必要はありません。Remove From Menu Bar は表示されているヘルパーを閉じるだけです。インストールされた状態は維持され、再度開くことができます。Uninstall Menu Bar Shortcut は、確認後にヘルパーとそのログイン項目を削除します。どちらの操作も、MCP クライアントの設定、ローカルの承認、MCPVAULT、1Password の項目には影響しません。

管理コンソール自体には、明示的なプロセス操作があります:

onepassword-agent-mcp admin status
onepassword-agent-mcp admin stop

MCP ツール

  • onepassword_status:CLI、MCPVAULT、ローカルでの承認、プロファイルデータ、設定を確認します。
  • find_secrets_for_site:ウェブサイト用に承認された暗号化済みハンドルを返します。
  • list_approved_secrets:承認済みのハンドルと許可されたサイトを一覧表示します。
  • copy_secret:ハンドルを解決し、選択したフィールドをクリップボードにコピーします。
  • paste_secret:ハンドルを解決してコピーし、アクティブなアプリに貼り付けます。平文は返しません。
  • clear_secret_clipboard:クリップボードをクリアします。
  • save_secret_item:ローカルの保存設定が有効な場合、新しいログイン情報、パスワード、API 認証情報、セキュアノート、またはクレジットカードをMCPVAULTに保存します。検証結果と承認状況に加えて、approvedFields(互換性のため、最初のフィールドをapprovedFieldとしても)を返します。自動承認は、ローカルのautoApproveAgentItems設定に従います。
  • save_secret_from_clipboard:メタデータのみを引数として指定し、ローカルでコピーしたテキストをそのまま保存します。暗号化された再試行用キャプチャ、検証、自動承認(任意)に対応します。クリップボードへの保存とアイテム作成の両方の権限が必要です。
  • get_profile_data:現在のサイトで許可されているユーザー定義のプロファイルデータを返します。
  • find_passwords_for_site、list_approved_passwords、copy_password、paste_password、clear_password_clipboard:互換性のためのエイリアスです。
  • admin_ui_info:承認コンソールの URL を返します。
保存の検証と再試行

save_secret_itemは、created、verified、itemId、vaultId、operationIdを報告します。成功とみなされるには、読み戻した内容が意図したタイトル、カテゴリー、保存先、ウェブサイト、フィールド値と一致する必要があります。シークレット値はローカルで比較され、結果に含まれることはありません。省略可能なapprovalStatusはこれとは別です。アイテムの保存と検証が完了していても、管理 UI で承認の確認が必要な場合があります。

保存が中断された場合は、同じrequestIdと入力を再利用してください。省略した場合、同じ保存先にある内容が同一のアイテムは重複排除されます。別のアイテムを意図的に作成する場合に限り、新しいrequestIdを指定してください。復旧には一意のopmcp-…アイテムタグとローカルの操作記録を使用し、タイトルの一致は使用しません。以前の操作を照合できない場合、別のアイテムを黙って作成するのではなく、未解決の結果をツールが報告します。ユーザーによって取り消された承認が、保存の再試行によって再び有効になることはありません。

macOS と Linux では、平文の一時ファイルやコマンド引数内のシークレット値を使用せず、OS パイプ経由で JSON を受け渡します。ランナーは1Passwordの認証に必要なターミナルセッションを維持し、タイムアウトまたはキャンセル時には子プロセスグループをクリーンアップします。コピーでは、隠された値を含む、サポート対象の JSON フィールドを読み取り、検証します。添付ファイル、ドキュメント、またはパスキーを含むアイテムは、1Passwordアプリを使用してコピーする必要があります。

更新後は、既存の MCP クライアントと管理コンソールを再起動し、すべての書き込み処理で最新のポリシーロックと保存検証コードが使用されるようにしてください。既存の設定、承認、暗号化キーは保持されます。

セキュリティモデル

保護されるもの:

  • 保存したアイテムのシークレットは 1Password に保管されます。クリップボードへの保存では、一時的な暗号化リトライ用キャプチャを使用します。オプションの無人サービスアカウントトークンはローカルで暗号化されます。
  • MCP のコピー/ペーストツールは、1Password のシークレットフィールドの平文を返しません。
  • ハンドルと、保存された 1Password のシークレット参照はローカルで暗号化されます。
  • 承認を無効化または削除すると、以前のハンドルは無効になります。
  • 許可サイトの確認は、コピー時とペースト時に再度実行されます。
  • MCP サーバーは、設定されたエージェント用ボールトの承認のみを一覧表示し、解決します。
  • エージェントが作成したアイテムとクリップボードのキャプチャは、それぞれ個別にオプトインする設定です。新しいアイテムは設定されたエージェント用ボールトにのみ保存されます。
  • エージェントが作成したフィールドの自動承認は個別のオプトイン設定で、デフォルトではオフです。

引き続き機密性があるもの:

  • OS のクリップボードには、フィールド値の平文が一時的に含まれます。
  • ペーストが実行されると、アクティブなアプリにフィールド値が渡されます。
  • クリップボードにアクセスできるローカルプロセスは、コピーされたシークレットを監視できる場合があります。
  • 暗号化キーは同じユーザーアカウント内にあります。キーと暗号化ファイルの両方を読み取れるプロセスは、それらを復号できます。
  • デスクトップ CLI 統合を使用する場合、ローカルの 1Password CLI セッションは、MCP が公開する範囲より広いボールトへのアクセス権を持つことがあります。
  • get_profile_data は、管理 UI で明示的に追加したプロフィール値の平文を返します。

最も厳格な境界を設けるには、MCPVAULT のみに範囲を限定した 1Password サービスアカウントを使用してください。

強力なブラウザー制御エージェントで使用する前に、docs/SECURITY.md をお読みください。

ローカル状態

デフォルトの状態ディレクトリは ~/.onepassword-mcp です。

ファイルまたはディレクトリ内容
policy.json設定、暗号化されたシークレット参照を含む承認、ユーザーが入力したプロフィール値、監査メタデータ、保存操作の記録。
key.binローカル暗号化キー。状態ディレクトリと合わせて保護してください。
access.jsonオプションの暗号化されたサービスアカウントトークンと、その有効状態。
clipboard-captures/15 分間使用できる暗号化されたリトライ用キャプチャ。期限切れのキャプチャは、古いリクエスト ID の再利用を防ぐためにメタデータを保持します。
admin-runtime.jsonダッシュボードの実行中に使用されるローカルプロセス制御メタデータ。
menu-bar-admin.logオプションのメニューバーコンパニオンから起動した場合の管理出力。

保存したアイテムのシークレットは 1Password に保管されます。暗号化されたキャプチャとサービスアカウントの認証情報は、上記のローカルに保存される例外です。これはローカルでの暗号化であり、暗号文とキーの両方を読み取れるプロセスから保護するものではありません。

別の状態ディレクトリを使用します。

ONEPASSWORD_MCP_HOME=/path/to/state onepassword-agent-mcp admin

新しい設定で別のエージェント用ボールト名を使用します。

MCP_VAULT_NAME=AgentVault onepassword-agent-mcp admin

既存のインストールでは、Permissions → Advanced local settings → Agent vault name を変更して保存してください。管理コンソールと MCP クライアントで、同じ状態ディレクトリを使用してください。

ヘッドレス環境にデプロイする場合は、MCP サーバーの環境に OP_SERVICE_ACCOUNT_TOKEN を安全に設定してください。環境変数のトークンは、ダッシュボードに保存されたトークンより優先されます。トークンをソース管理にコミットしたり、エージェントとの会話に貼り付けたりしないでください。

停止してアンインストールする

実行中のターミナルで Ctrl-C を押し、ローカル承認コンソールを停止します。

onepassword-agent-mcp admin

MCP クライアントを切断します。

onepassword-agent-mcp uninstall all
onepassword-agent-mcp uninstall all --apply

アンインストールコマンドは、存在する場合、Claude Code、Claude Desktop、Codex、VS Code、Xcode からエントリーを削除し、その後、オプションのメニューバーアプリ/ログイン項目を削除します。Raycast の設定はアプリで管理されているため、明示的に削除するには Manage Servers を開きます。その他のクライアント設定と、1Password のデータはすべて変更されません。

任意:承認情報、プロファイルデータ、設定、暗号化キー、保存済みサービスアカウントトークン、クリップボードの再試行記録など、このアプリのローカル状態を削除します。

onepassword-agent-mcp uninstall state
onepassword-agent-mcp uninstall state --apply

これにより ~/.onepassword-mcp が削除されます。1Password の保管庫やアイテムは削除されず、1Password 内のサービスアカウントトークンも取り消されません。その保管庫を削除する場合に限り、1Password 内の MCPVAULT を削除してください。

最後に、任意の状態データのクリーンアップ後、グローバル npm パッケージを削除します。

npm uninstall -g onepassword-agent-mcp

トラブルシューティング

onepassword-agent-mcp doctor を実行して、CLI の検出、認証、保管庫の表示、ローカルでの作成権限、コンソールの稼働状況を確認します。

症状確認事項
op が見つからない、またはターミナルでしか動作しない1Password CLI をインストールします。Permissions → Advanced local settings で、1Password CLI path を op のままにして自動検出を使用するか、正しいパスを設定します。macOS では、検出時に /opt/homebrew/bin/op と /usr/local/bin/op も確認されます。
1Password の認証プロンプトが繰り返し表示されるスコープを限定したサービスアカウントを使用して、Unattended Access を設定します。MCP クライアントのツール確認は、そのクライアント内の別の設定です。
クリップボードへの保存を利用できないPermissions で作成とクリップボードへの保存の両方を有効にしてから、Save Settings を選択します。ツールは MCP サーバーが動作しているコンピューターのクリップボードを読み取ります。
保存は成功したが、エージェントが利用できない承認状態を確認します。Vault → Approve Agent Items でフィールドを確認するか、今後の保存を自動承認する設定を有効にします。
ソース保管庫が表示されなくなったスコープを限定したサービスアカウントには、エージェント保管庫しか表示されない場合があります。他の保管庫からコピーするには、Use saved service account を一時停止し、デスクトップ認証に戻します。
MCPVAULT が見つからないVault を開き、保管庫の作成権限があるアカウントで Create MCPVAULT を選択します。
ダッシュボードが起動していないonepassword-agent-mcp admin を実行するか、オプションのメニューバーアプリで Open Admin Console を選択します。
Copilot のセットアップで code が見つからないVS Code のシェルコマンドをインストールするか、上記の .vscode/mcp.json 設定を使用します。

開発

クローンしてインストールします。

git clone https://github.com/gambadio/onepassword-agent-mcp.git
cd onepassword-agent-mcp
npm ci

npm run dev:admin または npm run dev:mcp でローカル実行します。

検証
npm ci
npm run typecheck
npm test
npx playwright install chromium
npm run test:ui
npm run build
node scripts/test-live.mjs

最後のコマンドは、実際の CLI ドライランを使用して、5 つすべてのカテゴリをテストします。プロンプトが表示されたら、1Password のロックを解除し、CLI アクセスを承認してください。実際の MCP 保存、正確な読み戻し、再試行の重複排除、コピーもテストするには、次を実行します。

node scripts/test-live.mjs --create

これには、保存済みのエージェント作成設定が必要です。設定されたエージェント保管庫に、一意のタグを付けた合成テストデータを作成して検証し、その後、該当するテストデータのみを「最近削除した項目」に移動します。分離されたローカルポリシー状態を使用します。検証またはクリーンアップに失敗した場合は、復旧状態ディレクトリを表示し、確認用に保持します。doctor は CLI の認証、保存先の表示、ローカルでの作成権限、コンソールの稼働状況を確認しますが、保存/コピーの検証は行いません。

メンテナーによるリリースは、有効期間の短い OIDC 認証情報を使用し、GitHub Actions で自動化されています。docs/RELEASING.md を参照してください。ローカルでの npm publish と、デバイス認証の繰り返しはリリースプロセスに含まれません。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。