hackshop-mcp
An AI agent that knows what hardware is hackable, repurposable, or protocol-native. Tell it your project idea; it returns 3-5 candidates from a hand-vetted catalog with brick-risk, firmware links, and live eBay searches.
Try it live
Real API call to a real catalog. Submit a project idea below and the agent picks 3-5 candidates with reasoning. The same logic ships in the npm package; this page is the proof.
Need inspiration? Browse 25 verified project templates → (old phone as a clock, e-paper calendar, Roomba as a robot, etc.)
Install in 30 seconds
Add this to your MCP client config (Claude Desktop, Claude Code, or any MCP-aware host):
{
"mcpServers": {
"hackshop": {
"command": "npx",
"args": ["-y", "hackshop-mcp"],
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
}
}The ANTHROPIC_API_KEY is optional but recommended. The server prefers MCP sampling/createMessagefor reasoning; if your host doesn't support it, the server falls back to a direct Anthropic call when this key is set.
The story
I had an Electric Objects EO1 picture frame. The company shut down. The frame bricked. It took six hours of forum-diving and Claude assistance to revive it. The hack was fun. Finding what hardware is even hackable was the time-sink.
hackshop-mcp closes that gap. Two MCP tools. 27 hand-vetted devices. A strict safety rule for hardware classes where bricks are unrecoverable. Built so an agent can do the part you don't know how to do.
What's in the box
Each entry has explicit brick-risk provenance: founder-verified, community-reported, or LLM-inferred.
propose_hardware for idea-to-device mapping. assess_hackability for direct lookups.
For handhelds and SBCs with LLM-inferred risk, the server refuses to surface a fabricated brick-risk score. Tested as a release gate.
Design choices worth noting
- Compose, don't vendor.hackshop-mcp doesn't bundle eBay integration. Every proposal returns an eBay search URL the host can hand to ebay-mcp for live listings. Two MCP servers, one workflow.
- Sampling first, API fallback.The server prefers MCP's
sampling/createMessageso users don't ship a key. When the host doesn't support sampling, an env-gated Anthropic API fallback kicks in. - Closed-set tag vocabulary. 24 tags in
tags.md; boot validation refuses to start if catalog drifts. No 70-tag mess in three months. - JSON catalog, not SQLite. 27 devices fit in a diffable file. Community contributions are a PR.
Contributing devices
The catalog is the moat. PRs welcome — see CONTRIBUTING.md. New entries default to community-reported provenance; founder-verifiedrequires the maintainer's signature. Adding a tag means editing tags.md in the same PR.
Status
V0.0.2 is the demand experiment. If installs and issue traffic clear a stretch threshold, V0.1 expands the catalog and adds a third tool. If not, the package keeps existing as a personal tool — that's the deal with N=1 builder mode.