Equation.io

Create interactive 2D and 3D graphs with validated equations, shareable links, and PNG previews.

我该使用它吗

质量与安全性

B
描述质量
100%
模式完整度
100%
命名质量
87%
投毒风险
40%
权限匹配度
80%
协议合规性
100%

发现(6)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domain在 encode_graph_url 中
  • MEDIUMTool description contains URL to non-standard domain在 decode_graph_url 中
  • MEDIUMTool description contains URL to non-standard domain在 show_graph 中
  • LOWTool 'encode_graph_url' suggests web access but openWorldHint=false在 encode_graph_url 中
  • LOWTool 'decode_graph_url' suggests web access but openWorldHint=false在 decode_graph_url 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,431token 数(工具定义)
~2.7 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.12%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "equation": {
      "url": "https://equation.io/mcp"
    }
  }
}

远程端点

https://equation.io/mcpstreamable-http

它能做什么

工具清单

工具(3)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢encode_graph_url(equations)

Build an equation.io graph link, validating every row with the app's parser. Pass the COMPLETE graph in "equations": a flat array of strings, one equation or definition per string, in display order — when editing an existing graph (see decode_graph_url), include unchanged rows too. Rows can be: equations and inequalities in x,y (curves, regions; z makes it 3D), bare expressions (scalar fields; complex plots via w), points (rows report "draggable"), parametric tuples in u,v — and definitions: "a = 2" (a draggable slider), "f(x) = x^3 - a x", coordinate fields like "r = sqrt(x^2+y^2)" for polar. t animates. Also derivatives d/dx, integrals int[a..b] f dx, sums sum[n=1..N], domain()/conformal()/iter() for complex plots, rgb()/hsl()/oklch() color fields, y' = … slope fields, random variables "X ~ Normal(m, s)"/"P(0<X<2)"/"E(X^2)", and "view(x = -5..5, y = -2..2)"/"camera(theta, phi)" framing rows. That is a menu, not the syntax: before your first non-trivial graph, read the "syntax" MCP resource (also at https://equation.io/llms.txt). The result returns text and structured data only. "rows" gives each equation's validation result: status "ok" with its kind, or "error" with the parser message. The link is usable only once every row is "ok". Give users the share_url (it unfurls to a preview card in chat apps); url is the equivalent #-fragment form. "preview" and "preview_omits" describe the share link's simplified static preview (t = 0, 3D as wireframes), which draws less than the interactive app. No image is attached to the tool response.

输入模式

{
  "type": "object",
  "properties": {
    "equations": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Every equation in the graph, in display order. One equation or definition per string — do not join rows with \";\" (inside quoted text a \";\" is data, and kept)."
    }
  },
  "required": [
    "equations"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "valid": {
      "type": "boolean"
    },
    "url": {
      "type": "string",
      "description": "Graph URL using a #-fragment."
    },
    "share_url": {
      "type": "string",
      "description": "Shareable /g/ graph URL."
    },
    "preview": {
      "type": "string",
      "description": "Static preview availability and limitations."
    },
    "preview_omits": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "row": {
            "type": "string"
          },
          "why": {
            "type": "string"
          }
        },
        "required": [
          "row",
          "why"
        ],
        "additionalProperties": false
      }
    },
    "rows": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "ok"
                ]
              },
              "kind": {
                "type": "string"
              },
              "animated": {
                "type": "boolean"
              },
              "value": {
                "type": "string"
              },
              "note": {
                "type": "string"
              },
              "draggable": {
                "type": "boolean"
              }
            },
            "required": [
              "text",
              "status",
              "kind"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "error"
                ]
              },
              "error": {
                "type": "string"
              }
            },
            "required": [
              "text",
              "status",
              "error"
            ],
            "additionalProperties": false
          }
        ]
      }
    }
  },
  "required": [
    "valid",
    "url",
    "share_url",
    "preview",
    "rows"
  ],
  "additionalProperties": false
}
🟢decode_graph_url(url)

Decode an equation.io link (either the #-fragment form or the /g/ share form) into its list of equation rows, so you can edit them and build a new link with encode_graph_url. The rows use the equation.io syntax documented in the "syntax" MCP resource (also at https://equation.io/llms.txt).

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "An equation.io graph URL."
    }
  },
  "required": [
    "url"
  ]
}

输出模式

{
  "type": "object",
  "properties": {
    "equations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "equations"
  ],
  "additionalProperties": false
}
🟢show_graph(equations)

Display an interactive equation.io graph inside the conversation, with editable equations, sliders, pan/zoom, and 3D rotation. Use when the user asks to see or explore a graph. Pass the COMPLETE graph as "equations", one equation or definition per string, preserving unchanged rows when editing. For a slider use "a = 2" then "y = a sin(x)". For advanced syntax read the "syntax" resource (https://equation.io/llms.txt). Returns per-row validation and share links; a row with status "error" is not drawn until its text is corrected and the graph resubmitted. Use encode_graph_url for validation or link-only requests (including share-link preview notes). In clients without UI support, provide share_url.

输入模式

{
  "type": "object",
  "properties": {
    "equations": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Every equation in the graph, in display order. One equation or definition per string — do not join rows with \";\" (inside quoted text a \";\" is data, and kept)."
    }
  },
  "required": [
    "equations"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "valid": {
      "type": "boolean"
    },
    "url": {
      "type": "string",
      "description": "Graph URL using a #-fragment."
    },
    "share_url": {
      "type": "string",
      "description": "Shareable /g/ graph URL."
    },
    "rows": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "ok"
                ]
              },
              "kind": {
                "type": "string"
              },
              "animated": {
                "type": "boolean"
              },
              "value": {
                "type": "string"
              },
              "note": {
                "type": "string"
              },
              "draggable": {
                "type": "boolean"
              }
            },
            "required": [
              "text",
              "status",
              "kind"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "enum": [
                  "error"
                ]
              },
              "error": {
                "type": "string"
              }
            },
            "required": [
              "text",
              "status",
              "error"
            ],
            "additionalProperties": false
          }
        ]
      }
    }
  },
  "required": [
    "valid",
    "url",
    "share_url",
    "rows"
  ],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本3 个工具
已验证未记录版本3 个工具