mathematica-skill@0.1.0
VERIFIED· startup onlyPublisher claims: "Enables AI agents to perform real Wolfram Language computation, create and edit native .nb notebooks and figures, export data, and independently verify results through a stdio MCP interface." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Startup only; authenticated tool behavior not tested.- Tested
- server startup over stdio (initialize sent) · every file read, file written and host contacted by what ran
- Not tested
- the tool list (the server exited before answering) · what the tools do when called with real credentials
What this means for the label: Verified here covers what ran. The server's tools were not exercised with a real credential, so nothing about their behavior is asserted; the credential summary below says what to do with that.
Before you give it your token
- It will ask for
- no credential variables read in the code
- Where it talks to
- no vendor host named in the code
- What the honeypot saw
- no credential files read · no network
- What we could not test
- the tool list (the server exited before answering) · what the tools do when called with real credentials
Connect it under the guard. Startup only; authenticated tool behavior not tested. The code names no credential variable; the guard pins the network to what the honeypot saw and logs every call.
Never paste a credential into a chat, a ticket or a report, including ours. How the guard holds it.
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; startup only; authenticated tool behavior not tested) on 2026-11-11 and scored it 81/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 20 s · 2 scenarios · 0 deviationsStatic findings
path.write_text("x = 1 + 1", encoding="utf-8")Fix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.* npx / npm 入口:找到本机 Python 3.10+,把仓库根目录放进 PYTHONPATH,Fix: Pin versions and sources; vendor anything fetched at install time.mathematica-skill export task.json --code computation.wl --out artifacts/Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.task_payload["sources"] = ["/etc/passwd"]Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.self.process = subprocess.Popen(self.command, stdin=subprocess.PIPE, stdout=subprocess.PIPE,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.process = subprocess.Popen(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.stripped = strip_literals('RunProcess["rm -rf /"];\nImport["/etc/passwd"]')Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.proc = subprocess.run([entry["command"], *entry["args"]], input=request.encode("utf-8"), cwd=tmp_path,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.stripped = strip_literals('RunProcess["rm -rf /"];\nImport["/etc/passwd"]')Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.mathematica-skill verify task.json --code computation.wl --out verify.json [--previous verify-1.json]Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.subprocess.run(["taskkill", "/F", "/T", "/PID", str(process.pid)],Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out."Linux: sudo apt install python3 / sudo dnf install python3",Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.result = subprocess.run([sys.executable, "-m", "pytest", "-q"], cwd=ROOT, capture_output=True, text=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.stripped = strip_literals('RunProcess["rm -rf /"];\nImport["/etc/passwd"]')Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.回归保护:npx 安装后,配置里曾经没有 PYTHONPATH,Claude Desktop 启动时直接Fix: Pin versions and sources; vendor anything fetched at install time.包装脚本设置的 PYTHONPATH 不会带过来;npx 安装时包目录又在临时缓存里,所以必须显式写出。Fix: Pin versions and sources; vendor anything fetched at install time.completed = subprocess.run(command, capture_output=True, text=True, timeout=timeout,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out." MATHEMATICA_SKILL_PYTHON=/path/to/python3 npx mathematica-skill doctor",Fix: Pin versions and sources; vendor anything fetched at install time.Cost to the agent
Tokens estimated at four characters each. The tool list is re-read by the agent on every turn, so it is the number to compare between servers that do the same job: ranked across the index.
Known vulnerabilities
Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.