@unfragile/mcp-server
Search for everything an agent can invoke. Every result labelled. For humans, agents and robots.
Unfragile is the neutral search layer for developers, agents and robots. This package gives any MCP client (Claude Code, Claude Desktop, Cursor, Windsurf, Cline, your own runtime) seven tools over the Unfragile index: 2.2 million tool actions read from MCP servers, APIs, CLIs, SDKs, models, robots and devices, each checked by machine and labelled with what the check found.
- Labelled, never softened. Every result carries one of:
verified and signed · official · found in code, not yet checked · demo or tutorial · failed its last check. Labels are the instruments' verdict; no ranking, model or payment changes them.
- Signed. Verified records carry an Ed25519 trust passport you can verify offline against the published public key.
- Honest no. When nothing fits,
unfragile_find says so and asks one question back. Retrieval and ranking are deterministic; the one language model in the system writes the single-sentence pick behind answer: true and may only choose among labelled results.
- Free, no key. Every tool calls the public API at unfragile.ai.
Guides: for agents · for developers · for robots · API reference
Install
One line on a machine with Claude Code (prints the configuration block on any other machine):
Claude Code
Claude Desktop, Cursor, Windsurf, Cline, any MCP client
Add to the client's MCP configuration (Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json; Cursor: .cursor/mcp.json; Windsurf: ~/.codeium/windsurf/mcp_config.json):
Tools
The command line: verify before you install
The same package ships an unfragile command.
guard extracts the install target from a claude mcp add / npx / uvx command, verifies it, and blocks a flagged verdict (unless --force, which is logged). Every verdict is Ed25519-signed. If verification is unreachable the CLI says so and treats the target as UNVERIFIED; it never fails silently open.
Ask your agent
- "Find the tool that refunds a Stripe payment and tell me its label."
- "Which action turns off the living room lights? Verified ones only."
- "Verify npm:some-mcp-package before installing it."
- "Get the signed trust passport for the pick."
- "How big is the index right now?"
The rules
- Labels are the instruments' verdict. Read the label before acting on a result.
- Never invoke a
failed or flagged target. Treat found in code, not yet checked as review-first.
- An honest no is an answer. Do not fill the gap with a guess.
- Cite the passport. A verified result's
url is its signed passport.
Rankings are never for sale. Vendors may pay to have their own record checked sooner, never to change an answer or a label.
How it works
Every tool calls the free public Unfragile API: /api/v1/find, /api/answer, /api/v1/search, /api/v1/verify, /api/v1/resolve, /api/v1/passport, /api/v1/stats. The search runs on Unfragile's own GPU: a meaning index and a word index over the actions, fused and reranked, with trust as a measured nudge, never a label change. How we check.
Environment variables
Links
License
MIT