mcpField
M
MCP Calculator Server

MCP Calculator Server

ローカル
github.com/yinebebt科学・教育03 日前に更新

MCP Calculator Server について

MCP Calculator Serverは、公式go-sdkで構築された数学計算用のMCP サーバーです。計算ツールや数学リソースを必要とするMCPクライアント向けに、数学のプロンプト、定数、乱数生成も提供します。

主な機能

  1. 01演算子の優先順位、括弧、科学表記に対応
  2. 02確率分布を使った乱数生成
  3. 03数学定数のリソース
  4. 04問題生成と解説のプロンプト
  5. 05引数補完とクライアントへのログ通知

活用シーン

  1. 01括弧を含む数式の計算
  2. 02範囲を指定した乱数の生成
  3. 03よく使う数学定数の参照
  4. 04数学問題の作成や計算手順の説明

MCP 対応

MCP サーバーとして、`calculate`と`random_number`のツール、数学定数とサーバー情報のリソース、数学問題と計算解説のプロンプトを公開します。stdioとstreamable-httpのトランスポートに対応しています。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP Calculator Server

堅牢な数学演算機能を提供する、Model Context Protocol(MCP)サーバーです。公式の go-sdk を使用して構築されています。

機能

ツール
  • calculate:適切な演算子の優先順位、括弧への対応、科学表記法による数学演算
  • random_number:さまざまな確率分布を使用して、指定された範囲内の乱数を生成します(分布が指定されていない場合は、エリシテーションを使用します)

どちらのツールも、ツールアノテーション(読み取り専用、閉世界のヒント)、タイトル、構造化出力スキーマを宣言します。

リソース
  • math://constants:JSON 形式の数学定数(π、e、φ、√2、ln2、ln10)
  • math://constants/{name}:リソーステンプレート — 名前で指定する単一の定数。例:math://constants/pi
  • server://info:サーバー情報と機能の概要
プロンプト
  • math_problem:難易度とトピックを設定できる数学の文章題を生成します
  • explain_calculation:数学式を段階的に説明します
プロトコル機能
  • 補完:プロンプト引数(difficulty、topic)とリソーステンプレート内の定数名の引数補完
  • エリシテーション:random_number は、分布が指定されていない場合に、使用する分布をクライアントに尋ねます
  • ログ記録:ツールのアクティビティは、stderr に加えて MCP のログメッセージとしてクライアントに転送されます
  • アイコンとメタデータ:サーバーとツールのアイコン、タイトル、ウェブサイト URL、指示
トランスポートモード
  • stdio:ローカルクライアント(Cursor、Claude Desktop、MCP Inspector)向けです。特別な理由がなければ、こちらを使用してください。
  • streamable-http:信頼できるネットワークでのみ使用してください。すべてのインターフェースにバインドされ、認証も Origin チェックもありません。認証(および Origin)を強制するリバースプロキシの背後に配置するか、外部に公開しないでください。

デフォルト:

  • トランスポート:TRANSPORT が未設定の場合は streamable-http(デモに便利ですが、本番環境向けのデフォルトではありません)
  • ポート:8080(PORT)

使い捨てのデモ以外で使用する場合は、TRANSPORT=stdio を実行するか、HTTP の前段で TLS と認証を終端してください。

インストール

Linux、macOS、Windows(amd64/arm64)向けのビルド済みバイナリは、各 GitHub リリース に添付されています。

または、Go を使用してインストールします。

go install github.com/yinebebt/mcp-calculator-server@latest

使用方法

# Run with stdio
TRANSPORT=stdio mcp-calculator-server

# Run with HTTP (serves MCP at :8080/mcp, health check at /health)
mcp-calculator-server

# Test
go test ./...
MCP クライアントの設定

MCP Client でテストする場合:

{
  "command": "/path/to/mcp-calculator-server",
  "env": {
    "TRANSPORT": "stdio"
  }
}

数学機能

  • 演算子の優先順位:2+3*4 = 14
  • 括弧:(2+3)*4 = 20
  • 科学表記法:1e2 = 100
  • エラー検出:ゼロ除算、無効な構文、対応しない括弧、有限でない結果(NaN/Inf)

リリース

リリースは、GitHub Actions を介して GoReleaser でビルドされます。vX.Y.Z タグをプッシュすると、linux/darwin/windows × amd64/arm64 向けにクロスコンパイルされ、アーカイブとチェックサムが GitHub リリースに添付されます。

コメント

MCP は初めてですか?

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

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