02

MCPでできること・できないこと

2025年7月13日
MCP機能制限事項活用事例セキュリティ

MCPで、AIはどこまで賢くなるのか

前回、MCPがAIと外部ツールを繋ぐ「共通言語」であることを学びました。では、その共通言語を使うことで、AIは具体的にどのような能力を手に入れるのでしょうか。また、そこにはどのような限界があるのでしょうか。

この記事では、MCPの具体的な能力 と、知っておくべき 制限事項 について詳しく解説します。MCPにできること、できないことを正しく理解することで、その可能性を最大限に引き出すための適切な期待値を持つことができます。

MCPで可能になること:AIの能力拡張

はじめに、MCPがAIに与える強力な能力を見ていきましょう。これらは、AIが閉じた世界から飛び出し、現実世界のタスクをこなすための重要な機能です。

1. ファイルシステムの操作

MCPを介して、AIはあなたの許可のもとで、ローカルのファイルシステムにアクセスできます。

  • ファイルの読み書き: read_filewrite_file といったツールをAIが呼び出し、指定したファイルの内容を読んだり、新しい内容を書き込んだりします。
  • ファイル検索: find_files のようなツールで、特定の条件に合うファイルをプロジェクト内から探し出すことができます。
  • ディレクトリ操作: list_directory を使って、ディレクトリ構造を把握することも可能です。

たとえば、「プロジェクト内の全 *.js ファイルから TODO というコメントを探してリストアップして」といった指示をAIが実行できるようになります。

2. データベースとの連携

MCPツールを使えば、AIはデータベースに接続し、データの読み書きを行えるようになります。

  • データ検索: 「先月の売上トップ10の商品を教えて」とAIに頼むと、MCPツールがデータベースにSQLクエリを発行し、結果を取得してくれます。
  • データ登録: 「新しいユーザー情報をデータベースに登録して」といった指示も可能です。

これにより、AIは単なる知識を持つだけでなく、組織が持つリアルタイムのデータに基づいた回答や操作を行えるようになります。

3. 外部APIとの連携

これが最も強力な機能の一つです。MCPを通じて、AIは外部のWebサービスやAPIと連携できます。

  • 情報収集: 「今日の天気は?」と聞けば、AIが天気予報APIを叩いて最新の情報を返します。
  • サービス操作: 「Googleカレンダーに明日の10時から会議の予定を追加して」と指示すれば、AIがGoogle Calendar APIを呼び出して予定を登録します。
  • 社内システム連携: 社内独自のAPIと連携させれば、「経費申請システムにこの領収書の内容を登録して」といった業務の自動化も視野に入ります。

要するに、「ファイル操作、データベースアクセス、API連携という3つの強力な能力をAIに与えること」が、MCPで可能になることの核心です。

MCPの限界と考慮すべきこと

一方で、MCPは万能ではありません。安全かつ効果的に利用するために、その限界と制約を理解しておくことが重要です。

1. ユーザーの許可が絶対

MCPの設計思想の根幹には、ユーザーのコントロール があります。AIがツールを使おうとするたびに、基本的にはユーザーに対して「この操作を実行してもよろしいですか?」という許可を求めます。AIが勝手にファイルをごっそり削除したり、意図しない情報を外部に送信したりすることはありません。

これは安全性を高めるための重要な仕組みですが、完全な自動化を目指す上では制約にもなり得ます。

2. 長時間かかる処理は不向き

MCPの通信は、基本的にリクエストとレスポンスの同期的なやり取りです。そのため、完了までに何分もかかるような重い処理(大規模なデータ分析、動画のエンコードなど)を直接実行させるのには向いていません。

そのような場合は、処理を開始するキックコマンドだけをMCPで実行し、実際の処理はバックグラウンドで行う、といった設計の工夫が必要です。

3. 複雑なUI操作はできない

MCPは、あくまでプログラム的なインターフェース(API)を通じてツールを操作します。マウスを動かして画面上のボタンをクリックする、といったグラフィカルなUI操作を直接行うことはできません。

ウェブサイトの操作を自動化したい場合は、そのサイトが提供するAPIをMCP経由で利用するか、Puppeteerのようなブラウザ自動化ツールを操作するMCPツールを別途作成する必要があります。

4. セキュリティへの配慮は常に必要

MCPには安全のための仕組みが組み込まれていますが、最終的なセキュリティの責任はツール開発者と利用者にあります。たとえば、「任意のシェルコマンドを実行できるツール」を無防備に公開すれば、それは大きなセキュリティホールになり得ます。

どのような権限をAIに与えるのか、慎重に設計・選択することが求められます。

要するに、「ユーザーの許可が前提であり、長時間の処理やUI操作は苦手。そして、ツールの安全性は開発者が担保する必要があること」が主な制約です。

まとめ

今回は、MCPが提供する能力とその限界について詳しく見てきました。

  • できること: ファイル操作、データベース連携、外部API連携を通じて、AIの能力を現実世界に拡張できる。
  • できないこと(制約): ユーザーの許可が常に必要で、長時間の処理やGUI操作は不得意。セキュリティは利用者側の責任。

MCPは、AIに強力な力を与えますが、それは魔法の杖ではありません。これらの特性を正しく理解し、得意なことを任せ、苦手なことは他の方法と組み合わせることで、初めてその真価を発揮させることができるでしょう。

次回は、このMCPがどのような技術的な仕組みで動いているのか、「MCPの仕組み:サーバーとクライアント」について、その構造を少しだけ深く掘り下げていきます。