Geogebra Mcp

io.github.haison8x由 GitHub 帳號 haison8x 發布v0.1.2更新於 Oct 24, 2026

在 GeoGebra Calculator 上即時繪製和編輯幾何圖形。非官方,與 GeoGebra 無關聯。

AI 翻譯由 AI 模型根據下方的原文描述翻譯,可能有誤。

原文描述

Draw and edit geometry live on GeoGebra Calculator. Unofficial, not affiliated with GeoGebra.

已驗證STDIO僅桌面瀏覽器自動化媒體與設計

概覽

Geogebra 的本機 MCP 服務;無需登入;STDIO。

暫無 AI 概覽:以下資訊來自註冊中心條目和服務本身。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Geogebra Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

geogebra-mcp

An MCP server that lets an AI (Claude Desktop, Claude Code, Cursor, …) draw and edit plane-geometry figures directly on GeoGebra® Calculator (https://www.geogebra.org/calculator).

Unlike the copy/paste workflow of the GeoGebra AutoDraw AI extension, the AI here works in a loop: it runs commands, reads errors and the figure state, verifies properties, looks at a screenshot, and fixes the figure itself — and it can edit the figure on request ("H must be the foot from A").

[Demo: the AI builds triangle ABC inscribed in (O) with altitude AH and median AM, then A is dragged and the figure follows]

Made with GeoGebra® — https://www.geogebra.org

Unofficial project, not affiliated with or endorsed by GeoGebra GmbH. See License & GeoGebra.

How it works

AI client ──MCP (stdio)──► geogebra-mcp ──Playwright──► Chrome window: geogebra.org/calculator                                                            └─ window.ggbApplet (GeoGebra JS API)
  • On the first tool call the server opens a Chrome (or Edge) window on GeoGebra Calculator. The user watches the figure being drawn and can drag/edit it by hand.
  • Tools call the GeoGebra JS API (ggbApplet) inside the page through page.evaluate — no simulated clicks.
  • Commands run through asyncEvalCommandGetLabels, which lazy-loads GeoGebra modules, so prover/scripting commands (AreCollinear, Incircle, TriangleCenter, ClosestPoint(line, point)…) work.
  • GeoGebra reports a failed command only as null, so the server adds its own diagnostics (unknown names, unknown commands, unbalanced brackets, known pitfalls) and warnings (undefined results, reserved names, two-point intersections without an index).
  • If the window is closed or reloaded, the next tool call reopens it and restores the last known figure.
  • Undo is managed by the server (XML history), because ggbApplet.undo() does not revert API commands.

Tools

ToolPurpose
ggb_run_commandsRun commands in order; per-command result, created/removed objects, warnings, failure hints. Assigning to an existing name redefines it.
ggb_get_stateObjects with type, definition, value, coordinates, visibility, dependsOn / usedBy.
ggb_screenshotPNG of the drawing area (or the whole window) for visual checking.
ggb_evaluateEvaluate expressions without adding objects (Angle(B, A, C), AreCollinear(A, H, O)…).
ggb_set_styleColor, visibility, label, caption, thickness, line style, point size, fill, fixed.
ggb_deleteDelete objects (and their dependents).
ggb_clearStart a new figure.
ggb_undoRevert changes made through the server.
ggb_snapshotSave / restore / list named versions.
ggb_fit_viewFit every visible point and circle in view (1:1 ratio), toggle axes/grid.
ggb_exportSave as .ggb or .png.

Also: resource geogebra://rules (construction rules), resource geogebra://commands (command catalog), prompt draw_geometry_problem.

Setup

Requirements: Node.js ≥ 20 and Google Chrome or Microsoft Edge (otherwise run npx playwright install chromium).

Claude Code (plugin)

bash
claude plugin marketplace add haison8x/geogebra-mcpclaude plugin install geogebra-mcp@geogebra-tools

The server then shows up in /mcp as plugin:geogebra-mcp:geogebra. Update later with claude plugin update geogebra-mcp@geogebra-tools.

Claude Code (without the plugin)

bash
claude mcp add geogebra -- npx -y geogebra-mcp

Claude Desktop, Cursor and other MCP clients

Edit claude_desktop_config.json (Settings → Developer → Edit Config), or your client's MCP config:

json
{  "mcpServers": {    "geogebra": {      "command": "npx",      "args": ["-y", "geogebra-mcp"]    }  }}

Then restart the client and ask, for example: "Vẽ tam giác ABC nội tiếp đường tròn (O), đường cao AH, M là trung điểm BC."

From source

bash
git clone https://github.com/haison8x/geogebra-mcp.gitcd geogebra-mcpnpm installnpm run buildclaude mcp add geogebra -- node /path/to/geogebra-mcp/dist/index.js

Configuration (environment variables)

VariableDefaultMeaning
GGB_BROWSERtry chrome, msedge, then Playwright ChromiumBrowser channel
GGB_HEADLESS01 to run without a window (testing)
GGB_PROFILE_DIR~/.geogebra-mcp/profileBrowser profile (keeps the GeoGebra login). One server instance per profile.
GGB_URLhttps://www.geogebra.org/calculatorPage to open

Development

Releasing: bump the version in package.json, .claude-plugin/plugin.json, .claude-plugin/marketplace.json, server.json (both version fields) and the pinned version in .mcp.json. Then push, npm publish, mcp-publisher publish, and create a GitHub release.

bash
npm run buildnpm run smoke              # end-to-end test through a real MCP client (headless)npm run smoke -- --headed  # same, with a visible window

Notes

  • Snapshots and undo history live in memory while the server runs.

License & GeoGebra

  • The code in this repository is MIT-licensed (LICENSE). That license does not cover GeoGebra.
  • GeoGebra® is a registered trademark of GeoGebra GmbH. This project is independent and contains no GeoGebra software; it drives your own browser on geogebra.org, so your use of GeoGebra falls under the GeoGebra license.
  • GeoGebra is free for non-commercial use. Commercial use (paid materials, training, services…) needs a license from GeoGebra ([email protected]).
  • When you share figures, images or .ggb files made with this tool, keep the attribution "Made with GeoGebra®" with a link to https://www.geogebra.org.

See NOTICE for details.

來源:README.md,提交 4d92ef0

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.1.2最新Oct 20, 2026
  2. v0.1.1Oct 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分