概要・目的
最近よく聞く MCP(Model Context Protocol)。
「Copilot から外部ツール叩けるらしいけど、実際どうなん?」と思ったので、
15分で最低限の PoC をやってみました。
目的はシンプルで、
- GitHub Copilot(Agent)からfilesystem MCP を使ってローカルのファイルを実際に操作できること
- 許可したディレクトリだけ に制限できること
この2点を確認すること。
環境
- IntelliJ IDEA
- GitHub Copilot(JetBrains Plugin)
- Node.js(npx が使える状態)
手順
1. PoC 用ディレクトリを作る
まずは Copilot に触らせてもいいディレクトリを用意します。
mkdir -p ~/path/to/mcp-poc
echo "hello mcp" > ~/path/to/mcp-poc/hello.txt
※ ~/path/to/mcp-poc は例なので好きな場所に作成してください。
2. mcp.json を設定する
IntelliJ の Copilot 設定から mcp.json を開いて、
filesystem MCP を追加します。
{
"servers": {
"filesystem": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/ABSOLUTE/PATH/TO/mcp-poc"
]
}
}
}
ポイント
最後の引数が許可ディレクトリここに書いたパス以外はアクセス不可になる
3. IntelliJ を再起動
mcp.json を編集後 IntelliJ を再起動
mcp.json は IntelliJ 起動時に読み込まれるため、Copilot 側に反映されません。
4. Copilot Agent を起動
-
Copilot Chat を開く
-
Agent モードに切り替える
-
Configure Tools を開いてfilesystem → ON
(検証時は Built-in tools を OFF にすると挙動が分かりやすい)

-
filesystem MCP を実行してみる
ファイル一覧を取得
プロンプト例
説明は不要です。
filesystem MCP ツールを実行して、
/ABSOLUTE/PATH/TO/mcp-poc のファイル一覧を取得してください。
結果例:
/ABSOLUTE/PATH/TO/mcp-poc:
- hello.txt
この時点で
Copilot → MCP → ローカル filesystem がつながってることがわかる
ファイルを読み取る
filesystem MCP ツールで hello.txt の内容を読み取ってください。
hello mcp が返ってくればOK。
アクセス制限確認
許可ディレクトリ外にアクセスできないことを確認する
filesystem MCP ツールで /etc を一覧取得してみて。
失敗するはずなので、エラーだけ表示してください。
結果例:
エラー: パス "/etc" はサーバーのルート
"/ABSOLUTE/PATH/TO/mcp-poc" の外部にあるためアクセスできません
これで、
✅ 許可したディレクトリだけ見える
❌ それ以外はブロックされる
という スコープ制御が効いていることが確認できます。
まとめ
GitHub Copilot(Agent)から MCP の使用方法がわかった。
filesystem MCP で
- ファイル一覧取得
- 読み取り
- アクセス制限制限
が確認できた。
色々なMCPを試してみましょう!!
