mcpField
T
Tenpace Review Router

Tenpace Review Router

リモート
github.com/Patraxバージョン管理011 週間前に更新
リポジトリ

Tenpace Review Router について

Tenpace Review Routerは、GitHub ActionsからGitHubのプルリクエストをSlackへ振り分ける設定を作成します。短時間有効なサインインリンクを人が開いて確定し、実際のSlack配信でルートを検証します。

主な機能

  1. 01短時間有効な本人認証リンクの生成
  2. 02リポジトリ、Slackチャンネル、ルート設定の指定
  3. 03レビュアーへのメンション方針の設定
  4. 04実際のSlack配信によるルート検証
  5. 05YAML設定ファイルへの対応

活用シーン

  1. 01GitHubリポジトリのPR通知先を設定
  2. 02ワークフローで設定を開始し、人が確定

MCP 対応

リモートMCPサーバーを提供し、公式MCP Registryに登録されています。READMEにはMCPツールの詳細は記載されていません。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://api.tenpace.com/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

Review Router のセットアップ

テスト

ワークフローまたは AI コーディングセッションから、GitHub と Slack の Review Router 接続を作成します。この Action は、有効期間の短いブラウザーリンクを 1 つ生成します。リンクを開いて Tenpace にサインインし、対象のリポジトリ、Slack の送信先、ルーティングプリセット、レビュアーへのメンションポリシーを確認してロックします。

この Action が GitHub App の認証情報、Slack OAuth トークン、プロバイダーの認証コード、人間の Tenpace セッションを受け取ることはありません。

Action を使う

.github/workflows/review-router-setup.yml を作成します。

name: Set up Review Router

on:
  workflow_dispatch:

permissions:
  contents: read
  id-token: write

jobs:
  setup:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v7
      - uses: tenpace-app/review-router-setup@v1
        with:
          slack-channel: pull-requests
          preset: repo-watch
          reviewer-mentions: all

ワークフローを実行します。ワークフローを開始した GitHub ユーザー本人が、ジョブのサマリーにある Review Router のセットアップを続行 リンクを開き、Tenpace にサインインして GitHub と Slack の手順を完了します。その後、ページ上で実際に Slack へメッセージを送信し、ルートの調整と検証を行います。

コードとしての設定

入力の代わりに、.tenpace/review-router.yml をコミットします。

version: 1
route:
  slack-channel: pull-requests
  preset: repo-watch
  reviewer-mentions: all

Tenpace チームに接続済みのワークスペースが複数ある場合は、slack-workspace も設定できます。Action の入力を明示的に指定した場合、ファイルの設定より優先されます。

入力

  • slack-channel:Slack チャンネル名です。# の有無は問いません。設定ファイルに記載されていない場合は必須です。
  • slack-workspace:省略可能な、正確なワークスペース名、Slack チーム ID、または Tenpace ワークスペース ID です。
  • preset:repo-watch、full-coverage、team-activity のいずれかです。デフォルト:repo-watch。
  • reviewer-mentions:all、connected-only、none のいずれかです。デフォルト:all。
  • config:設定ファイルのパスです。デフォルト:.tenpace/review-router.yml。

出力

  • setup-id:公開セットアップセッション ID です。
  • setup-url:有効期間の短い、人間向けの認証 URL です。
  • status:初期ステータスです。通常は awaiting_human です。

マシンセットアップトークンはマスクされ、意図的に Action の出力として公開されません。表示される URL にクレームシークレットは含まれません。この URL は署名済み OIDC トークン内の GitHub アクターに紐付けられており、同じ GitHub ユーザー本人が開く必要があります。ブラウザーフローでは、別のワークフローステップにシークレットを渡さずにセットアップを完了できます。

セキュリティモデル

GitHub Actions OIDC によって、ワークフロー実行のリポジトリとアクターが証明されます。ただし、プロバイダーへの権限は付与されません。Tenpace は OIDC の発行者、署名、オーディエンス、有効期間、リポジトリ ID と所有者 ID、アクター ID、サブジェクト、リポジトリとの紐付けを検証します。Action の URL にクレームシークレットは含まれず、クレームできるのはその GitHub アクターだけです。

サーバーは、動作を伴わないインテントを作成します。Tenpace ユーザーがサインインしてセットアップ URL をクレームすると、その時点のインテントのバージョンがアトミックにロックされます。クレーム後、マシントークンで編集することはできません。セットアップをクレームしたユーザーは編集でき、保存すると新しいバージョンが同じ操作内で作成され、ロックされます。プロバイダーの OAuth はブラウザー内で完了し、暗号化された認証情報は Tenpace に保存されます。

セットアップの作成と適用は冪等です。最終チェックでは、プルリクエスト通知と同じ Slack 配信経路を通じてメッセージを 1 件送信します。

報告方法と運用の詳細については、SECURITY.md を参照してください。

コーディングエージェント向け

セットアップを自動化する前に、AGENTS.md をお読みください。正規の機械可読インターフェースは次のとおりです。

AI 向けの情報発見に関する規約は統一されていないため、同じワークフローを Action のメタデータ、README、AGENTS.md、リンク先の HTML/Markdown ドキュメント、OpenAPI、MCP、well-known 記述子で説明しています。

リモート MCP サーバーは、公式 MCP Registry にも次の名前で公開されています。

io.github.tenpace-app/review-router

ライセンス

MIT

コメント

MCP は初めてですか?

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

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