MCPを自分で作る方法:Poachang Lab MCPの例で学ぶAI連携の基礎

MCPの基本概念から実際の作成方法まで、Poachang Lab MCPを例に分かりやすく解説。CursorとAIエージェントの連携方法も詳しく紹介します。

公開日: 2025年9月17日
読了時間: 6
著者: ぽちょ研究所
読了時間: 6

MCPを自分で作る方法:Poachang Lab MCPの例

🚀 はじめに

みなさん、今日は「MCPを自分で作る」というテーマで学んでいきましょう。

「MCPってなに?」というところから始めて、実際にCursor上でファイルを準備して、AI Agent(Claude Sonnet 4 や Codex on Cursor など)と連携させる流れを具体的にイメージできるように解説いたします。

動画や記事としても使えるように、3000〜5000文字程度で体系的にまとめましたので、このままNotebookLMに読み込んで動画化しても理解しやすい構成になっております。

💡 この記事で学べること
- MCPの基本概念と仕組み
- 自作MCPの作成手順
- CursorとAIエージェントとの連携方法
- 実践的なコード例とテスト方法

🔍 1. MCPとは何か?

📚 1-1. MCPの基本概念

MCPとは Model Context Protocol の略で、AIエージェントやツールがやり取りするための標準的なプロトコルです。

  • GitHub MCP - リポジトリの操作やIssue管理
  • AWS MCP - クラウドリソースの操作
  • Playwright MCP - ブラウザの自動操作
  • 既存の代表的なMCP:

    これらは「AIエージェントがGitHubにアクセスする」「AWSリソースを操作する」「ブラウザを自動操作する」といった機能を提供してくれます。

🎯 つまり、MCPは「AIに外部世界とつながる道具を与える仕組み」 といえるのです。

⚡ 1-2. MCPと普通のプログラムの違い

初心者の方がよく混乱されるのは「Node.jsで普通にプログラムを書くのと何が違うの?」という点です。

項目 普通のNode.jsアプリ MCP
実行方法 `node index.js`で直接実行 AIエージェントが呼び出し
対象ユーザー 人間が直接使用 AI専用の外部ツール
設計思想 人間の操作を前提 AIのためのドライバ

🛠️ 1-3. 既存MCPと自作MCPの違い

  • GitHubのリポジトリを見に行ったり、AWSのS3にアクセスできたりする便利なもの
  • 既存MCP:

  • 自分専用の「かゆいところに手が届く」機能を作成可能
  • 例:「マッシュルームの説明を生成して、X(旧Twitter)に自動投稿する」みたいな特化機能
  • 自分の趣味、研究、ビジネスに特化したオリジナルの道具になります
  • 自作MCP:


🌟 2. なぜMCPを自分で作るのか?

みなさんが「ただ使う側」から「作る側」に回ると、一気に世界が広がります。

🎮 自作MCPのメリット

  • エージェントを呼び出すだけで自動処理が実行される
  • 複雑な作業を一瞬で完了させることが可能
  • 1. AIを自分の手足にできる

  • 例:「AWSのログ監視」と「Slack通知」をつなげる自作MCP
  • 複数のサービスを連携させた独自ワークフローの構築
  • 2. 既存サービスを自分好みに組み替える

  • AIを使うだけでなく、内部構造の理解も深まる
  • 応用範囲が格段に広がる
  • 3. 学びとしてのメリット

📚 豆知識
昔のコンピュータ黎明期には「デバイスドライバ」を自作する文化がありました。MCPはそれに近く、現代の「AI用ドライバ」とも言えるのです。

📁 3. MCPを作るための基本ファイル

まず、MCPには3つの基本ファイルが必要です。

🗂️ 必要なファイル一覧

  • Node.jsプロジェクトとしてMCPを管理する定義ファイル
  • 依存パッケージやエントリーポイントを記載
  • 1. package.json

  • MCPのメタ情報(名前、バージョン、エンドポイントなど)を定義するファイル
  • 2. mcp.json

  • 実際の処理を書くコード
  • 「入力を受け取ってどう変換するか」「どこに出力するか」を記述
  • 3. エントリーファイル(例: index.js

🏗️ ディレクトリ構成の例

以下のようなディレクトリ構成にすると分かりやすいです。

pochanglab-mcp/
├── package.json     # Node.jsの定義ファイル
├── mcp.json         # MCPの定義ファイル  
└── index.js         # 処理を書くファイル
ポイント: シンプルな構成から始めて、必要に応じて機能を拡張していくのがおすすめです。

🍄 4. Poachang Lab MCPの例:マッシュルーム変換

ここでは「マッシュルーム変換MCP」を例に、実際のコード構成を見ていきましょう。

📦 package.json の例

json
{
  "name": "pochanglab-mcp",
  "version": "1.0.0",
  "main": "index.js",
  "dependencies": {
    "axios": "^1.6.0"
  }
}

⚙️ mcp.json の例

json
{
  "name": "pochanglab-mushroom-mcp",
  "version": "1.0.0",
  "description": "マッシュルームの意味を解釈してXに投稿するMCP",
  "entry": "index.js",
  "capabilities": ["transform", "post"]
}

💻 index.js の例

javascript
import axios from "axios";

export async function handleRequest(input) {
  if (input.includes("マッシュルーム")) {
    const explanation = "マッシュルームはシチューに入れると旨味が出ますが、丸焼きは香りが強く苦手な人もいます。しいたけと同じくキノコ類の一種です。";

    // X (Twitter) に投稿する(仮想例)
    await axios.post("https://api.x.com/post", {
      text: explanation
    });

    return { result: "投稿しました: " + explanation };
  } else {
    return { result: "特に変換はありません。" };
  }
}
🔧 解説: この例では、入力に「マッシュルーム」が含まれていると、説明文を生成してX(旧Twitter)に投稿する機能を実装しています。

🧪 5. ローカルでのテスト方法

いきなりAIエージェントと接続する前に、まずはローカルで動作確認を行いましょう。

🔍 基本テストコード

javascript
export async function handleRequest(input) {
  return { result: "あなたが入力したのは: " + input };
}

// テスト用
if (require.main === module) {
  const input = "マッシュルーム";
  handleRequest(input).then(res => console.log(res));
}

🚀 実行とテスト

これを保存して実行:

bash
node index.js

出力例:

{ result: 'あなたが入力したのは: マッシュルーム' }
重要: こうして基本的な動きを確認してから、MCPとして登録すると安心です。デバッグが容易になり、問題の早期発見につながります。

⚙️ 6. Cursorでのセットアップ

📂 1. プロジェクト用ディレクトリの作成

bash
mkdir pochanglab-mcp
cd pochanglab-mcp
npm init -y

📄 2. ファイルの配置

  • package.json
  • mcp.json
  • index.js
  • 上記で説明した以下のファイルを配置します:

🔧 3. Cursorでの設定

Cursorで mcp.json を読み込ませる設定を行います。

settings.json のMCP設定に以下を追加:

json
{
  "mcpServers": {
    "pochanglab-mushroom": {
      "command": "node",
      "args": ["index.js"],
      "env": {}
    }
  }
}

🤖 4. AIエージェントからの呼び出し

AI Agent(Claude Sonnet 4やCodex on Cursor)から呼び出します。

使用例:

MCP: pochanglab-mushroom
入力: マッシュルームとは?
🎯 結果: 先ほどの処理が実行され、Xに自動投稿まで行われます。

🚀 7. 応用の広がり

自作MCPの可能性は無限大です。以下のような応用例が考えられます。

💼 業務効率化

  • 社内Wiki自動参照MCP: 質問に対して社内Wikiから適切な回答を自動検索
  • レポート生成MCP: データを自動収集してレポートを作成

🎨 創作活動

  • ギターコード自動当てはめMCP: 歌詞に合うギターコードを自動提案
  • イラスト生成MCP: テーマに応じたイラストを自動生成

🔬 研究・分析用

  • 天気API連携MCP: 天気データを取得して分析に活用
  • 株価監視MCP: 株価の変動を監視してアラートを送信
🎯 まさに「AIエージェントをカスタマイズできる自由度」が、MCP自作の醍醐味です。

🎉 8. まとめ

みなさん、ここまででMCPのイメージが掴めたでしょうか。

🔑 重要なポイント

  • MCPはAIと外部世界をつなぐプロトコル
  • 普通のプログラムと違い「AIが使うことを前提」に作成
  • 必要なファイルは package.jsonmcp.jsonindex.js の3つ
  • まずローカルでテスト、その後Cursorに登録してAIエージェントと連携
  • Poachang Lab MCPのように、ちょっとユーモラスな機能から始めるのも良い

🌈 最後に

自作MCPは、学びとしても実用としても大きな力になります。

みなさんもぜひ、自分だけのMCP作りに挑戦してみてください。きっと新しい発見と可能性が待っているはずです。

💪 今日から始められる第一歩: まずは簡単な「Hello World」MCPから作ってみましょう!

関連記事

2025年10月30日

新たなコーディングフロンティア:CursorのComposerとエージェント速度の時代

2025年10月に発表されたCursor Composer 1とCursor 2.0は、AIコーディング支援の新時代を切り開きます。開発者の「フロー状態」を守る高速モデルと、マルチエージェントワークフローの徹底解説。

テクノロジー続きを読む
2025年10月30日

【2025年最新】PR自動生成はもう古い。AIが開発を「完了」させる時代へ

2025年5月にGitHubが発表した「Copilot Coding Agent」について解説。AIがPRを作るだけでなく、Issueを理解して完了まで進める新しい開発支援AIの全貌を紹介します。

テクノロジー続きを読む
2025年10月25日

Cursor最新プランと"本当にお得"な選び方(2025年版)

Cursorの最新料金プラン(Pro、Pro+、Ultra)を数式で徹底比較。月間使用量に応じた最適なプランの選び方と、どこからUltra一択になるかをわかりやすく解説します。

テクノロジー続きを読む
2025年10月10日

RAG(検索拡張生成)とは?生成AI・AIエージェント・MCPとの違いを完全解説

注目のAI技術「RAG(検索拡張生成)」を初心者向けに徹底解説。生成AI、AIエージェント、MCPとの違いや関連性、ChatGPTのウェブ検索との関係まで分かりやすく紹介します。

テクノロジー続きを読む
2025年10月10日

Devin(AI開発エージェント)完全解説 – 機能・料金・使い方の全て

AI開発エージェント「Devin」の2025年最新情報を完全解説。機能、料金体系(ACU課金)、使い方のコツ、向き不向きまで初心者にも分かりやすく紹介します。

テクノロジー続きを読む