Build your MCP Server using C# SDK について
C# SDKでMCPサーバーを作る方法を学ぶための.NETコンソールプロジェクトです。文字列のエコー、反転、長さ取得の3つのツールを備え、GitHub Copilot Chatからの呼び出し方も説明しています。
主な機能
- 01C# SDKのサーバー例
- 02エコー・反転・長さ取得ツール
- 03.NETコンソールアプリ
- 04属性によるツール公開
- 05VS Codeのサーバー設定
活用シーン
- 01C#でのMCPサーバー作成の学習
- 02GitHub Copilot Chatでの文字列ツールのテスト
MCP 対応
文字列処理を行う3つのメソッドをMCPツールとして公開します。サーバーを設定すると、AgentモードのGitHub Copilot Chatから呼び出せます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
C# SDK を使用して MCP サーバーを構築する
このリポジトリは、C# SDK を使用して独自の MCP サーバーを作成する方法を探るための教育目的のものです。
構築手順
これは、入力文字列をエコー、反転、長さの取得という 3 つのシンプルなメソッドを備えた MCP サーバーを構築する、シンプルな .NET コンソールアプリケーションです。このプロジェクトは、Model Context Protocol (MCP) 用 C# SDK の概要で解説されているサンプルに基づいています。
C# SDK を使用して MCP サーバーを構築するには、以下の手順に従ってください。
- .NET コンソールアプリケーションを作成します
- NuGet パッケージ Microsoft.Extensions.Hosting と ModelContextProtocol を追加します
- メソッドを MCP ツールとして公開するには、[McpServerToolType] 属性を付与し、LLM が呼び出すツールを判断できるよう、明確な説明を記述します
- プロジェクトをビルドします
- .vscode フォルダーに mcp.json を追加して、新しいサーバーを登録します。dotnet コマンドを実行するためのプロジェクトの場所を指定して、サーバーを追加します
- これでサーバーを実行します
- GH Copilot Chat ウィンドウを開き、エージェントモードで実行します
- アプリが実行中になったら、GH Copilot Chat ウィンドウのツールアイコンをクリックします
- これで 3 つのツールが表示されます
- 以下のように、GH Copilot Chat をクライアントとして使い、指定した文字列を反転するように依頼します。これにより MCP サーバーの reverse ツールが呼び出され、結果が返されます
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。