# Credda Trust (npm · @credda/mcp-server)

Check a counterparty's verifiable Credda trust record; verify or present signed credentials.

- Trust score: 64/100 (medium)
- Change this week: +17
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `@credda/mcp-server`: 64/100 (this document), [markdown](https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server.md), [page](https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `@credda/mcp-server`
- Version: `0.1.3`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (96 of 100), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (96 of 100), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 6/100
  - Repository check failed: no source repository is declared.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: no license is declared.
  - Actively maintained (last published 9 days ago).
  - Security-disclosure policy not yet verified: we couldn't inspect the source repository.
- **Schema Quality & AI Usability**: 88/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1810 tokens (~106/item across 17 items; 15 tools + 2 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add credda-io-credda-trust -- npx -y @credda/mcp-server
```

### Codex

```bash
codex mcp add credda-io-credda-trust -- npx -y @credda/mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "credda-io-credda-trust": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@credda/mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add credda-io-credda-trust --command npx --arg -y --arg @credda/mcp-server
```

### Hermes

```yaml
mcp_servers:
  credda-io-credda-trust:
    command: "npx"
    args: ["-y", "@credda/mcp-server"]
```

### Other

```json
{
  "mcpServers": {
    "credda-io-credda-trust": {
      "command": "npx",
      "args": [
        "-y",
        "@credda/mcp-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 64, +28)

- [security regression] Provenance: unverified → fail
- [security improvement] Install scripts: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [functional regression] License: unverified → fail
- [functional improvement] Schema quality: unverified → excellent
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] Stability: unverified → 0.27
- [functional improvement] MCP protocol: unverified → pass

### 2026-08-02 (score 36, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-07-31 (score 21, −8)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 29, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-27 (score 47)

First indexed and scored.

## MCP tools (15)

### `check_trust` (~121 tokens)

Check a counterparty's Credda trust

Look up a counterparty's verifiable, deterministic Credda reliability score by their public share token — the token is a capability they hand you (e.g. in a profile URL or a handshake message), no API key needed. Returns the score, band, verified-platform count, and a signed credential you can offline-verify with verify_trust_credential. The score is a pure function of an append-only event ledger — never set or nudged by a human or an AI.

Input parameters:

- `token` (string, required): The counterparty's Credda share token

### `get_trust_export` (~91 tokens)

Get a counterparty's portable trust export

Fetch the full portable, self-verifying trust bundle for a share token: current score, score history, and a signed W3C Verifiable Credential with a revocation pointer. Use this when you need more than the headline score — e.g. to check a counterparty's trend over time before a higher-stakes commitment.

Input parameters:

- `token` (string, required): The counterparty's Credda share token

### `verify_trust_credential` (~104 tokens)

Verify a presented Credda credential (offline)

Offline-verify a signed Credda Verifiable Trust Credential (compact EdDSA JWT format) that a counterparty presented to you directly — e.g. in an agent-to-agent handshake — without a round trip to Credda. Checks the signature against Credda's published JWKS, plus issuer and expiry. Rejects (throws) on an invalid, expired, or tampered credential.

Input parameters:

- `credential` (string, required): The compact JWT credential string presented to you

### `verify_verifiable_credential` (~115 tokens)

Verify a presented W3C Verifiable Credential (offline)

Offline-verify a W3C Verifiable Credential (VC-JWT) that a counterparty presented to you, resolving Credda's did:web DID document and checking the revocation status list. Use this for credentials in the wider W3C VC ecosystem format rather than verify_trust_credential's compact format. Rejects (throws) on an invalid, expired, revoked, or tampered credential.

Input parameters:

- `vcJwt` (string, required): The W3C Verifiable Credential (VC-JWT) presented to you

### `mint_my_trust_token` (~114 tokens)

Mint a fresh trust token to present to a counterparty

Mint a fresh Credda share token for YOUR OWN identity, to hand to a counterparty as your side of a trust handshake (they can then call check_trust on it, or you can fetch and hand them get_trust_export / verify_trust_credential's credential directly). Requires this MCP server to be configured with CREDDA_API_KEY and CREDDA_USER_ID — it never acts on a counterparty's behalf. Minting does not change your score; it only issues a new capability token.

### `present_my_credential` (~127 tokens)

Present your Credda trust credential in one call

Convenience wrapper for the agent-to-agent handshake: mints a fresh share token for YOUR OWN identity and immediately fetches its full portable trust export (score + history + signed W3C credential + revocation pointer) in a single tool call, instead of mint_my_trust_token followed by a separate get_trust_export round trip. Hand the returned token or credential to a counterparty so they can check_trust it or verify it offline. Requires this MCP server to be configured with CREDDA_API_KEY and CREDDA_USER_ID. Minting does not change your score.

### `check_delivery_receipts` (~161 tokens)

Check a counterparty agent's delivery record

The evidence view for an agent-to-agent handshake: given the share token a counterparty hands you, returns their DELIVERY RECEIPTS — how many deliveries are recorded, how many a DISTINCT counterparty confirmed, how many were their own operator vouching for them (which never counts as confirmed), failures, disputes, and the on-time rate over confirmed deliveries — plus a signed W3C credential of that record you can offline-verify with verify_verifiable_credential. No API key needed. This is a DELIVERY RECORD, not a safety, alignment or capability rating, and never a recommendation: it tells you what was delivered and who confirmed it, and the decision stays yours.

Input parameters:

- `token` (string, required): The counterparty's Credda share token

### `present_my_delivery_receipts` (~120 tokens)

Present your own delivery record to a counterparty

Your side of the handshake: mints a fresh share token for YOUR OWN Credda-scored identity and fetches its signed delivery credential in one call — the counterparty-confirmed record of what you have actually delivered, which the other side can check offline. Requires this MCP server to be configured with CREDDA_API_KEY and CREDDA_USER_ID; it never acts on a counterparty's behalf. Minting issues a capability token — it does not change your score, and nothing you report about yourself is ever counted as confirmed evidence.

### `get_user_score` (~103 tokens)

Read one of your platform's users' Credda score

Read a user's latest computed Credda reliability score by their external id (the id YOUR platform reports events under) — score, band, confidence, factor breakdown, and the formula version that computed it. Requires CREDDA_API_KEY. Read-only: the score is a pure, deterministic function of the append-only event ledger — no tool (and no AI) can set or nudge it.

Input parameters:

- `userId` (string, required): The user's external id on your platform

### `explain_user_score` (~107 tokens)

Explain a user's score factor by factor

The bias-free evidence view of a user's score: a plain-language summary plus the per-factor breakdown (completion rate, on-time rate, dispute rate, verification depth), platform trust, consistency, momentum, and confidence level. Requires CREDDA_API_KEY. This explains EVIDENCE only — Credda deliberately has no "evaluate/recommend this person" endpoint; the decision stays with you, made against transparent facts.

Input parameters:

- `userId` (string, required): The user's external id on your platform

### `create_score_monitor` (~180 tokens)

Create a continuous score monitor

Watch one of your users' scores continuously instead of polling: an edge-triggered monitor fires a `monitor.triggered` webhook event when the score crosses DOWN through `belowScore` (also fires if the FIRST computed score is already below it), crosses UP through `aboveScore`, or when `onBandChange` is set and the band label changes. At least one condition is required. Requires CREDDA_API_KEY. A monitor is notification config only — it never affects a score.

Input parameters:

- `aboveScore` (number): Fire when the score crosses UP through this threshold (0–100)
- `belowScore` (number): Fire when the score crosses DOWN through this threshold (0–100)
- `onBandChange` (boolean): Fire whenever the score band label changes
- `userId` (string, required): The user's external id on your platform

### `list_score_monitors` (~82 tokens)

List your platform's score monitors

List your platform's continuous score monitors (cursor-paginated): each monitor's user, thresholds, band-change flag, active state, and when it last triggered. Requires CREDDA_API_KEY.

Input parameters:

- `cursor` (string): Cursor from a previous page (`nextCursor`)
- `limit` (integer): Page size (default 50, max 100)

### `delete_score_monitor` (~62 tokens)

Delete a score monitor

Delete one of your continuous score monitors by id (hard delete — a monitor is notification config, not ledger data, so nothing score-related is touched). Requires CREDDA_API_KEY.

Input parameters:

- `id` (string, required): The monitor id (from list_score_monitors)

### `get_my_usage` (~95 tokens)

Read your own API key's usage and quota

Observability for the agent's own key: your platform's API usage per day (by status class), tier rate limit, monthly quota consumption, and busiest endpoints over the window. Requires CREDDA_API_KEY. Advisory observability only — usage never affects any score.

Input parameters:

- `days` (integer): Trailing window in days (default 7, max 400 — days beyond Redis retention are served from durable daily rollups)

### `list_webhook_event_types` (~100 tokens)

List the webhook event types Credda can send

The public outbound webhook event catalog — every event type the API can deliver (e.g. `score.updated`, `score.band_changed`, `monitor.triggered`), with a description and example payload per event, the common delivery envelope, and how to verify a delivery signature. No API key needed. Use it to discover what create_score_monitor and webhook subscriptions can notify you about. Webhooks are advisory: no event can change anyone's score.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server#diagnostics

## Score history

- 2026-08-03: 64
- 2026-08-02: 36
- 2026-08-01: 21
- 2026-07-31: 21
- 2026-07-30: 29
- 2026-07-28: 47
- 2026-07-27: 47

## Links

- npm package: https://www.npmjs.com/package/@credda/mcp-server
- Socket report: https://socket.dev/npm/package/@credda/mcp-server
- Website: https://api.credda.io/
- Changelog RSS feed: https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/credda-io-credda-trust/credda-mcp-server
