mcpField
T
Tently

Tently

ローカル
tently.devバージョン管理22 週間前に更新

Tently について

Tentlyは、マージ済みプルリクエスト、レビューのやり取り、ドキュメントから得たチームの決定をコーディングエージェントに提供するMCPサーバーです。変更のコード影響範囲もローカルで計算し、ソースコードを端末外に送信しません。

主な機能

  1. 01該当するチーム決定の検索
  2. 02リポジトリ単位の決定検索
  3. 03シンボルの影響範囲をローカル計算
  4. 04決定を必須または推奨として表示
  5. 05エージェント設定とスキルの初期化

活用シーン

  1. 01コーディング前にチーム規約を確認
  2. 02記録された決定に照らして変更を確認
  3. 03シンボルの呼び出し元と依存先を調査
  4. 04コーディングエージェント向けにTentlyを設定

MCP 対応

MCPサーバーは、コーディングエージェントに決定検索とローカルの影響範囲分析を提供します。決定検索はTentlyワークスペースAPIを使い、影響分析はCodeGraphでローカルのチェックアウトを対象に実行します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"tently-team-tently": {
"command": "npx",
"args": [
"-y",
"@tently/mcp"
],
"env": {
"TENTLY_API_KEY": "<TENTLY_API_KEY>",
"TENTLY_API_URL": "<TENTLY_API_URL>"
}
}
}
}
起動コマンドnpx -y @tently/mcp
設定が必要な環境変数
TENTLY_API_KEYシークレットTently workspace API key, from the Connect page at app.tently.dev
TENTLY_API_URLTently API origin (default https://api.tently.dev)

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

パッケージ
npm@tently/mcp0.1.4

ツール

2

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

パラメーター型必須説明
limitnumberいいえ返す決定の最大数(1~50、デフォルトはサーバー側で設定)。
pathsarrayいいえ検索範囲を絞るための、編集対象のリポジトリ相対パスまたは glob。
querystringはいこれから行う操作を自然言語で記述します(例:「決定を検索するリポジトリメソッドを追加する」)。

詳細

Tently MCP:コーディングエージェント内で AI がプルリクエストをレビュー

npm CI License: MIT Listed on mcpservers.org M8ven Score

Tently は、GitHub のプルリクエスト向け AI コードレビュアーです。差分だけを見るレビュアーが見落とす 2 つの点、変更に依存するコードのリグレッションと、チームが意図的に決めた設計上の判断を覆す変更を検出します。マージ済みのプルリクエスト、レビューのスレッド、ドキュメントからそうした判断を学習し、すべてのプルリクエストをそれらに照らして確認します。

このリポジトリは Tently の MCP サーバーです。同じ判断を、プルリクエストが作成される前に、エージェントがコードを書いている最中の Claude Code、Cursor、Codex 内で利用できます。

各要素の連携

Tently は、2 つのゲートを備えた単一の判断ストアです。

ゲートタイミング機能
プルリクエストのレビュー(GitHub App)すべての PRリグレッションや判断からの逸脱について、根拠を添えてチェック実行とインラインコメントを投稿します
この MCP サーバーエージェントがコードを書いている間エージェントが該当する判断と変更の影響範囲を調べられるようにします

MCP サーバーを使用するには Tently ワークスペースが必要です。tently.dev から早期アクセスを申請してください。

セットアップ

app.tently.dev の Connect ページで API キーを作成し、リポジトリのルートで次を実行します。

npx @tently/mcp init --agent claude --api-key <your key>

または、環境変数を使ってキーを渡します。

TENTLY_API_KEY=<your key> npx @tently/mcp init

init は .mcp.json(Claude Code)または .cursor/mcp.json(Cursor)に tently サーバーを追加し、エージェントに使用するタイミングを伝える小さなスキルをインストールします。編集前にファイルをバックアップし、ほかの MCP サーバーを保持して、変更内容をすべて表示します。その後、エージェントを再起動してください。

--agent には claude、cursor、both、または auto(デフォルト。リポジトリ内の設定を自動検出します)を指定します。

手動での設定
{
  "mcpServers": {
    "tently": {
      "command": "npx",
      "args": ["-y", "@tently/mcp", "mcp"],
      "env": { "TENTLY_API_KEY": "<your key>" }
    }
  }
}

エージェントが利用できる機能

  • search_decisions:Tently ワークスペースから、これから変更するコードに該当する判断を検索します。それぞれの判断には、違反がブロッキングか参考情報かが示されます。検索範囲は現在のリポジトリに限定されます(チェックアウトの Git リモートから読み取ります)。そのため、ワークスペース内のほかのリポジトリの判断が、このリポジトリの検索結果を占めることはありません。
  • query_impact_zone:CodeGraph を使い、チェックアウト上でローカルに計算したシンボルの影響範囲(呼び出し元と依存先)を取得します。ソースコードがマシンの外に送られることはありません。インデックスは .codegraph/ に保存され、init によって .gitignore に追加されます。

影響範囲の結果は根拠であり、証明ではありません。インターフェース、動的ディスパッチ、再エクスポートを経由する呼び出し元は見つからない場合があり、その旨はツールの出力に示されます。

設定

変数説明
TENTLY_API_KEYワークスペースの API キー(search_decisions に必須)
TENTLY_API_URLAPI のオリジン。デフォルトは https://api.tently.dev
TENTLY_WORKING_DIRquery_impact_zone がインデックスを作成するディレクトリ。デフォルトは現在のディレクトリ
TENTLY_REPOsearch_decisions の検索対象とする GitHub リポジトリ。owner/name または GitHub URL で指定します。デフォルトでは、TENTLY_WORKING_DIR の origin と upstream の各リモートのうち、ワークスペースに接続されているものを使用します(origin を優先)。フォークにも対応します。GitHub リポジトリでない値は無視されます。接続されたリポジトリがない場合(または名前が変更された場合)、検索対象はワークスペース全体になります

プライバシー

search_decisions は、クエリテキスト、指定したファイルパス、チェックアウトの origin および upstream リモートの owner/name を Tently API に送信します。それ以外の情報がマシンの外に送信されることはありません。query_impact_zone は完全にローカルで実行されます。Tently のデータの取り扱いについては、tently.dev をご覧ください。

開発

npm install
npm test
npm run build
node dist/cli.js mcp   # start the server on stdio

Node.js 20 以降が必要です。

コントリビューション

Issue とプルリクエストを歓迎します。小規模な修正を超える内容については、進め方について合意できるよう、まず Issue を作成してください。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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