MCP は何を変えたか ―― AIに「手」を持たせるということ
目次
読むだけのAIから、環境に手を伸ばすAIへ。実際につないだ MCP が、開発の何を変えたか
しばらくの間、AI との開発は、ソースコードをコピペして返ってきたものを戻す手作業でした。AI は文章を読んで文章を返すだけで、実際の環境には指一本触れられない。だから現状はこちらが調べて教えるしかなく、返ってくる答えはいつも「たぶん、こうなっているはず」という推測の上に乗っていました。
その壁を崩したのが MCP です。MCP(Model Context Protocol)は、ひとことで言えば、AI に外部のツールや環境を触らせるための共通の「口」にあたる仕組みです。対応したツールをこの「口」につなぐと、AI は文章を返すだけでなく、データベースに問い合わせたり、ブラウザを操作したり、デプロイの状態を見にいったりできるようになる。実際につないでいるものを何点か挙げながら、何が変わったかを淡々とたどります。
第1章 ―― いまを、直接たしかめる
最初に効いたのは、現状把握でした。
Supabase MCP ―― データベースの現状照会。 それまで、いまテーブルがどうなっているかを知るには、変更の履歴(積み重なった差分)を頭から追うしかありませんでした。けれど差分は「過去に何をしたか」の記録であって、「いま現在どうなっているか」ではない。実際、その差分はいまや千本を超えていて、順に読んでも最新の姿は復元できない ―― というより、読むほどに「で、結局いまどうなっているのか」が分からなくなる。ここを Supabase の MCP がひっくり返しました。履歴から組み立てるのではなく、いまの定義やデータを直接照会して確かめられる。推測が事実に置き換わるぶん、思い込みから来る手戻りが減りました。
Context7 MCP ―― ライブラリの最新ドキュメント。 AI の知識は、学習した時点で止まっています。だから、すでに変わってしまった古い書き方のまま、それらしいコードを返してくることがある。Context7 をつなぐと、使っているライブラリの公式ドキュメントを、その場で最新の状態で引きにいける。「AI が覚えている古い API」ではなく「いまの正しい書き方」を土台にできるので、後から『その書き方はもう廃止されている』と気づいて書き直す、という遠回りが減りました。
第2章 ―― 実機で、回す
次に変わったのは、検証のしかたです。
コードを読むだけでは、画面が実際に動くのか、本番に正しく出ているのかは分かりません。「たぶん動く」と「動いている」のあいだには、いつも溝がある。その溝を、いくつかの MCP がまたがせてくれました。
Playwright(ブラウザ)MCP ―― 実機での操作。 AI 自身がブラウザを立ち上げて、ログインから一連の流れを実際に踏む。コード上は通っているのに、実機ではログイン直後にうまく遷移しない、といった実行時のずれは、文面をいくら読んでも見えません。触ってみて初めて分かる類のものです。
GitHub MCP ―― リポジトリの操作。 PR や Issue、コード横断の検索を AI 自身が扱えるようになり、変更を出す・見る・たどるが地続きになりました。(別系統の AI を突き合わせる二段レビューも、この土台の上で回しています。それ自体が長い話なので、追って個別の記事で。)
Vercel MCP ―― デプロイの確認。 「出したつもり」が曲者で、本番に正しく反映されているか、エラーを吐いていないかを、状態やログから直接たしかめられる。「出たはず」を「出ているのを見た」に変える一手です。
第3章 ―― 触れる、ということは、壊せる、ということ
ここまでは良い面ですが、正直に書いておきたいことがあります。
ひとつ、実際にやらかした例があります。プレビュー環境を作り直すだけのつもりで、再デプロイの操作を AI に任せたところ、それが本番の正規の公開先まで巻き取ってしまいました。結果、本番が一時的におかしくなっただけでなく、開発用の環境が本番側の設定を読みにいって、そちらも壊れた。「読むだけ」のAIなら絶対に起こらない、二重の事故です。便利さと危険は、同じ蛇口から出てくる ―― これは身をもって学びました。
だからこそ、何を読めて、何を書けるかの線引きが命綱になります。書き込みを禁じるガードは自動では付いてくれないので、手順そのもので縛る。たとえば、本番データベースへの問い合わせは参照(読み取り)だけに限ると決めて、運用で守る。秘密情報(トークンや鍵)は AI に渡さず、環境の外に置いたままにする。
そして気づけば、既製の MCP をつなぐだけでなく、自分たちのプロダクトを操作する MCP まで自前で作るようになっていました。踏み込めば踏み込むほどできることは増え、同じだけ、気をつけることも増えていきます。
手を持たせる、けれど手綱は握る
MCP がもたらしたのは、AI が「読んで答える」存在から「環境に手を伸ばす」存在へ変わったことです。いまを直接たしかめ、実機で動きを見て、推測由来の手戻りが減りました。同時に、触れるからこそ事故も起こりうる ―― だから手綱、つまり権限の線引きと運用の手順は、人間が握り続けます。任せられることが増えても、任せきりにはしない。この1年で学んだ線引きは、だいたいそこに落ち着きました。
このスタックを1年かけてどう組み替えてきたかは マイクロSaaSの技術スタックは、1年でこう変わった に書きました。開発まわりの他の記事は dev カテゴリ にまとめています。
そうして手探りで作り続けているマイクロSaaS が、PentaTrail です。外から見える攻撃面を AI で継続的に把握する、CTEM のサービスです。もしよければ、あなたの会社の「外から見える攻撃面」を、一度のぞいてみてください。
