MCP サーバー
バージョン 2025.2 以降、PyCharm には MCP サーバーが統合され、Claude Code、Codex、VS Code などの外部クライアントが IDE で提供されるツールにアクセスできるようになります。 これにより、ユーザーは選択したアプリケーションを離れることなく、JetBrains IDE を制御して操作できます。
MCP サーバー プラグインを有効化する。
この機能は、PyCharm にデフォルトでバンドルされ有効になっている MCP サーバー プラグインに依存しています。 関連機能が利用できない場合は、プラグインが無効になっていないことを確認してください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
MCP サーバープラグインを見つけて、 有効化 をクリックします。
MCP サーバーを有効にする
MCP サーバーを有効にするには、次の手順に従います:
に進みます。
MCP サーバーを有効にする チェックボックスを選択します。
MCP サーバーを有効化しますか? ダイアログで、サードパーティアプリケーションが IDE で開いているプロジェクトに対して取得するアクセス権を確認し、続行するには 有効化 をクリックします。
適用 をクリックしてください。
MCP サーバーが有効になったら、外部クライアントの構成に進めます。
外部クライアントのセットアップ
検出された Junie、 VS Code、 Claude Code、 Codex、 Air、 GitHub Copilot CLI などの外部クライアントは、自動的に構成できます。 クライアントのセットアップとは、そのクライアントの構成ファイルに IDE MCP サーバーのアドレスを追加することです。
これを行うには、次の手順を実行します。
に進みます。
クライアントの自動構成 セクションで、MCP サーバーで使用するために設定したい各クライアントの 自動構成 をクリックします。 これにより、クライアントの構成ファイルが自動的に更新されます。 構成済みトランスポートのセットはクライアントによって異なります。

特定のトランスポートを自分で構成するには、 自動構成 の横にある
をクリックし、リストから必要なオプションを選択します。

設定を有効にするにはクライアントを再起動してください。
プロジェクトレベルのクライアントセットアップ
一部のクライアントは、プロジェクトの作業ディレクトリからも構成ファイルを読み取ります。 これらのクライアントでは、IDE が現在開いているプロジェクト内の構成ファイルに接続設定を直接書き込めるため、MCP サーバーはそのプロジェクトで作業している間だけ使用できます。
複数のプロジェクトで作業していて、すべてのクライアントセッションに MCP サーバーを登録したくない場合は、このオプションを使用します。
に進みます。
プロジェクトクライアントの自動構成 セクションで、セットアップする各クライアントの 自動構成 をクリックします。 これにより、クライアントのプロジェクトレベル構成ファイルが自動的に更新されます。

特定のトランスポートメカニズムを構成する場合は、 自動構成 の横にある
をクリックし、リストから必要なオプションを選択します。
設定を有効にするにはクライアントを再起動してください。
手動クライアントセットアップ
接続するクライアントがリストにない場合は、手動で構成します。
手動クライアント構成 セクションで、接続タイプに応じて SSE 設定をコピー、 標準入出力設定をコピー 、または HTTP ストリーム構成のコピー のいずれかをクリックします。

コピーした構成をクライアントの設定または構成ファイルに貼り付けます。
設定を有効にするにはクライアントを再起動してください。
確認なしでアクションを実行する
MCP サーバーを使用すると、接続された外部クライアントは、毎回ユーザーに確認を求めることなく、ターミナルコマンドを実行したり、IDE で構成を実行したりできます。
このモードを有効にするには:
に進みます。
コマンド実行 セクションで、 確認なしでシェルコマンドまたは実行構成を実行する (勇敢なモード) 設定を有効にします。
適用 をクリックしてください。
ターミナルセッションでセットアップの提案を表示する
一致する MCP サーバーセットアップがないターミナルセッションで Codex または Claude が起動した場合、IDE は接続の構成を提案するバナーを表示できます。
この動作を制御するには:
に進みます。
ターミナルセッション セクションで、 Codex および Claude ターミナルセッション向けセットアップの提案を表示する チェックボックスをオンまたはオフにします。
適用 をクリックしてください。
サポートされているツール
MCP サーバーは、外部クライアントが IDE やプロジェクトと連携できるツール群を公開します。例えば、コードの解析やファイルの変更、構成の実行、ターミナルコマンドの実行などが可能です。
利用可能なツール一覧は で表示・管理できます。 各ツールについて、 有効 チェックボックスをオンまたはオフにして、そのツールを外部クライアントに公開するかどうかを制御します。

ツールの ルーター専用 チェックボックスをオンにすることもできます。 ルーター専用ツールは直接の MCP ツールリストでは非表示になり、専用ルーターの ツール経由でのみ使用できます。 これにより、不要なツールの説明がツールリストに表示されなくなり、コンテキストを節約できます。 ルーター専用モードを適用するタイミングを指定するには、 以下のツールに対してルーター専用モードを有効化 設定を使用します。たとえば、 すべてのエージェント や ACP エージェントのみ に使用します。
以下は、MCP サーバーが提供するツールのリストです。
分析ツール
- 呼び出しを分析する
メソッド、関数、コンストラクター、またはサポートされている型に対応した IDE の呼び出し階層ツリーを構築します。 これを使用して、シンボルを呼び出すもの (
INCOMING_CALLS) またはシンボルが呼び出すもの (OUTGOING_CALLS) を確認します。実際の呼び出しによって依存関係を評価する場合は、使用箇所検索、テキスト検索、正規表現検索よりもこのツールを優先してください。 IDE の呼び出し階層データを使用するため、基本的な検索よりもノイズが少なく、追加の呼び出しも少ない、より正確な呼び出し関係を提供します。
symbolFqnを完全修飾名として渡します。例:com.example.Service.run。 名前があいまいな場合、ツールは正確なシグネチャーを返します。そのいずれかをsymbolFqnとして渡し直します。 短い名前または断片しか分からない場合は、まずsearch_symbolを使用してターゲットを見つけます。結果は展開可能なテキストツリーです。 各ノードには
filePathとtreePathが含まれます。filePathは可能な場合、プロジェクト相対です。 サブツリーをレンダリングするには、treePathを渡し直します。childOffsetを使用して、切り詰められた … の後に続けます および n 件以上 の行の後に続けるには使用します。depth、maxChildren、maxNodesはレンダリングされたツリーの範囲を制限します。 シンボルは、IDE が解決できる場合、プロジェクトソース、ソース jar、または逆コンパイルされたバイナリ jar 依存関係から取得できます。パラメーター:
symbolFqn(必須): プレーンな完全修飾シンボル名、またはあいまいさエラーで返された、もしくはレンダリングされた子ノードからコピーされた正確なシグネチャー。 短い名前または断片しか分からない場合は、まずsearch_symbolを使用し、最適な完全修飾呼び出し可能名をここに渡します。 例:com.example.Service.run、com.example.Service.run(String)、またはorg.assertj.core.api.Assertions.assertThat(String)。 ファイルパス、行、列、または別個のターゲットシグネチャーは渡さないでください。analysisKind(必須): 呼び出し分析の方向。INCOMING_CALLSを使用してsymbolFqnの呼び出し元を表示するか、OUTGOING_CALLSを使用してsymbolFqnから呼び出されるシンボルを表示します。depth: 要求されたサブツリールートの下にレンダリングする呼び出しレベルの最大数。 デフォルトは 5 です。 サブツリールートのみをレンダリングするには 0 を使用します。maxChildren: 各ノードに対してレンダリングされる直接の子の最大数。 デフォルトは 50 です。maxNodes: レンダリングされる呼び出しノードの最大合計数。 デフォルトは 1000 です。treePath: 以前の呼び出しを分析する結果から正確にコピーされた、サブツリールートへの任意のパス。 Null または省略した場合は、ルートパス[]を意味します。 各コンポーネントは正確なシグネチャーであり、表示名ではありません。childOffset:treePathで指定されたノードの直接の子をページングするためのオフセット。 デフォルトは 0 です。timeout: タイムアウト(ミリ秒)。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- build_project
プロジェクトまたは指定されたファイルのビルドをトリガーし、完了を待ってビルドエラーを返します。 このツールを使用してプロジェクトをビルド、またはファイルをコンパイルし、コンパイルエラーや警告の詳細情報を取得できます。
編集後にその内容が有効かどうかを検証するため、このツールを使用する必要があります。
パラメーター:
rebuild:プロジェクトを完全にリビルドするかどうか。 デフォルトは false です。filesToRebuildが指定されていない場合のみ有効です。filesToRebuild:指定されたパスのファイルのみをコンパイルします。 パスはプロジェクトルートからの相対パスです。timeout: タイムアウト(ミリ秒)。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ファイルの問題を取得する。
IntelliJ インスペクションを使用して、指定されたファイルのエラーと警告を分析します。 このツールを使用すると、特定のファイル内のコーディングの問題、構文エラー、その他の問題を特定できます。
重大度、説明、場所の情報を含む問題のリストを返します。
パラメーター:
filePath: プロジェクトルートからの相対パス。errorsOnly: エラーのみを含めるか、エラーと警告の両方を含めるか。timeout: タイムアウト(ミリ秒)。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- プロジェクト依存関係を取得する。
プロジェクトで定義されているすべての依存関係のリストを返します。 ライブラリ名に関する構造化された情報を提供します。
パラメーター:
projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- プロジェクト モジュールを取得する。
プロジェクト内のすべてのモジュールとそのタイプをリスト形式で返します。 各モジュールの名前やタイプなど、構造化された情報を提供します。
パラメーター:
projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- lint_files
IntelliJ インスペクションを使用して、指定されたファイルのエラーと警告を分析します。 複数のファイルを編集した後に lint するには、このツールを使用します。 ファイルごとの問題を、重大度、説明、場所情報とともに返します。
個別のファイルが利用可能な予算を超える場合、バッチ応答には
timedOut: trueと空のproblemsを含むファイルエントリが含まれることがあります。notAnalyzedReasonを含むファイルエントリは、分析できなかったファイルを示します。たとえば、プロジェクトコンテンツルートの外にあるファイル、除外されたファイル、またはサポートされていないファイルタイプです。 トップレベルのmore: trueは、バッチが不完全であることを意味します。パラメーター:
ファイル(必須): 分析するプロジェクト相対ファイルのリスト。 重複するパスは正規化後に無視されます。min_severity: 含める最小重大度:warningまたはerror。 デフォルトはwarningです。timeout: タイムアウト(ミリ秒)。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
コードインサイトツール
- シンボル情報を取得する。
指定されたファイル内の指定された位置にあるシンボルに関する情報を取得します。 IntelliJ IDEA の クイックドキュメント 機能と同じ情報を提供します。 この情報には、プログラミング言語に応じて、シンボルの名前、シグネチャー、型、ドキュメント、その他の詳細が含まれる場合があります。
位置がシンボルを参照している場合、ツールはシンボルの宣言(存在する場合)を含むコードスニペットを返します。 このツールを使用して、シンボルの宣言、セマンティクス、位置を理解してください。
パラメーター:
filePath: プロジェクトルートからの相対パス。line: 1 から始まる行番号。column: 1 から始まる列番号。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
データベース固有のツール
AI エージェントに対して厳密に読み取り専用アクセスを保証するには、適切な制限(読み取り専用)権限を持つデータベースユーザーを使用し、データソースがそのユーザーを使用するように構成します。
- cancel_sql_query
実行中のクエリを、その固有 ID を使用してキャンセルします。
パラメーター:
sessionId: クエリセッション ID。
- データベース接続を作成する
名前、DBMS (
dbms)、JDBC URL (url)、および接続を確認するフラグ (needToCheckDs) によって、新しいデータベース接続 (データソース) を作成します。 すべてのパラメーターが必須です。 接続診断情報を返します。パラメーター:
name(必須): データベース接続の一意の名前。dbms: データベース管理システム (DBMS) の名前。url: データベース接続の完全な JDBC URL。例:jdbc:postgresql://<host>:<port>/<database>。needToCheckDs: データソースの作成または編集直後に接続をテストするかどうか。 複数の接続をバッチで構成する場合はfalseに設定します。接続ごとのプローブはコストが高く、重要な接続についてはデータベース接続のテストを明示的に呼び出せます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- データベース接続を編集する
connectionIdで識別される既存のデータベース接続 (データソース) を編集します。 接続の DBMS ドライバーと JDBC URL を更新します。接続nameは保持されます。 接続診断情報を返します。パラメーター:
connectionId: 固有の接続 ID。dbms: データベース管理システム (DBMS) の名前。url: データベース接続の完全な JDBC URL。例:jdbc:postgresql://<host>:<port>/<database>。needToCheckDs: データソースの作成または編集直後に接続をテストするかどうか。 複数の接続をバッチで構成する場合はfalseに設定します。接続ごとのプローブはコストが高く、重要な接続についてはデータベース接続のテストを明示的に呼び出せます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- execute_sql_query
指定されたデータベース接続に対して SQL クエリを実行します。
このツールは実行ステータス(成功またはエラー)を報告します。 エラーの場合は、エラーの説明も提供します。
クエリがデータを返した場合、そのデータは CSV 形式でツールの応答に追加されます。
パラメーター:
connectionId: 固有の接続 ID。queryText: 実行する SQL クエリ。
- クエリ結果を取得する
指定された行オフセットから、すでに実行されたクエリの行を ID で取得します。
execute_sql_queryと同じ形状を返します:resultSetIdと CSV 形式でレンダリングされた結果。以前に
execute_sql_queryまたはテーブルデータのプレビューから返されたresultSetIdをページングするには、このツールを使用します。パラメーター:
resultSetId(必須): 以前のexecute_sql_queryまたはテーブルデータのプレビュー呼び出しで返された不透明な結果セット ID。offset(必須): 取得を開始する行オフセット。 デフォルトは 0 です。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- get_database_object_description
特定のスキーマ内でデータベースオブジェクト(カラム、型、キー、インデックスなど)の構造を階層的なテキスト形式で取得します。
あいまいな場合は、該当するすべてのオブジェクト定義を返します。
パラメーター:
connectionId: 固有の接続 ID。databaseName: スキーマが属するデータベースの名前。 DBMS にデータベースがなく、スキーマのみが存在する場合は、空欄にすることができます。schemaName: スキーマ名。kind: このパラメーターに特定のオブジェクト種別コードを設定すると、その種別のオブジェクトのみが一覧表示されます。 null に設定すると、スキーマ内のすべてのオブジェクトが取得されます。objectName:指定された種類のオブジェクト名(例えば、テーブル名やビュー名)。 空にすることはできません。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- スキーマを検査する
データベーススキーマをイントロスペクトし、そのメタデータ (テーブル、列、インデックス) をローカルモデルに読み込みます。 スキーマの
isIntrospectedフラグが false で、スキーマの構造を調査する必要がある場合、または古いメタデータを更新する場合に使用します。 更新されたイントロスペクションステータスを含むスキーマ識別子を返します。パラメーター:
connectionId: 固有の接続 ID。databaseName: スキーマが属するデータベースの名前。 DBMS にデータベースがなく、スキーマのみが存在する場合は、空欄にすることができます。schemaName: スキーマ名。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- データベース接続の一覧表示
プロジェクト内で設定済みのデータベース接続またはデータソースのリストを取得します。 各接続について、一意の ID、名前、DBMS、ドライバ名を返します。
- データベーススキーマの一覧表示
指定されたデータベース接続内のデータベーススキーマのリストを取得します。
このツールは、各スキーマについて、スキーマ名とデータベース名(該当しない場合は空欄)を返します。
パラメーター:
connectionId: 固有の接続 ID。selectedOnly: データベースツリーで選択されたスキーマのみを表示する場合は true、すべてのスキーマを表示する場合は false。
- list_recent_sql_queries
この機能は無料プランではご利用いただけません。
指定されたデータベース接続に対して、最近実行されたクエリ(現在実行中のクエリを含む)のリストを取得します。
各クエリの戻り値:
クエリセッションの一意の ID。
クエリの実行にかかった時間(ミリ秒)。
クエリの現在の状態。 例: 実行中、キャンセル中、完了など。
クエリの補完ステータス。 例: 成功、エラーで終了、キャンセルなど。
クエリのテキスト。
パラメーター:
connectionId: 固有の接続 ID。
- スキーマオブジェクト種別の一覧表示
指定されたデータベース接続でサポートされているスキーマオブジェクトの種類の一覧を取得します。 各オブジェクトの種類について、そのオブジェクト種類の一意のコードと人間が読みやすい名前を返します。
パラメーター:
connectionId: 固有の接続 ID。
- スキーマオブジェクトの一覧表示
指定されたスキーマ内のデータベースオブジェクトのリストを取得します。 各オブジェクトについて、スキーマ内のオブジェクト名とその種類を返します。
パラメーター:
connectionId: 固有の接続 ID。schemaName: スキーマ名。databaseName: スキーマが属するデータベースの名前。 DBMS にデータベースがなく、スキーマのみが存在する場合は、空欄にすることができます。kind: このパラメーターに特定のオブジェクト種別コードを設定すると、その種別のオブジェクトのみが一覧表示されます。 null に設定すると、スキーマ内のすべてのオブジェクトが取得されます。
- テーブルデータのプレビュー
指定されたデータベース接続を使用して、テーブル、ビュー、マテリアライズドビュー、その他のテーブルのようなオブジェクトのプレビューデータを返します。
このツールは、テーブルの内容を CSV 形式で返します。
パラメーター:
connectionId: 固有の接続 ID。schemaName: スキーマ名。databaseName: スキーマが属するデータベースの名前。 DBMS にデータベースがなく、スキーマのみが存在する場合は、空欄にすることができます。tableName: テーブル名。maxRowCount: 返される行の最大数。 デフォルトは100です。
- データベース接続のテスト
接続診断情報を返します。
接続に問題があるかどうかを示すフラグ: はい、いいえ、不明。
DBMS の種類、バージョン、JDBC ドライバなど、データベース接続に関する詳細情報です。
接続試行結果の概要。 接続に失敗した場合は、DBMS が提供するエラー説明が含まれます。
パラメーター:
id: 固有の接続 ID。
実行ツール
- 実行構成を実行する。
現在のプロジェクトで、指定名の既存実行構成またはコードロケーション(
filePath+line)から作成した一時的な実行構成のいずれかを実行し、指定したタイムアウトまで完了を待ちます。 このツールは実行構成を取得で返された構成名、またはget_run_configurations(filePath = ...)で返された実行ポイント(filePath+line)のいずれかで利用します。オプションで適用される起動時オーバーライド(
programArguments、workingDirectory、envs)は今回の実行にのみ適用され、保持されません。 本実行の起動値を明示的に変更する必要がある場合以外は、これらのオーバーライドパラメーターを渡さないでください。 オーバーライドパラメーターが未指定または null の場合、既存の実行構成値は変更されません。 文字列オーバーライド(programArguments、workingDirectory)の場合、未指定・null または空文字列("")は既存値をそのままにします。" "など空白のみの文字列を渡すと、この起動で既存値がクリアされます。configurationName、またはfilePathとlineを一緒に渡してください。 これらのモードは相互に排他的です。振る舞い:
waitForExit=trueの場合、プロセス終了までtimeoutミリ秒待機します。 タイムアウトになると、プロセスはバックグラウンドで継続され、exitCodeは結果から除外されます。waitForExit=falseの場合、プロセスが開始するまでのみ待機し、timeoutを適用せず即時返却します。fullOutputPathは、完全な生の出力を持つ一時ファイルを指し、プロセスが生存中は内容が増え続けることがあります。
現在の出力スナップショット、任意の終了コード、およびオプションの
fullOutputPathを含む実行結果を返します。パラメーター:
configurationName:実行する既存の実行構成の名前。filePath:プロジェクトルートからのファイルパス。lineとあわせて指定することで、コードコンテキストから一時実行構成を作成し、実行します。line:filePath用の 1 から始まる行番号。filePathと一緒に指定し、configurationNameとは組み合わせないでください。timeout: タイムアウト(ミリ秒)。waitForExit:プロセスの終了を待つかどうか。 If false, the tool returns immediately after the process starts and ignorestimeout.programArguments:この起動でのみ有効なプログラム引数のオプションオーバーライド。 未指定・null または空文字列は既存値を維持、空白のみの文字列は既存値をクリアします。workingDirectory:この起動でのみ有効な作業ディレクトリのオプションオーバーライド。 未指定・null または空文字列は既存値を維持、空白のみの文字列は既存値をクリアします。envs:この起動でのみ有効な環境変数のオプションオーバーライド。 未指定・null の場合は既存環境をそのままにし、指定された場合は既存環境に上書きマージされます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- 実行構成を取得する。
入力に応じて、プロジェクトの実行構成または実行可能コード位置を返します。
filePathがない場合、このツールはプロジェクトの既存実行構成を一覧表示します。 結果には構成名が含まれ、利用可能な場合はプログラム引数、作業ディレクトリ、環境変数、supportsDynamicLaunchOverridesなどの起動詳細も含まれます。supportsDynamicLaunchOverridesは、実行構成を実行とxdebug デバッガーセッションを開始におけるワンタイム起動オーバーライド(programArguments、workingDirectory、envs)に対する信頼できる情報元となるケイパビリティフラグです。 選択された構成でこのフラグがtrueの場合のみ、これらのオーバーライドパラメーターを渡してください。filePathを指定すると、そのファイルの実行可能エントリポイント(実行ポイント)を検出します。たとえばテストメソッドや main メソッド、IDE で Run ガターアイコンが表示される他のエントリポイントなどです。 結果にはfilePathとrunPointsが含まれ、返された行番号を実行構成を実行で用いることでコードから実行できます。パラメーター:
filePath:プロジェクトルートからのオプションファイルパス。 指定すると、プロジェクト全体の実行構成の代わりにファイル内の実行ポイント(実行可能エントリポイント)を返します。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
ファイルツール
- 新しいファイルを作成する。
プロジェクトディレクトリ内の指定されたパスに新しいファイルを作成します。 オプションで、指定されたテキストをファイルに書き込みます。
パラメーター:
pathInProject: プロジェクトルートを基準としてファイルを作成するパス。text(オプション): 新しいファイルに書き込むコンテンツ。overwrite: 既存のファイルを上書きするかどうか。falseに設定すると、競合が発生した場合に例外がスローされます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- 開いているすべてのファイルパスを取得する。
アクティブなエディターまたは他の開いているエディターで編集用に開かれたすべてのファイルのパスを、プロジェクトルートからの相対パスで返します。 このツールを使用すると、現在開いているエディターを調べることができます。
パラメーター:
projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ディレクトリ ツリーを一覧表示する。
指定されたディレクトリのツリー表示を、
treeユーティリティに似た疑似グラフィック形式で提供します。 このツールは、ディレクトリまたはプロジェクト全体の内容を調べるのに使用できます。 ディレクトリ一覧の表示には、lsやdirなどのコマンドラインユーティリティよりも、このツールを推奨します。パラメーター:
directoryPath: プロジェクトルートからの相対パス。maxDepth: 最大再帰深度。timeout: タイムアウト(ミリ秒)。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- エディターでファイルを開く。
指定されたファイルを JetBrains IDE エディターで開きます。 開くファイルへのパスを含む
filePathパラメーターが必要です。 ファイルパスは絶対パスまたはプロジェクトルートからの相対パスで指定できます。パラメーター:
filePath: プロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
フォーマットツール
- ファイルを再フォーマットする。
JetBrains IDE で指定されたファイルを再フォーマットします。 このツールを使用すると、パスで指定されたファイルにコードフォーマットを適用できます。
パラメーター:
path: プロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
Jupyter Notebook ツール
外部クライアントが Jupyter Notebook を扱う方法を改善するには、バンドルされた jupyter スキルを使用できます。 このスキルは、対応する Notebook ツールをいつ、どのように使用するかについてのガイダンスを提供します。
- ノートブックを作成する
.ipynb拡張子を持つ空の Jupyter Notebook ファイルを作成します。 Notebook はnbformat4.5 スキーマを使用します。Notebook の作成後にセルを追加するには、
ノートブックを編集するを使用します。ツールは新しいファイルへのパスを返します。
パラメーター:
file_path: Notebook を作成する場所の絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックを編集する
Jupyter Notebook のセルを編集し、更新された Notebook ファイルを保存します。
セルを置換、挿入、または削除できます。 指定されたセルが見つからない場合、ツールは使用可能なセル ID を含む検証エラーを返します。
例:
{"file_path": "/abs/path/demo.ipynb", "cell_id": "abc123", "new_source": "print('hello')", "edit_mode": "replace"}{"file_path": "/abs/path/demo.ipynb", "cell_id": "abc123", "new_source": "# Title", "cell_type": "markdown", "edit_mode": "insert"}{"file_path": "/abs/path/demo.ipynb", "cell_id": "abc123", "edit_mode": "delete"}
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。cell_id: 置換または削除するセル ID。 挿入の場合、新しいセルはこのセルの後に追加されます。 挿入モードで省略した場合、新しいセルは Notebook の末尾に追加されます。new_source: 新しいセルまたは置換セルのソーステキスト。 空の内容を持つセルを作成または置換する場合にのみ省略します。cell_type: セルタイプ。codeまたはmarkdown。 挿入には必須で、置換と削除では無視されます。edit_mode: 実行する編集操作:replace、insert、またはdelete。 デフォルト値はreplaceです。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- カーネルでコードを実行する
Notebook を変更せずに、Jupyter Notebook のアクティブなカーネルで短いコードスニペットを実行します。
変数、メトリクス、データ形状、実行環境の確認など、簡単なチェックにはこのツールを使用します。 ノートブックに残しておく必要がある長時間の操作では、セルを追加または編集し、
ノートブックセルを実行するを使用します。ツールには既存の Jupyter カーネルセッションが必要です。 最後のテキスト出力またはエラーメッセージから、簡潔なテキストを返します。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。code: ノートブックカーネルで実行するコードスニペット。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックの状態を取得する
新しいカーネルセッションを開始せずに、Jupyter ノートブックカーネルの現在の実行状態を確認します。
ツールは、カーネルが利用不可、アイドル、ビジーのいずれであるかを報告します。 この情報が利用できる場合は、現在実行中のセルの ID と、キューに入っているセルの ID も含まれます。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックを中断する
カーネルセッションを利用可能なまま、Jupyter ノートブックで現在の実行を中断します。
固まっている、または不要になったセルを停止するには、このツールを使用します。 アクティブなノートブック実行マネージャーが利用できない場合、ツールはカーネルがすでに停止していることを報告します。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックを強制終了する
ノートブックに関連付けられた Jupyter カーネルセッションを終了します。
カーネル状態、インポート、変数、またはメモリをリセットする必要がある場合、またはノートブックをクリーンな状態から再実行する必要がある場合は、このツールを使用します。 次のセル実行で新しいカーネルセッションが開始されるため、初期化セルとインポートセルを再度実行する必要があります。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックを読み取る
セルを実行せずに Jupyter ノートブックの内容を読み取ります。
ツールは、各セルの ID、タイプ、利用可能な場合の実行ステータス、ソースコード、レンダリングされた出力を含め、ノートブックセルを元の順序で返します。 サポートされる出力には、テキスト、Markdown、JSON、エラー、画像、ブラウザーコンテンツ、テーブルが含まれます。
画像は一時 PNG ファイルとして保存され、テーブルはシンプルな HTML としてレンダリングされます。 ノートブックレベルのレスポンスはサイズが制限されているため、個別の大きなセルを調べるには
ノートブックセルを読み取るを使用します。file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックセルを読み取る
実行せずに Jupyter ノートブック内の特定のセルを読み取ります。
ツールはセルのソース、その出力、またはその両方を返すことができます。 結果をコンパクトな XML 風ブロックとしてフォーマットします。
大きな出力は、完全な出力を含む一時テキストファイルとともにプレビューとして返されます。 画像出力は一時 PNG ファイルとして保存されます。 動的テーブルでは、ツールは最初の 100 行と統計を 10 秒以内に読み込もうとし、その後、静的テーブル表現にフォールバックします。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。cell_id: 読み取るノートブックセルの ID。read_mode: 返すコンテンツ。ソースと出力にはall、ソースのみにはsource、出力のみにはoutput。output_mode: 返す出力スコープ。 このセルに対する前回の呼び出し以降に追加された出力のみを返すにはdeltaを使用し、完全な出力を返すにはfullを使用します。 デフォルト値はdeltaです。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- ノートブックセルを実行する
ノートブックカーネルを使用して、Jupyter ノートブック内の単一または複数のセルを実行します。
ノートブックの実行で副作用または更新されたセル出力を生成する必要がある場合は、このツールを使用します。 すでに実行中のカーネルで短い確認を行う場合は、代わりに
カーネルでコードを実行するを使用します。ツールは要求されたセルが完了するまで待機し、レンダリングされた出力を返します。 大きな出力は、完全な出力を含む一時テキストファイルとともにプレビューとして返されます。 画像出力は一時 PNG ファイルとして保存されます。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。cell_ids: 実行するセル ID の任意のリスト。 省略した場合、すべてのセルが順番に実行されます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- セルの実行を待機する
Jupyter ノートブックセルの実行が完了するか、別の終了状態に達するまで待機します。
実行中に有用な出力をほとんど、またはまったく生成しない長時間実行セルには、このツールを使用します。 増分ログやその他の有用なライブ出力があるセルでは、
output_modeをdeltaに設定してノートブックセルを読み取るを使用します。待機期間が終了した時点でセルがまだ実行中の場合、ツールは実行がまだ進行中であることを示す通常のステータスを返します。 待機を続けるには、ツールを再度呼び出します。
パラメーター:
file_path:.ipynbファイルへの絶対パス、またはプロジェクトルートからの相対パス。cell_id: 実行状態を待機するノートブックセルの ID。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
インスペクション生成 MCP ツール
- validate_inspection_kts
inspection.kts スクリプトを仕様例と照らし合わせて検証します。 インスペクションをコンパイルし、肯定例/否定例で実行します。 コンパイルのステータスと詳細な検証結果を返します。
肯定例はインスペクションを発生させる必要があります(問題が想定されます)。 否定例はインスペクションを発生させない必要があります(禁止行に問題は想定されません)。
全体の成否、各例ごとの結果、集計統計を返します。
パラメーター:
inspectionKtsCode:コンパイルおよび検証する inspection.kts スクリプトの内容。pathToSpecification:検証対象の例を含む仕様へのパス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
インスペクションKTS MCP ツール
- generate_inspection_kts_api
対象言語の Inspection KTS API ドキュメントを返します。 inspection.kts ファイル作成時に利用できるクラスや関数を提供します。
パラメーター:
language:対象言語:'Java' または 'Kotlin'。wrapInTagsが true の場合、API コンテンツを<API>および<api.kt>タグでラップします。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- generate_inspection_kts_examples
対象言語のコード生成の参考となる inspection.kts テンプレート例を返します。 InspectionKts API を使用してインスペクションの書き方を示す XML ラップされた例を提供します。
パラメーター:
language:対象言語:'Java' または 'Kotlin'。includeAdditionalExamplesが true の場合、テンプレート以外にも追加厳選例を含めます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- generate_psi_tree
指定された Java または Kotlin のコードから PSI ツリーを作成し、インデント付きテキストで返します。 コードスニペットでインスペクション作成時に PSI 構造を理解するためにこのツールを使います。 出力は要素種別や階層を示し、
node.children()が必要な場合のヒントを含みます。パラメーター:
code:解析するソースコードスニペット。language:対象言語:'Java' または 'Kotlin'。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- run_inspection_kts
inspection.kts スクリプトをコンパイルし、ターゲットファイルで実行します。 コンパイルエラーがあれば返し、なければインスペクションで検出された問題一覧を返します。 開発時にはこのツールで inspection.kts スクリプトのテストができます。
パラメーター:
inspectionKtsCode:コンパイルおよび実行する inspection.kts スクリプトの内容。contextPath:プロジェクト内で解析するターゲットファイルの相対パス(例: src/my/package/Example.kt )。targetFileContent:解析するターゲットファイルの内容。 指定されていない場合、ファイルがプロジェクト内に存在している必要があります。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
パッチツール
- パッチを適用する
Codex
パッチを適用する形式または統合 Git diff 形式でパッチを適用します。 Add、Delete、Update 操作をサポートし、更新用のオプションの移動先パスを指定できます。 パスはプロジェクトディレクトリ内にある必要があります。パラメーター:
input:パッチを適用する形式または統合 Git diff 形式のパッチテキスト。patch:{patch: ...}を送信するクライアントとの互換性のためのinputのエイリアス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
Python 環境 MCP
外部クライアントが Python 環境をより適切に操作できるようにするには、バンドルされている python-tools スキルを使用できます。 このスキルは、対応する環境ツールをいつどのように使用するかについてのガイダンスを提供します。
- Python インタープリターを構成する
指定したファイルを含むモジュールに対して、ローカル Python インタープリターを構成します。
PyCharm は、既存の仮想環境をアタッチしたり、親モジュールからインタープリターを継承したり、利用可能な環境マネージャーを使用して新しい環境を作成したりできます。
Python 環境を取得するからのレスポンスが PyCharm でインタープリターを構成できることを示している場合にのみ、このツールを呼び出します。 構成後、環境を検証するためにPython 環境を取得するを再度呼び出します。パラメーター:
filePath: インタープリターを構成する必要があるモジュール内の Python ファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- Python 環境を取得する
指定したファイルに対して構成されている Python 環境に関する情報を返します。
Python コマンドを実行する前にこのツールを使用して、PyCharm が使用するインタープリターのバージョン、環境タイプ、実行可能ファイルのパス、環境の場所、パッケージマネージャーを確認します。 ツールはプロジェクト構成を変更しません。
インタープリターが構成されていない場合、レスポンスには次のアクションに関するヒントが含まれます。 レスポンスが PyCharm でインタープリターを構成できることを示している場合は、同じファイルパスで
Python インタープリターを構成するを呼び出します。パラメーター:
filePath: ターゲットモジュール内の Python ファイルへの絶対パス、またはプロジェクトルートからの相対パス。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
読み取りツール
- read_file
プロジェクトディレクトリやプロジェクト依存・他のプロジェクトソースルートからファイルを読み取ります。 Jar/Jrt ファイル内のソースも読み取ることができ、Jar/Jrt ファイルやディスク上の Java クラスファイルのデコンパイルにも対応しています。 行番号付き(1始まり)のテキストとして返されます。
モード:
slicelinesline_columnsoffsetsindentation
モード詳細:
sliceはstart_lineとmax_linesを使用します。linesはstart_line/end_line(両端を含む)を使用します。line_columnsはstart_line/start_columnとend_line/end_columnを使用します(endは排他的、end_lineはstart_lineがデフォルト)。offsetsはstart_offset/end_offsetを使用します(endは排他的)。indentationはstart_lineをmax_levels/include_*とともに使用します。
max_linesはすべてのモードで出力全体に上限をかけます。context_linesは範囲モード(各側)に適用されます。パラメーター:
file_path:ファイルへのパス。 プロジェクト相対パス、 '..' 付きパス、絶対パス、 /path/lib.jar!/pkg/Foo .class のようなアーカイベントリ、 file:// 、 jar:// 、 jrt:// などのURLに対応しています。 他ツールから返されたパスはそのまま渡すことができます(例:search_*ツールからのパス)。mode:リードモード:slice、lines、line_columns、offsets、またはindentation。start_line:読み取りを開始する 1 から始まる行番号です。max_lines:返す行数の最大値(スライスは行数として使用;全モードで出力に上限あり)。end_line:lines/line_columnsモード用の 1 から始まる終了行(linesは含む、line_columnsは含まない)。start_column:line_columnsモード用の 1 から始まる開始列。end_column:範囲読み込みの終了列(1始まり、排他的)。start_offset:オフセットモードの開始オフセット(0始まり、end_offsetが必要)。end_offset:オフセットモードの終了オフセット(0始まり、排他的)。context_lines:範囲の前後に含めるコンテキスト行数(各側)。max_levels:インデントモード:最大で含めるインデントレベル数(0=アンカーブロックのみ)。include_siblings:インデントモード:同じインデントレベルの兄弟ブロックも含めます。include_header:インデントモード:アンカー直上のヘッダーコメントやアノテーションを含めます。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
リファクタリングツール
- リネームリファクタリングを実行する。
指定されたファイル内のシンボル(変数、関数、クラスなど)の名前を変更します。 このツールを使用して、名前変更リファクタリング操作を実行します。
単純なテキスト検索と置換とは異なり、
リネームリファクタリングを実行する。ツールはコード構造を理解するコンテキスト対応ユーティリティです。 プロジェクト全体にわたって指定されたシンボルへの参照をすべてインテリジェントに更新することで、コードの整合性を確保し、参照の破損を防ぎます。 プログラムシンボルの名前変更には、常に推奨される方法です。リネーム操作が成功した場合、ツールは成功メッセージを返し、ファイルやシンボルが見つからない場合やリネーム操作に失敗した場合はエラーメッセージを返します。
パラメーター:
pathInProject: プロジェクトルートからの相対パス。symbolName:リネーム対象シンボル名。newName:新しいシンボル名。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
ツールを検索
- search_file
プロジェクト内でグロブパターンによるファイル検索を行います。 グロブ構文を使ってファイルパスを一致させたいときにこのツールを使用してください。
グロブパターンはプロジェクトルートからの相対指定です。
例:
"**/*.kt""src/**/Foo*.java""build.gradle.kts"
'/'のないパターンは"**/pattern"として扱われます。pathsはプロジェクトルートからの相対パスで指定された追加のグロブフィルター(任意)です。パラメーター:
q: 検索する glob パターン。paths:結果をフィルターするためのプロジェクト相対グロブパターンの任意リスト。!による除外に対応しています。 末尾の/は**に展開されます。/のないパターンは**/patternとして扱われます。 空文字列は無視されます。includeExcluded:除外・無視されたファイルを結果に含めるかどうか。limit:返す結果の最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- search_regex
プロジェクトファイル内で正規表現一致を検索します。 スニペット付きの正規表現検索が必要なときにこのツールを使います。 結果には一致の座標(可能な場合は、1始まりの行/列、0始まりのオフセット)が含まれます。
パスはプロジェクトルートからのグロブパターンで指定します。
例:
["src/**", "!**/test/**"]["**/*.kt"]["foo/"]
パラメーター:
q: 検索する正規表現パターン。paths:結果をフィルターするためのプロジェクト相対グロブパターンの任意リスト。!による除外に対応しています。 末尾の/は**に展開されます。/のないパターンは**/patternとして扱われます。 空文字列は無視されます。limit:返す結果の最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- search_symbol
シンボル(クラス、メソッド、フィールド)を検索します。 識別子フラグメントによるセマンティック検索にこのツールを使用してください。 結果には一致の座標(可能な場合は、1始まりの行/列、0始まりのオフセット)が含まれます。
パスはプロジェクトルートからのグロブパターンで指定します。
デフォルトではプロジェクトシンボルのみを検索します。 適切な結果が得られない場合は、
include_external=trueでもう一度試して、SDK やライブラリのシンボルも検索してください。パラメーター:
q:シンボルのクエリテキスト。paths:結果をフィルターするためのプロジェクト相対グロブパターンの任意リスト。!による除外に対応しています。 末尾の/は**に展開されます。/のないパターンは**/patternとして扱われます。 空文字列は無視されます。include_external:SDK とライブラリのシンボルも含めるかどうか。 デフォルトは無効です。適切な結果がなければinclude_external=trueでもう一度試してください。limit:返す結果の最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- search_text
プロジェクトファイル内でテキスト部分文字列を検索します。 スニペット付きの高速テキスト検索にこのツールを使います。 結果には一致の座標(可能な場合は、1始まりの行/列、0始まりのオフセット)が含まれます。
パスはプロジェクトルートからのグロブパターンで指定します。
例:
["src/**", "!**/test/**"]["**/*.kt"]["foo/"]
パラメーター:
q:検索するテキスト。paths:結果をフィルターするためのプロジェクト相対グロブパターンの任意リスト。!による除外に対応しています。 末尾の/は**に展開されます。/のないパターンは**/patternとして扱われます。 空文字列は無視されます。limit:返す結果の最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
スキル検索ツール
- スキルを検索する
明示的なモードで統合プロジェクト検索を実行します:
file: glob パス検索。text: リテラルコンテンツ検索。regex: 正規表現コンテンツ検索。symbol: セマンティックシンボルルックアップ。
シンボル検索はデフォルトでプロジェクトに重点を置きます。 適切なシンボルが見つからない場合は、SDK とライブラリのシンボルも検索するために
include_external=trueを使用してもう一度試してください。パラメーター:
mode(必須): 検索モード:file、text、regex、またはsymbol。q(必須): 検索クエリ。mode=fileの場合、これは glob パターンです。paths: オプションのプロジェクト相対 glob フィルター。!による除外と末尾の/をサポートします。include_external:mode=symbolに SDK とライブラリのシンボルを含めるかどうか。 デフォルトでは無効です。適切なものが見つからない場合は、include_external=trueでもう一度試してください。includeExcluded: 除外または無視されたファイルを含めるかどうか。mode=fileでのみサポートされます。limit:返す結果の最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
ターミナルツール
- ターミナル コマンドを実行する。
IDE の統合ターミナルで指定されたシェルコマンドを実行します。 このツールを使用すると、IDE 環境内でターミナルコマンドを実行できます。
重要な機能と制限事項:
出力を収集する前にプロセスが実行中かどうかを確認します。
出力を 2000 行に制限します (超過分は切り捨てられます)。
指定されたタイムアウト後に通知とともにタイムアウトします。
設定で ブレイブモードが有効になっていない限り、ユーザーの確認が必要です。
可能な応答を返します:
ターミナル出力 (2000 行を超える場合は切り捨てられます)。
コマンドがタイムアウトした場合に中断通知を出力します。
さまざまな失敗ケースのエラーメッセージ。
パラメーター:
command: 実行するシェルコマンド。executeInShell: コマンドをユーザーのデフォルトシェル(bash、zsh など)で実行するかどうかを指定します。 コマンドがシェルスクリプトの場合、またはユーザーのターミナルの実際の環境を維持することが重要な場合に便利です。falseに設定すると、コマンドはプロセスとして起動されます。reuseExistingTerminalWindow: 複数のターミナルを作成しないように、既存のターミナルウィンドウを再利用するかどうか。timeout: タイムアウト(ミリ秒)。maxLinesCount: 返される行の最大数。truncateMode: テキストを切り捨てる方法: 先頭から、途中から、最後から、まったく切り捨てない。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
ユニバーサルツール
- ツールを実行する
コマンドライン文字列から特定の IDE MCP ツールを動的に呼び出す汎用ツールエグゼキューターです。
パラメーター:
command(必須): ツール名と引数を含むコマンドライン文字列。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
VCS ツール
- リポジトリを取得する。
プロジェクト内の VCS ルートのリストを取得します。 このツールを使用すると、マルチリポジトリプロジェクト内のすべてのリポジトリを識別できます。
パラメーター:
projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。
- Git ステータス
現在のプロジェクト内にある単一または複数のリポジトリの Git ステータスを取得します。 Porcelain 形式のインデックスとワークツリーのステータスコード、およびサマリーカウンターを返します。 デフォルトでは、すべての Git リポジトリが返されます。
パラメーター:
repositoryPathRelativeToProject: 含まれる単一のリポジトリを選択するために使用する、プロジェクトルートからのオプションの相対パス。includeUntracked: 未追跡ファイルを含めるかどうか。includeIgnored: 無視されたファイルを含めるかどうか。limit: リポジトリごとに返されるエントリの最大数。projectPath: プロジェクトパス。 曖昧な呼び出しを減らすため、この値がわかっている場合は必ずこの値を指定してください。 現在の作業ディレクトリのみがわかっている場合は、それをプロジェクトパスとして使用できます。