H
haison8x/geogebra-mcp
MCP server that lets AI (Claude, Cursor…) draw, check and fix plane-geometry figures live on GeoGebra Calculator
无 SECURITY.md
在 GitHub 查看 ↗链接已于 2026-11-12 核查 · HTTP 200 · 打开的是厂商自己的官网
安装与配置
- 复制上面的命令
- 粘成
claude_desktop_config.json里mcpServers的一项(本地服务器用 command + args,示例见 客户端接法) - 重启客户端
客户端配置(取自该仓库的安装命令)
{
"mcpServers": {
"haison8x-geogebra-mcp": {
"command": "npx",
"args": ["-y", "geogebra-mcp"]
}
}
}解析自我们于 2026-10-26 抓取的该仓库 README;我们未执行过。
command/args 来自仓库写明的安装命令;不确定时请以该项目 README 为准。
VS Code(.vscode/mcp.json —— 键名是 servers)
{
"servers": {
"haison8x-geogebra-mcp": {
"command": "npx",
"args": ["-y", "geogebra-mcp"]
}
}
}VS Code 顶层键是 <code>servers</code>,其余与上面那份相同。
Claude Code(命令行)
claude mcp add --transport stdio haison8x-geogebra-mcp -- npx -y geogebra-mcp
Claude Code 不收 JSON 文件,用这条命令直接加。
配置项的键名以你的客户端为准:客户端与 CLI
- ★ 数取值
- 0 ★ · haison8x/geogebra-mcp · 取自 GitHub 搜索 API · (2026-11-13 20:00:50 核对)
- 来源明细
- 收录自 punkpeye/awesome-mcp-servers 榜单(我们从中收集的条目之一) · 条目类型:MCP 服务
- 收录与活跃
- 收录于 2026-10-23 · 最近见到 2026-11-14 · 共见到 26 次 · 被 23 个来源列出
- 评分构成
- 综合分 2,300 · 23 个来源 · mcp
- 安装
npx -y geogebra-mcp
常见问题(答案都来自我们的记录)
怎么安装?
该仓库给出的安装命令是
npx -y geogebra-mcp。我们的记录里它是仓库自己提供的;不保证在你的客户端上直接可用。它适合谁 / 用来做什么?
我们把它归在这些标签下: MCP 服务。标签来自条目自身,不是我们强加的分类。
谁维护它、还在更新吗?
仓库
haison8x/geogebra-mcp;我们收录于 2026-10-23;最近见到 2026-11-14。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。# geogebra-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
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").
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
| Tool | Purpose |
| ggbruncommands | Run commands in order; per-command result, created/removed objects, warnings, failure hints. Assigning to an existing name redefines it. |
| ggbgetstate | Objects with type, definition, value, coordinates, visibility, dependsOn / usedBy. |
| ggbscreenshot | PNG of the drawing area (or the whole window) for visual checking. |
| ggbevaluate | Evaluate expressions without adding objects (Angle(B, A, C), AreCollinear(A, H, O)…). |
| ggbsetstyle | Color, visibility, label, caption, thickness, line style, point size, fill, fixed. |
| ggbdelete | Delete objects (and their dependents). |
| ggbclear | Start a new figure. |
| ggbundo | Revert changes made through the server. |
| ggbsnapshot | Save / restore / list named versions. |
| ggbfitview | Fit every visible point and circle in view (1:1 ratio), toggle axes/grid. |
| ggbexport | Save as .ggb or .png. |
Also: resource geogebra://rules (construction rules), resource geogebra://commands (command catalog), prompt drawgeometryproblem.
## 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-mcp
claude 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.
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").
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
| Tool | Purpose |
| ggbruncommands | Run commands in order; per-command result, created/removed objects, warnings, failure hints. Assigning to an existing name redefines it. |
| ggbgetstate | Objects with type, definition, value, coordinates, visibility, dependsOn / usedBy. |
| ggbscreenshot | PNG of the drawing area (or the whole window) for visual checking. |
| ggbevaluate | Evaluate expressions without adding objects (Angle(B, A, C), AreCollinear(A, H, O)…). |
| ggbsetstyle | Color, visibility, label, caption, thickness, line style, point size, fill, fixed. |
| ggbdelete | Delete objects (and their dependents). |
| ggbclear | Start a new figure. |
| ggbundo | Revert changes made through the server. |
| ggbsnapshot | Save / restore / list named versions. |
| ggbfitview | Fit every visible point and circle in view (1:1 ratio), toggle axes/grid. |
| ggbexport | Save as .ggb or .png. |
Also: resource geogebra://rules (construction rules), resource geogebra://commands (command catalog), prompt drawgeometryproblem.
## 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-mcp
claude 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.
收录徽章(可选)
想把收录标记放进 README 就复制这行,可选,不影响收录。
[](https://anclum.com/zh/s/haison8x-geogebra-mcp/)
- 来源
- awesome · https://github.com/haison8x/geogebra-mcp
- 按领域浏览
- MCP 服务
- 收录来源
- 23 个独立来源
- 收录于
- 今天
- 安全策略
- 我们没在该仓库根目录找到
SECURITY.md(这不代表不安全)
同类推荐
所属领域与标签
每个标签都能点进去看同类的全部条目。数字是当前库里的真实条数。