mcp_calculator
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| evaluateA | When: ordinary infix maths (real/complex), trig, powers, eng suffixes, angle suffixes, polar ∠. Not for matrices, stats lists, BASE-N, TVM, or unit conversion tables. Params: expression (required); angle_mode=rad|deg|grad (default rad); complex_form=rectangular|polar; variables={name:float}; eng_symbols=bool. Example: expression="sin(30°)", angle_mode="rad"; or "500k+10M"; or "2∠90" with angle_mode="deg". |
| list_operationsA | When: unknown function/operator name after evaluate unknown_token, or exploring arity. Params: none. Example: call with no args → operations[{name,arity,description,angle_sensitive}]. |
| list_constantsA | When: need CODATA/math constant names (pi, e, qe, …) usable in evaluate. Params: none. Example: call with no args → constants[{name,value,unit,…}]. |
| list_unit_conversionsA | When: before convert_unit, or unknown conversion_id / unit pair. Params: none. Example: call with no args → conversions[{id,from,to,…}]. |
| matrix_opA | When: matrix/vector algebra (not infix evaluate). Params: op=add|sub|mul|transpose|det|inv|identity|ref|rref|eigen|dot|cross|norm|angle|unit; matrices=[A] or [A,B]; vector=[…] for norm/unit; n for identity; angle_mode for angle. Example: op="det", matrices=[[[1,2],[3,4]]]. |
| stats_1varA | When: one-variable summary stats, or STAT Norm Dist t/P/Q/R from a data list. Params: data (required); optional freq (same length); optional norm_x → adds t,P,Q,R (t=(x−mean)/σ_pop; P:−∞→t, Q:0→t, R:t→+∞). Example: data=[1,2,3,4,5], norm_x=4. |
| stats_2varA | When: paired (x,y) stats and regression — not single-list stats_1var. Params: x,y equal length; model=linear|quadratic|logarithmic|exp|abexp|power|inverse| cubic|quartic|logistic|medmed (default linear); optional freq, predict_y_at, predict_x_at. Example: x=[1,2,3], y=[2,4,6], model="linear". |
| solve_linearA | When: square linear system Ax=b (not polynomial roots or f(x)=0). Params: either A (n×n) and b (len n), or coefficients as augmented n×(n+1). Max n=32. Example: A=[[2,1],[1,3]], b=[1,2]. |
| solve_rootA | When: numeric root of infix f(x)=0 (prefer over guessing). Params: expression in x; prefer bracket=[a,b]; else guess; angle_mode for trig in f. Example: expression="x^2-2", bracket=[0,2]. |
| solve_polynomialA | When: roots of a polynomial a0+…+an x^n (degree 1–4), not general f(x). Params: coefficients=[a0,...,an]; allow_complex=bool (default true). Example: coefficients=[-2,0,1] for x^2-2=0. |
| base_convertA | When: convert an integer string between bases 2/8/10/16 (32-bit two's complement fixed). Params: value (digit string, no leading '-'; use FFFFFFFF-style for negatives); from_base, to_base in {2,8,10,16}. Example: value="FF", from_base=16, to_base=10. |
| base_arithA | When: integer/bitwise arithmetic in a chosen base (32-bit), not floating evaluate. Params: op=add|sub|mul|div|and|or|xor|xnor|not|neg; a; b (except not/neg); base=2|8|10|16. Example: op="add", a="A", b="5", base=16. |
| differentiateA | When: numerical derivative df/dx of infix f(x) at a point (not symbolic). Params: expression in x; at; angle_mode; optional h step. Example: expression="x^3", at=2. |
| integrateA | When: numerical definite integral of infix f(x) on [lower, upper]. Params: expression in x; lower; upper; angle_mode; tol (default 1e-10). Example: expression="x^2", lower=0, upper=1. |
| summationA | When: discrete sum Σ f(x) for integer x from start to end inclusive. Params: expression in x; start; end; angle_mode. Example: expression="x+1", start=1, end=5. |
| productB | When: discrete product Π f(x) for integer x from start to end inclusive. Params: expression in x; start; end; angle_mode. Example: expression="x", start=1, end=4 → 24. |
| factorizeA | When: prime factorization of a positive integer (not evaluate fact()). Params: n (positive integer, ≤10 digits). Example: n=12 → factors with multiplicity. |
| fminA | When: approximate minimum of infix f(x) on a closed interval. Params: expression in x; lower; upper; angle_mode; tol. Example: expression="(x-1)^2", lower=0, upper=2. |
| fmaxA | When: approximate maximum of infix f(x) on a closed interval. Params: expression in x; lower; upper; angle_mode; tol. Example: expression="-(x-1)^2", lower=0, upper=2. |
| polA | When: convert rectangular (x,y) to polar (r,θ). Prefer over manual atan2 for this mode. Params: x, y; angle_mode for θ (default deg). Example: x=2, y=2, angle_mode="deg" → r≈2.828, θ=45. |
| recA | When: convert polar (r,θ) to rectangular (x,y). Params: r, theta; angle_mode for θ (default deg). Example: r=2, theta=90, angle_mode="deg". |
| dms_to_decimalA | When: sexagesimal ° ′ ″ → decimal degrees. Params: degrees; optional minutes, seconds (default 0). Example: degrees=10, minutes=30, seconds=0 → 10.5. |
| decimal_to_dmsB | When: decimal degrees → ° ′ ″ components. Params: decimal. Example: decimal=10.5 → degrees=10, minutes=30, seconds=0. |
| convert_unitA | When: convert between listed measurement units (not free-form dimensional analysis). Params: value; either conversion_id OR from_unit+to_unit. Call list_unit_conversions first if unsure. Example: value=1, conversion_id="mile_to_km". |
| distributionA | When: probability densities/CDFs/inverses (DISTR), or norm_p/q/r for standardized t. For Norm Dist from a data list use stats_1var(norm_x=…) instead. Params: type selects screen — pass every variable that type needs. Types: normal_pd (x,sigma,mu), normal_cd (lower,upper,sigma,mu), inverse_normal (area,sigma,mu,tail), binomial_pd/cd (x,n,p), inverse_binomial, poisson_*, geometric_*, t_pd/cd, chi2_pd/cd, f_pd/cd, norm_p/q/r (x=t). Example: type="normal_pd", x=36, sigma=2, mu=35. |
| eng_formatA | When: show a real number in engineering form (significand + SI symbol). Prefer evaluate eng_symbols for expression results. Params: value. Example: value=12345 → display "12.345k". |
| eng_shiftA | When: ENG / ENG← style shift: multiply by 1000^steps (also engshift(x,n) in evaluate). Params: value; steps (default 1; negative shifts down). Example: value=1234, steps=1 → 1.234e6-style shift. |
| stats_testA | When: STAT hypothesis tests (not descriptive stats_1var / regression stats_2var). Params: type=z_test|t_test|2_samp_t_test|1_prop_z_test|2_prop_z_test|anova|linreg_ttest; pass editor fields for that type (data/sigma/mu0, x/n/p0, lists for ANOVA, …); alternative; pooled for two-sample. Example: type="t_test", data=[1,2,3], mu0=0. |
| list_opA | When: LIST utilities (sequence, cumsum, sort, ΔList) — not stats summaries. Params: op=seq|cumsum|sort_a|sort_d|delta; seq needs expression,start,end[,step]; others need data; angle_mode for seq expressions. Example: op="cumsum", data=[1,2,3]; or op="seq", expression="2*x", start=1, end=3. |
| finance_tvmA | When: time-value-of-money (loan/annuity) — solve one of N,I,PV,PMT,FV. Params: solve_for=N|I|PV|PMT|FV; provide the other four; I is annual %; P_Y payments/year (default 1); C_Y compounds/year (default=P_Y); begin=True for BGN. Signs: outflow negative / inflow positive, kept consistent. Example: solve_for="PMT", N=12, I=6, PV=-1000, FV=0. |
| tableB | When: generate f(x) [and optional g(x)] values from start to end by step. Params: expression in x; start; end; step; optional expression2; angle_mode. Example: expression="2*x", start=0, end=2, step=1, expression2="x^2". |
| solve_inequalityA | When: solve polynomial inequality a0+…+an x^n (degree 1–4). Params: coefficients=[a0,...,an]; relation=">"|">="|"<"|"<=". Example: coefficients=[-1,1], relation=">" for x-1>0. |
| solve_ratioA | When: proportion a:b = c:d with one unknown. Params: three of a,b,c,d known; solve_for=a|b|c|d|x (x = the single missing slot). Example: a=2, b=3, d=6, solve_for="c". |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mAd-DaWg/mcp_calculator'
If you have feedback or need assistance with the MCP directory API, please join our Discord server