MCP Server について
カスタム MCP サーバーを開発するための TypeScript テンプレートです。stdio と SSE に対応し、プロンプト、リソース、ツールの例を備えています。
主な機能
- 01stdio と SSE のトランスポート対応
- 02プロンプト、リソース、ツールの例
- 03整理されたプロジェクト構成
- 04FastMCP による開発
活用シーン
- 01TypeScript 製 MCP サーバーの作成
- 02サーバーへのプロンプト、リソース、ツールの追加
MCP 対応
stdio または SSE を介して、MCP クライアントにプロンプト、リソース、ツールを提供するサーバーを作成できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー
stdio(標準入力/出力)と SSE(サーバー送信イベント)の両方のトランスポートに対応した、Model Context Protocol(MCP)サーバーを作成するための TypeScript テンプレートリポジトリです。このテンプレートは、整理された構成と基本的な機能を備えた、MCP サーバー構築のための確かな基盤を提供します。
機能
- 🚀 型安全性と優れた開発者エクスペリエンスを実現する TypeScript 製
- 🔄 stdio と SSE の両方のトランスポートに対応
- 📦 プロンプト、リソース、ツールのサンプルを収録
- ⚡ 迅速な開発のために FastMCP を使用
前提条件
- Node.js
- npm または yarn パッケージマネージャー
はじめに
-
このテンプレートからリポジトリを作成する
Use this template > Create a new repository をクリックします

-
リポジトリをクローンする
git clone https://github.com/iamtraction/node-mcp-server.git cd node-mcp-server -
依存関係をインストールする
npm install -
開発サーバーを起動する
npm run dev
プロジェクト構成
src/
├── prompts/ # MCP prompts
├── resources/ # MCP resources
├── tools/ # MCP tools
└── server.ts # Main server file
利用可能なスクリプト
npm run dev- ホットリロードで開発サーバーを起動npm run build- TypeScript コードをビルドnpm run start- 本番サーバーを起動npm run watch- TypeScript の変更を監視npm run lint- ESLint でコードの品質とスタイルをチェック
新機能の追加
プロンプトの追加
src/prompts/ に新しいファイルを作成し、server.ts に追加します。MCP プロンプトの詳細をご覧ください。
import myPrompt from "./prompts/my-prompt.js";
server.addPrompt(myPrompt);
リソースの追加
src/resources/ に新しいファイルを作成し、server.ts に追加します。MCP リソースの詳細をご覧ください。
import myResource from "./resources/my-resource.js";
server.addResource(myResource);
ツールの追加
src/tools/ に新しいファイルを作成し、server.ts に追加します。MCP ツールの詳細をご覧ください。
import myTool from "./tools/my-tool.js";
server.addTool(myTool);
設定
サーバーは server.ts で設定できます。デフォルトでは、SSE トランスポートを使用してポート 3000 で実行されます。server.start() のオプションで設定を変更できます。
server.start({
transportType: "httpStream", // or "stdio"
httpStream: {
port: 3000,
},
});
トランスポートの詳細をご覧ください。
MCP サーバーの使用方法
stdio サーバーのセットアップ
{
"mcpServers": {
"example-server": {
"command": "node",
"args": [ "dist/server.js" ]
}
}
}
SSE サーバーのセットアップ
{
"mcpServers": {
"example-server": {
"url": "https://example-server.com/sse"
}
}
}
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
ショーケース
このテンプレートを使って何かすばらしいものを作りましたか?ショーケースに追加してください!
プロジェクトをショーケースに追加するには:
- この README.md ファイルを編集します
- 次の形式で、上記のリストにプロジェクトを追加します:
- [Your Project Name](link-to-your-project) - Brief description- プルリクエストを送信します
ライセンス
このプロジェクトは MIT ライセンスの下で公開されています。詳細は LICENSE ファイルをご覧ください。
謝辞
- Model Context Protocol - プロトコル仕様
- MCP TypeScript SDK - 公式 TypeScript SDK
- FastMCP - 基盤となる MCP フレームワーク
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。