SeaMeet Desktop 登場 — すべてを録音、何も見逃さない。無料ダウンロード →

@seameet/mcp CLI の接続

第 18 章: @seameet/mcp CLI の接続

@seameet/mcp CLI は、他のツール(Claude Desktop、IDE、エージェント)があなたの SeaMeet アカウントを読み書きできるようにするヘッドレスな Model Context Protocol サーバーです。ヘッドレスであるため、デバイス認可フロー(RFC 8628)で承認します — CLI が短いコードを表示し、あなたが URL にアクセスしてコードを確認する、これで完了です。

この章では Web アプリ側を扱います: /link ページ、承認アクション、そしてガードレール。

エンドツーエンドのフロー

  1. CLI を実行(例: npx @seameet/mcp、またはそれを起動するクライアント)。
  2. CLI が短いコードと URL を出力します — 通常は app.seameet.ai/link と、ABCD-EFGH のようなコード。
  3. ブラウザで URL を開きます。
  4. /link ページでコードを入力します(または、CLI がクエリ文字列経由で事前入力する場合もあります)。
  5. Approve をクリックします。
  6. CLI があなたの代理として読み書き可能な API キーを受け取り、動作できるようになります。

以上です。フロー全体は通常 30 秒以内で完了します。

「あなたの代理として」の意味

/link で発行される API キーは、あなたの SeaMeet アカウントにスコープされた実際のユーザーごとのトークンです。CLI がそれを使って行うすべての動作は、あなたの動作としてライブラリに表示されます。具体的には:

  • 読み取り — CLI はあなたの録音を一覧表示し、文字起こしと要約を取得し、アーカイブ全体に対する Meeting Memory をクエリできます。
  • 書き込み — CLI は録音を作成し(アップロード経由)、タイトルや説明を更新し、共有を作成でき、通常のセッションでできることを一通り行えます。

トークンはアカウントに紐付いているため、セッションを取り消す(すべての場所からサインアウトする)ことでは CLI のトークンは取り消せません — トークンは別個の資格情報です。以下の「CLI 承認の取り消し」を参照してください。

サインインが必要

/link ページは 実際のサインイン済み、検証済みのアカウントが必要 です。つまり:

  • サインアウト状態。 ページは returnTo パラメータにコードを乗せて /signin にリダイレクトします。そのため、サインイン後は /link に戻り、コードは保持された状態でフローが再開されます。
  • 匿名ゲストセッション。 サインアウト状態と同じです — CLI が紐付くための実際の ID を必要とするため、ゲストセッションは CLI を承認できません。セッションを実アカウントに昇格するため、/signin に送られます。
  • サインイン済みかつ検証済み。 承認アクションが有効になります。

これは意図的なガードレールです。これがなければ、CLI は「人間が意図して開いていない」使い捨ての匿名セッションの「代理として」動作できてしまいます。

明示的なクリックによる承認

/link ページは 決して 自動承認しません。?code=<value> でコードが事前入力されている場合でも、明示的に Approve をクリックする必要があります。これは防御的な設計です: ロード時の自動承認はフィッシングのベクターになり得ます — 悪意あるページがブラウザで /link?code=<attacker's-code> を開き、あなたが気付く前に攻撃者用のトークンを鋳造してしまうかもしれません。

Approve をクリックする前に、常に ページ上に表示されるコードが CLI に表示されているコードと一致することを確認してください。一致しない場合は、ページを閉じてください。

承認アクション

Approve をクリックすると:

  1. Web アプリは SeaMeet のサーバーでコードを検証します。
  2. サーバーはコードが有効で、期限切れでなく、実(非匿名)アカウントに紐付いていることを確認します。
  3. 有効な場合、API キーを鋳造し、コードに関連付けて、成功を返します。
  4. トークンエンドポイントをポーリングしていた CLI がキーを受け取り、成功メッセージを出力します。
  5. Web アプリの /link ページには「Approved」と表示されます — タブを閉じて構いません。

コードが期限切れの場合(RFC 8628 コードは短寿命 — 通常 15 分)、CLI は新しいコードを生成して最初からやり直す必要があります。

CLI 承認の取り消し

2 つの方法があります:

  • CLI 側から。 CLI のローカルストレージ内のトークンを削除する(または提供されている場合は CLI の logout コマンドを実行する)。サーバー側でも取り消すまで、トークンはサーバー側で有効なままです。
  • アカウント側から。 アカウント → 接続されたアプリ → 最終利用タイムスタンプで CLI 承認を特定 → Revoke。これによりトークンがサーバー側で即座に無効化されます。

慎重派向け: サーバー側で取り消してください。CLI 側での削除は、現在の CLI プロセスがトークンを使用するのを止めるだけで、他の場所でトークンのコピーが使用されるのを防ぎません。

複数の CLI 承認

CLI は複数回承認できます(例: 使用するマシンごとに 1 回)。各承認で別々の API キーが鋳造されます。アカウント → 接続されたアプリでは、キーごとのメタデータ(最終利用、初回承認)と共に一覧表示されます。

1 つの CLI 承認を取り消しても、他のものには影響しません。

トークンのセキュリティ

  • トークンは CLI のローカル設定ディレクトリに、既定では非暗号化で保存されます。
  • マシンが侵害されると、トークンも侵害されます。 サーバー側で取り消してから再承認してください。
  • トークンには既定で有効期限がありません(長寿命)。短寿命のトークンが必要な場合は、ローテーションスケジュールに従って取り消して再承認してください。
  • トークンは HTTPS 経由で送信されます(HSTS 保護 — 第 17 章 を参照)。

権限の引き継ぎ

CLI は あなた として動作します — したがってあなたの権限ティアを持ちます。Free ティアの場合、CLI は文字起こしを読むときに Free ティアの開示制限を受けます。Sync Pro の場合、CLI はフル読み取り可能です。

録音作成のような書き込みアクションは、通常のセッションと同様にあなたのクオータを消費します。

よくある問題

「コードが期限切れです。」 コードは短寿命(通常 15 分)です。CLI を再起動して新しいコードを取得してください。

「コードは承認されたが、CLI が気付かない。」 CLI はトークンエンドポイントを数秒おきにポーリングします。10〜15 秒待ってください。それでも何もない場合は CLI を再起動してください — ポーリングループがクラッシュしている可能性があります。

「サインインしたらコードを失った。」 /link ページはコードを returnTo に乗せています — サインインするとコードが保持された状態で戻ります。何らかの理由で失われた場合は、CLI を再起動して新しいコードを取得してください。

「Approve が 'not_entitled' エラーを返す。」 アカウントの権限に CLI 承認が含まれていません — 現在、CLI 承認には Sync Pro が必要です。アップグレードして再試行してください。

「承認したのに CLI がまだ 'authorization required' と言う。」 CLI の設定ディレクトリに保存されたトークンを確認してください(パスは CLI のバージョンによって異なります)。空の場合、CLI はトークンを取り逃した可能性があります — 再起動して再承認してください。

クイックリファレンス

タスク方法
CLI コードを承認するapp.seameet.ai/link → コードを入力/確認 → Approve
CLI トークンを取り消す(サーバー側)アカウント → 接続されたアプリ → Revoke
CLI トークンを取り消す(クライアント側)CLI の logout コマンド、または CLI 設定ファイルを削除
すべての承認を見るアカウント → 接続されたアプリ
複数のマシンで承認するマシンごとに一度承認する — それぞれ別のトークンが鋳造される

Last updated: 2026-08-28

← 第 17 章: アカウントと設定

公開日: