mcp-sympy について
mcp-sympyは、SymPyの数式処理機能をMCPクライアントに提供するMCPサーバーです。代数、微積分、方程式の解法、行列などの演算に対応します。
主な機能
- 01数式表現の操作
- 02微分、積分、極限、級数
- 03方程式と連立方程式の解法
- 04行列演算と固有値
- 05数論、集合、論理演算
- 06LaTeX、MathML、Python形式での出力
活用シーン
- 01数式表現の簡約や因数分解
- 02方程式や微分方程式の解法
- 03導関数、積分、極限の計算
MCP 対応
SymPyの機能をツールとしてMCPクライアントに公開し、記号代数、微積分、解法、行列、数論、出力形式の変換に対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
171掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| names | string | はい | カンマ区切りのシンボル名(例:"x, y, z") |
詳細
mcp-sympy
SymPy の記号数学機能を公開する MCP サーバー
インストール
pip install mcp-sympy
MCP サーバー
mcp-name: io.github.daedalus/mcp-sympy
使用方法
MCP サーバーとして
MCP クライアントで設定します:
{
"mcpServers": {
"mcp-sympy": {
"command": "mcp-sympy",
"env": {}
}
}
}
Python API
from mcp_sympy import tools
# Simplify expressions
result = tools.sympy_simplify("sin(x)**2 + cos(x)**2")
print(result) # "1"
# Solve equations
result = tools.sympy_solve("x**2 - 4", "x")
print(result) # "[2, -2]"
# Differentiate
result = tools.sympy_diff("x**2", "x")
print(result) # "2*x"
# Integrate
result = tools.sympy_integrate("x**2", "x")
print(result) # "x**3/3"
# Create matrices
result = tools.sympy_matrix("1,2; 3,4")
print(result) # "Matrix([[1, 2], [3, 4]])"
# Number theory
result = tools.sympy_isprime("7")
print(result) # "True"
利用可能なツール
MCP サーバーでは、次のような包括的な SymPy 機能を利用できます:
- 記号式:symbols、sympify、simplify、expand、factor
- 微積分:diff、integrate、limit、series、Derivative、Integral
- 方程式の求解:solve、solveset、nsolve、diophantine、dsolve
- 行列:行列演算、逆行列、行列式、固有値
- 三角関数:sin、cos、tan、およびそれらの逆関数
- 特殊関数:gamma、zeta、erf、fibonacci など
- 数論:isprime、prime、gcd、lcm、totient
- 集合:FiniteSet、Interval、Union、Intersection
- 論理:And、Or、Not、Xor
- 出力:LaTeX、MathML、Python コード
開発
git clone https://github.com/daedalus/mcp-sympy.git
cd mcp-sympy
pip install -e ".[test]"
# run tests
pytest
# format
ruff format src/ tests/
# lint
ruff check src/ tests/
# type check
mypy src/
ライセンス
MIT License — LICENSE ファイルを参照してください。
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。