mcpField
M
MCP Calculator

MCP Calculator

ローカル
github.com/akhidasTech開発ツール184 週間前に更新

MCP Calculator について

MCP Calculatorは、計算と挨拶の機能を備えたGo製のMCPサーバー例です。JSON-RPC 2.0、ツールとリソースの処理、機能ネゴシエーションを実装し、サーバー開発の例として使えます。

主な機能

  1. 01計算と挨拶の機能
  2. 02JSON-RPC 2.0通信
  3. 03ツールの登録と実行
  4. 04リソースアクセス処理
  5. 05機能ネゴシエーションとエラー処理

活用シーン

  1. 01Go製MCPサーバー実装のデモ
  2. 02JSON-RPC経由での計算・挨拶機能の呼び出し

MCP 対応

MCPクライアントに計算と挨拶の機能を提供し、ツール実行、リソースアクセス、機能ネゴシエーションに対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Calculator

計算機能と挨拶機能を備えた、Model Context Protocol(MCP)サーバーの Go 実装です。この実装は、公式の MCP 仕様に準拠しています。

機能

  • JSON-RPC 2.0 の完全な実装
  • MCP プロトコルのサポート
  • ツールの登録と実行
  • リソースの処理
  • サーバーの機能ネゴシエーション
  • 仕様に準拠したエラー処理

プロジェクト構成

mcpcalculator/
├── mcp/
│   └── protocol/
│       ├── types.go    # Protocol types and structures
│       ├── server.go   # MCP server implementation
│       └── client.go   # MCP client implementation
├── main.go            # Example usage
├── go.mod             # Go module file
└── README.md          # Documentation

要件

  • Go 1.21 以降

インストール

git clone https://github.com/akhidasTech/mcpcalculator.git
cd mcpcalculator
go mod download

使い方

サーバーの起動
go run main.go

サーバーはポート 8080 で起動します。

リクエストの送信

ツールとリソースは、JSON-RPC 2.0 仕様に従います。

加算ツール
curl -X POST http://localhost:8080 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "add",
    "params": {"a": 5, "b": 3}
  }'
挨拶リソース
curl -X POST http://localhost:8080 \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "greeting",
    "params": {"name": "John"}
  }'
レスポンス形式

すべてのレスポンスは、JSON-RPC 2.0 形式に従います。

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": <result_value>
}

エラーの場合は、次の形式になります。

{
    "jsonrpc": "2.0",
    "id": 1,
    "error": {
        "code": <error_code>,
        "message": "error message",
        "data": <additional_data>
    }
}

プロトコルの実装

この実装は、Model Context Protocol の仕様に準拠しています。

  1. JSON-RPC 2.0:すべての通信で JSON-RPC 2.0 プロトコルを使用します
  2. 機能:初期化時にサーバーの機能を通知します
  3. ツール:ツールの登録および実行プロトコルを実装します
  4. リソース:リソースへのアクセスプロトコルを実装します
  5. エラー処理:標準のエラーコードと形式を使用します

セキュリティ

この実装は、MCP のセキュリティガイドラインに従います。

  1. ユーザーの同意:ツールとリソースの使用には、明示的な呼び出しが必要です
  2. データのプライバシー:明示的なリクエストがない限り、データは共有されません
  3. ツールの安全性:ツールの実行は制御および検証されます
  4. エラー処理:適切にエラーを報告し、処理します

コントリビューション

コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。