mcpField
U
Ultimath Mcp

Ultimath Mcp

ローカル
ultimath.ai科学・教育09 週間前に更新

Ultimath Mcp について

Ultimath MCPは、8つの独立したエンジンで数式を計算し、結果と各エンジンの誤差保証を並べて返します。エンジン間の不一致も含め、数値の信頼性を評価したい人向けです。

主な機能

  1. 018つのエンジンで数式を計算
  2. 02結果と誤差保証を比較
  3. 03厳密な記号形式を返す
  4. 04カテゴリ別に関数を一覧表示
  5. 05算術・三角関数・複素数式に対応

活用シーン

  1. 01数値結果の信頼性を確認
  2. 02計算エンジン間の精度を比較
  3. 03計算前に関数一覧を確認

MCP 対応

8つのエンジンで式を実行する`evaluate`ツールと、`list_functions`ツールをMCPクライアントに提供します。利用にはUltimath APIキーが必要です。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"ultimath": {
"command": "npx",
"args": [
"-y",
"ultimath-mcp"
],
"env": {
"ULTIMATH_API_KEY": "<ULTIMATH_API_KEY>"
}
}
}
}
起動コマンドnpx -y ultimath-mcp
設定が必要な環境変数
ULTIMATH_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmultimath-mcp

ツール

2

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
expressionstringはい数学式。例:'0.1 + 0.2'、'sin(pi/4)'、'sqrt(2)^2 - 2'、'2*pi'、'2*(3+4)'、'factorial(10)'
precisionintegerいいえ精度の小数桁数(デフォルトは 50)。無料ベータ版では上限が 50 で、それを超える値はサーバー側で拒否されます。
formatenumいいえ出力形式(デフォルトは 'fixed')fixed | scientific | auto

詳細

Ultimath MCP

数値の幻覚を止めましょう。 すべての数式を、8つの独立したエンジンで並行して処理するMCP サーバーです。各エンジンは、正確な記号演算、ボール演算、区間演算、3種類の異なる任意精度浮動小数点演算、遅延記号演算、IEEE 754演算をそれぞれ独自の失敗モードで実行し、8つの結果を並べて返します。結果が食い違えば、その答えの数値的な信頼性が低いことがわかります。

エンジン処理内容
正確な記号演算正確な演算:近似ではなく、値を確定します
多倍長演算ボール演算。厳密な半径を保持します
区間演算厳密な下限と上限(保証された包含範囲)
二進浮動小数点演算任意精度の二進浮動小数点数。内部でGMPを使用しません
PARI/GPGMPなしでビルド:独自の整数演算カーネルと超越関数カーネルを使用します
NTL RR正確な整数仮数 × 2^e。丸めるのは演算時のみです
遅延記号演算評価前に式を書き換えます。相殺が起きても丸められません
IEEE-754倍精度標準的なハードウェア浮動小数点演算

各エンジンが保証する内容

8つの数値を読むだけでは、答えの半分にすぎません。各エンジンは、自身がどの程度の正しさを保証するかも示します。この3つの答えは、互いに同じ尺度で表せるものではありません。

フィールドエンジンが示す内容
"exact": true値そのものを保持しています。表示値はその切り捨て値です。追加で求める桁はすべて、より近い近似値ではなく、その数の桁です。
"digits": Nエンジン自身の誤差境界により、有効数字の先頭N桁が保証されています。0も正当な答えです。値に壊滅的な桁落ちが起きた場合は、その結果になります。
どちらでもない誤差境界を持ちません。要求された桁数だけ表示しましたが、そのどの桁についても何も保証できません。

最後の行は0ではありません。また、それこそがほかのエンジンが存在する理由です。8つのうち5つは、最初から保証を目的に設計されています。

exp(pi*sqrt(163)) - 262537412640768744では、あるエンジンは63桁を出力し、そのうち34桁が正しいものの、それについて何も保証しません。別の2つのエンジンは33桁を証明してそこで止まります。さらに1つは値を正確に保持します。8つの数値を読むだけでは、どれがどれなのかわかりません。

あるエンジンが別のエンジンについて評価することはありません。それぞれの記述は、そのエンジン自身についてのものです。

正確なエンジン

calciumは桁を比較するのではなく等式を判定し、ほかのエンジンが近づくことしかできない極にも到達します(tan(pi/2)はuinfになります)。また、表示された桁が単なる切り捨て値である場合は、閉形式も返します。sqrt(2)+1なら、通常の形式とLaTeX形式でAdd(Sqrt(2), 1)が返され、acosh(0.5)ならDiv(Mul(NumberI, Pi), 3)が返されます。これは、値が格納されている体の要素ではなく、名前の付いた値です。

閉形式の取得はHTTP APIではオプトイン方式です("closed_form": true)。閉形式の証明には、桁を読むよりも多くの処理が必要だからです。このクライアントは常に閉形式を要求します。正確な値を引用することが、この出力スキーマの約束だからです。

ツール

  • evaluate — 8つすべてのエンジンで式を評価し、結果を比較します。 算術演算、三角関数(sin、cos、tan)、指数・対数関数(exp、ln、log)、根とべき乗(sqrt、x^y)、階乗、複素数(3+2i)、代替基数(0xFF、0b1010)、定数(pi、e、黄金比PHI)に対応しています。
  • list_functions — エンジンが公開するすべての関数を一覧表示します (名前、引数の数、カテゴリ、説明)。カテゴリで絞り込むこともできます。

比較の意味はエンジンによって異なります。包含範囲を求めるエンジンでは、!=、<、>が真になるのは証明された場合のみです。==、<=、>=は、否定されない限り真になります。この場合、==が真でも等しいことの証明にはなりません。等しいかどうかを正確に判定するのはcalciumです。一方、!=が真なら、異なることの証明になります。

乗算は明示的に記述してください。2*pi、2*sin(x)、(a+b)*(c+d)のように書きます。隣接していても積にはなりません(2piはエラーです)。式は純粋な数学式であり、型キャストやコンストラクターは使用できません。複素数は1+2iのように書いてください。

セットアップ

  1. https://ultimath.ai で無料の API キーを取得します。
  2. MCP クライアントの設定にサーバーを追加します(Claude Desktop の例):
{
  "mcpServers": {
    "ultimath": {
      "command": "npx",
      "args": ["-y", "ultimath-mcp"],
      "env": {
        "ULTIMATH_API_KEY": "your_api_key_here"
      }
    }
  }
}

これで完了です。npx が必要に応じてサーバーを取得して実行します。

要件

  • Node.js ≥ 18
  • Ultimath API キー(ULTIMATH_API_KEY)

リンク

内部の仕組み

Ultimath のエンジンは、FLINT/Arb、Calcium、GMP/MPFR、MPFI を基盤としています。クレジットの全リストは https://ultimath.ai/credits をご覧ください。

プライバシー

Ultimath はサービスの運用とセキュリティ確保のため、API キーのハッシュと基本的な利用状況の指標のみを保存します。式は評価されますが、トレーニング用に保持されることはありません。ポリシー全文:https://ultimath.ai/privacy/

ライセンス

MIT

コメント

MCP は初めてですか?

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

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