# Savirinc/unfragile-mcp-server [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/Savirinc/unfragile-mcp-server  
**GitHub Stars:** 2  
**npm Downloads (last month):** 1679  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/savirinc-unfragile-mcp-server

## Description
Canonical MCP server resolver. Returns the right MCP for any agent intent with an invocation-ready snippet and an Ed25519-signed trust passport. Cross-registry coverage. npx -y @unfragile/mcp-server

## Tools
Capabilities this server exposes over MCP:

- **unfragile_answer** — THE headline call: describe what you need and get ONE verified answer from the Unfragile corpus — fresh (crawled weekly), tested (machine-verified with honest tiers), signed (Ed25519 trust passport) — plus a paste-ready install snippet and honest alternatives. Deterministic: same query, same answer. If nothing qualifies, returns an honest 'no confident answer' instead of a guess — trust the abstention.
- **unfragile_search** — Ranked results from the verified corpus with per-record evidence (tier, score, signed passport, adoption, install). Use when a list is wanted rather than the single best answer — for the single answer, use unfragile_answer.
- **unfragile_verify** — Verify a tool, MCP server, or package BEFORE invoking or installing it. Returns a conservative verdict — trusted | caution | unverified | flagged — with the record's Ed25519-signed trust passport attached (verifiable offline against https://unfragile.ai/api/v1/trust-passport-public-key). RULE: never invoke or install a `flagged` target; treat `unverified` as review-first.
- **unfragile_resolve** — Agent-runtime resolution: one intent in, one verified record out — with verdict, Ed25519-signed passport, and a paste-ready invocation snippet in a single call. Returns an honest abstention when nothing qualifies.
- **unfragile_passport** — Fetch the raw Ed25519-signed trust passport JSON for a record (by record page slug, record id, or npm package). For programmatic policy checks; verify offline against the published public key.
- **unfragile_stats** — Live census of the verified corpus with honest tiers: listed, machine-verified, signed passports, official records, by envelope. Human rendering: https://unfragile.ai/report/mcp-census-2026

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "unfragile-mcp-server": {
    "command": "npx",
    "args": ["-y","@unfragile/mcp-server"],
    "env": {
      "UNFRAGILE_API_URL": "",
      "UNFRAGILE_MONITOR": "",
      "UNFRAGILE_HEADERS": "",
      "UNFRAGILE_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `UNFRAGILE_API_URL`, `UNFRAGILE_MONITOR`, `UNFRAGILE_HEADERS`, `UNFRAGILE_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What Savirinc/unfragile-mcp-server does

Savirinc/unfragile-mcp-server exposes the Unfragile search and trust API through MCP. It indexes callable actions from MCP servers, APIs, command-line tools, SDKs, models, robots, and devices. Search results carry labels describing what Unfragile found, including machine-verified and signed records, official records, code-only discoveries, demonstrations, and targets that failed a check.

The server supports both discovery and pre-installation review. An agent can describe an intended task and receive one selected record, request a ranked list, resolve an intent into an invocation-ready record, or verify a named package or tool before using it. Results can include installation or invocation snippets, alternatives, evidence, and a signed trust passport.

## How it works

MCP tool calls are forwarded to the free public Unfragile API. Search combines a meaning index with a word index, then ranks and reranks matching actions. Trust influences ranking as a measured signal but does not change a record's label. Retrieval is deterministic, and the answer flow selects only from labelled results; when nothing qualifies, it returns an honest no rather than inventing a match.

Verified records include Ed25519-signed passports. These can be checked offline using Unfragile's published public key. Verification returns one of four conservative outcomes: `trusted`, `caution`, `unverified`, or `flagged`. A flagged target should not be installed or invoked, while an unverified target requires review first.

## Setup and configuration

The package runs through `npx`:

```bash
npx -y @unfragile/mcp-server
```

Claude Code can register it with:

```bash
claude mcp add unfragile -- npx -y @unfragile/mcp-server
```

Other MCP clients use a server entry with `command` set to `npx` and arguments `-y` and `@unfragile/mcp-server`. No environment variable is needed for the default public API. `UNFRAGILE_API_URL` changes the API base URL, `UNFRAGILE_MONITOR` labels monitoring or test traffic, `UNFRAGILE_HEADERS` supplies additional request headers as JSON, and `UNFRAGILE_API_KEY` can provide higher CLI-guard rate limits.

The package also provides an `unfragile` CLI. `unfragile verify` checks a target, and `unfragile guard -- ...` extracts an install target from supported `claude mcp add`, `npx`, or `uvx` commands and blocks flagged results unless `--force` is used. If verification cannot be reached, the CLI treats the target as unverified rather than failing open.

## Tools and capabilities

- `unfragile_find` searches across indexed actions and can add one selected answer with reasoning.
- `unfragile_answer` returns one verified software record, evidence, an install snippet, and alternatives.
- `unfragile_search` returns ranked records with per-record trust and installation evidence.
- `unfragile_verify` checks a tool, MCP server, or package before invocation or installation.
- `unfragile_resolve` turns one intent into a record, verdict, signed passport, and invocation snippet.
- `unfragile_passport` retrieves raw signed passport JSON by slug, record ID, or npm package.
- `unfragile_stats` reports live corpus counts by category or envelope.

## Limitations and notes

The service depends on the public Unfragile API and its indexed corpus. Labels describe the available checks and should be read before acting on a result. Rankings do not change those labels. The index is refreshed weekly, so discovery results and corpus statistics can change over time. An honest abstention is an expected result when no record meets the query criteria.

_Full upstream README: https://allmcps.com/mcp/savirinc-unfragile-mcp-server/readme_

