DevinにMCPサーバーを作ってもらった
MCP流行ってますね!Googleが先日公開したA2Aのドキュメントに「Agent2Agent❤️MCP」というタイトルのページもありましたが、あれよあれよの間に現時点では標準規格の座を掴んだと言えるでしょう。
https://google.github.io/A2A/#/topics/a2a_and_mcp
今回はMCPサーバーをDevinに作ってもらうという話です。
作ってもらったMCPサーバーは、王道の自社ドキュメントにアクセスするためのMCPです。
MCPからアクセス可能にした肝心のドキュメント自体も下記スライドで発表した、Devinに自動更新させているFAQ・仕様ドキュメントです。
試してみて・書き始めてみてわかりましたが、今回の程度のMCPサーバーの開発には大きく困りポイントはなかったので中身は薄めです。
MCPサーバーの作り方
MCPサーバーの作り方自体は多くの記事があり、公式のクイックスタートもわかりやすいので今回は割愛します。
MCP実装のためのライブラリ、fastmcpも有名どころですね。
Devinでの開発
Devin自体についての説明は他記事・スライドに譲ります。
上手くいけば内製MCPサーバーの開発をDevinに託していく心づもりだったので、まずはPlaybookから作成します。
Building MCP with LLMs
まずは公式で公開されているBuilding MCP with LLMsを元にPlaybookを作成します。
タイトルの通り、LLMを使用してMCPサーバー・クライアントを実装する方法について解説しています。
MCPは公式でllms-full.txtも提供されているので、これらを活用しながらMCPクライアント・サーバーの開発を行うことが可能です。
公式SDKとfastmcpの2パターンで実装の検証を行いたいので、利用するライブラリだけ多少カスタムしましたが、基本的にはBuilding MCP with LLMsそのままのPlaybookを作成しました。
後はDevinに依頼をするだけです。
完成品
公式SDKでの実装の場合はインストールするMCP Python SDKのバージョンが古かったりと多少の修正指示は要しましたが、Githubリポジトリ内に格納したドキュメントにアクセスするためのMCPサーバーを実装することができました。
ちなみに私のお気持ちで申し訳ないですが、fastmcp×Pythonが圧倒的にスムーズに動くところまで仕上がりました。
公式SDKはかなりぐだぐだになり、だいぶ修正指示を加えた結果、なんとか動くところまでは到達しました。
APIコールをラップするようなMCPサーバーであれば、fastmcpを利用する方がイージーかなと思います。
途中から楽しくなって全文検索やらコンテンツフィルタリングやらも追加してもらいました。
Devinが作成したPR
Building MCP with LLMsに記述があるからか、テストクラスやInspectorまでちゃんと言及してくれてありがたいです。
公式でLLMで開発する手順やllms-full.txtが提供されているので、スムーズにDevinに任せることができました。
まとめ
あまりTipsを持ち帰れない内容で申し訳ないですが、DevinにMCPサーバーを実装してもらう話を書きました。
今回スムーズに開発できたのは、Devin自体の進化や公式SDK・fastmcpなどの存在もありますが、公式でLLMで開発する手順やllms-full.txtが提供されているのも大きいと考えています。
今後はMCPサーバーだけでなく、Building MCP with LLMsの公式手順やllm.txtをデフォルトで提供する企業も増えていくのではないでしょうか。
この記事を書きながら社内デザインシステムやSlack MCPサーバーの開発もお願いしたのですが、割と良い感じに開発してくれたので、内製MCPサーバーも捗りそうで嬉しいです。
次回以降はDevinにMCPを利用してもらう話を書けたらと思います。
今回は以上です!
Discussion