Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

USRCP — User Context Protocol

NPM · USRCP · SCANNED AUG 7

Encrypted local ledger of structured user state, shared across every MCP-aware AI tool.

Available components

65 Trust /100
Trust breakdown (6 categories)

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. How we score →

Supply Chain Security93
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known medium-severity CVE affects @hono/node-server 1.19.17, reached via usrcp-local > @modelcontextprotocol/sdk > @hono/node-server. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 39 of 153 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (Apache-2.0).Pass
  • Actively maintained (last published 2 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability63
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 1683 tokens (~140/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · usrcp

# add to Claude Code
claude mcp add frank-bot07-usrcp -- npx -y usrcp
# add to Codex CLI
codex mcp add frank-bot07-usrcp -- npx -y usrcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "frank-bot07-usrcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "usrcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add frank-bot07-usrcp --command npx --arg -y --arg usrcp
# ~/.hermes/config.yaml
mcp_servers:
  frank-bot07-usrcp:
    command: "npx"
    args: ["-y", "usrcp"]
// mcp.json
{
  "mcpServers": {
    "frank-bot07-usrcp": {
      "command": "npx",
      "args": [
        "-y",
        "usrcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 7 Aug 26 +3
    • Security disclosure: fail → pass functional
    • Dependency health: partial → 0.88 functional
  • 5 Aug 26 +27
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • MCP protocol: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: good functional
  • 4 Aug 26 35

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 7 Aug 2026 · Analysed npm/[email protected]

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm
Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-frvp-7c67-39w9 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N yes
Dependencies 153 packages
Packages resolved 153
Stale 39
Tree resolution Complete
MCP tools · 12 exposed · ~1,683 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
usrcp_append_event ~220

Record an interaction event to the user's USRCP State Ledger. Call this when a meaningful interaction completes — a task finished, a decision made, a file created, a bug fixed. This builds the user's cross-platform interaction history.

NameTypeReqDescription
artifactsarrayReferences to outputs (files, commits, URLs)
detailobjectStructured detail blob — varies by domain
domainstringyesSemantic domain: coding, writing, research, design, personal, health, finance, etc.
idempotency_keystringClient-generated key to prevent duplicate writes on retry
intentstringyesWhat the user was trying to accomplish
outcomestringyesHow the interaction resolved
platformstringPlatform this event originated from (e.g., 'claude_code', 'cursor')
session_idstringSession identifier to group related events
summarystringyesConcise summary of what happened
tagsarrayFreeform tags for filtering and search

No output schema declared.

No examples provided.

usrcp_audit_log ~55

View the USRCP audit log — every read, write, search, and delete operation recorded with timestamps, agent identity, and scopes accessed.

NameTypeReqDescription
limitnumberNumber of audit log entries to retrieve

No output schema declared.

No examples provided.

usrcp_get_facts ~87

Read schemaless facts. If `key` is provided, returns a single fact; otherwise lists all facts in the domain (optionally filtered by namespace).

NameTypeReqDescription
domainstringyesDomain to read from
keystringOptional: fetch a single fact by key (namespace required if set)
namespacestringOptional: filter by namespace

No output schema declared.

No examples provided.

usrcp_get_state ~148

Query the user's identity, preferences, active projects, domain context, and recent interaction timeline from their USRCP State Ledger. Use this at the start of a session to understand who the user is and what they've been working on across all AI platforms.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
scopesarrayWhich facets of user state to retrieve
timeline_domainsarrayFilter timeline to specific domains (e.g., ['coding', 'writing'])
timeline_last_nnumberNumber of recent timeline events to retrieve
timeline_sincestringISO 8601 timestamp — retrieve timeline events after this time

No output schema declared.

No examples provided.

usrcp_manage_project ~154

Create or update a project in the user's USRCP State Ledger. Projects track what the user is actively working on across platforms.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
domainstringyesProject domain (coding, writing, research, etc.)
namestringyesHuman-readable project name
project_idstringyesStable handle for the project (the upsert key). Stored as an opaque HMAC — the id itself is never persisted or synced in the clear — so any string is safe. The human-readable title goes in `name`.
statusstringProject status
summarystringyesBrief project description or current state

No output schema declared.

No examples provided.

usrcp_rotate_key ~221

Rotate the master encryption key. IRREVERSIBLE: replaces the on-disk master key and re-encrypts every row. DO NOT call this on your own initiative — only when the user has explicitly asked to rotate, or to respond to a confirmed key-compromise event. Rate-limited to once per 24h by default; rows that fail MAC verification under the current key are NOT silently dropped (the call will return an error and refuse to advance unless force_skip_damaged=true).

NameTypeReqDescription
force_rate_limitbooleanBypass the 24h rate limit (USRCP_ROTATE_KEY_MIN_INTERVAL_HOURS). Set true only when the user has explicitly asked to rotate again sooner.
force_skip_damagedbooleanProceed even when rows fail to decrypt under the current key. Those rows become permanently unreadable. Set true only after taking a snapshot and confirming the data loss is acceptable.
new_passphrasestringNew passphrase for key derivation. If omitted, generates a random key (dev mode).

No output schema declared.

No examples provided.

usrcp_search_timeline ~88

Search the user's interaction timeline by keyword. Useful for finding past interactions, decisions, or context about specific topics.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
domainstringFilter to a specific domain
limitnumberMax results
querystringyesSearch query — matches against summary, intent, and tags

No output schema declared.

No examples provided.

usrcp_set_fact ~204

Store a free-form fact in a domain namespace. Use for data the fixed schema doesn't model (habits, relationships, recurring tasks, mood, goals, etc.). Upserts one row per (domain, namespace, key) — re-calling with the same key overwrites. All values are encrypted with the domain-scoped key.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
domainstringyesSemantic domain (coding, personal, health, etc.)
expected_versionintegerOptional: version from a prior read (0 = fact does not yet exist). If the stored version differs, the write is rejected with VERSION_CONFLICT.
keystringyesKey within the namespace (e.g., 'morning_routine')
namespacestringyesNamespace within the domain (e.g., 'habits', 'relationships')
valueyesFree-form value — any JSON-serializable data

No output schema declared.

No examples provided.

usrcp_status ~33

Get the status and statistics of the local USRCP ledger — total events, domains, platforms, and projects.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

usrcp_update_domain_context ~169

Store or update domain-scoped context in the USRCP State Ledger. Use this to persist domain-specific knowledge that should be available to any agent working in that domain (e.g., coding preferences, writing style notes, research topics).

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
contextobjectyesKey-value context to merge into the domain (e.g., { preferred_framework: 'nextjs', css: 'tailwind' })
domainstringyesDomain name (e.g., 'coding', 'writing', 'research', 'design')
expected_versionintegerOptional: version from a prior read (0 = domain does not yet exist). If the stored version differs, the update is rejected with VERSION_CONFLICT.

No output schema declared.

No examples provided.

usrcp_update_identity ~159

Update the user's core identity in the USRCP State Ledger. Use when you learn new information about the user — their role, expertise, or communication preferences.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
communication_stylestringHow the user prefers AI to communicate
display_namestringUser's display name
expected_versionintegerOptional: version from a prior read. If the stored version differs, the update is rejected with VERSION_CONFLICT. Use for read-modify-write flows.
expertise_domainsarrayUser's expertise areas and levels
rolesarrayUser's roles (e.g., ['founder', 'software_engineer'])

No output schema declared.

No examples provided.

usrcp_update_preferences ~145

Update the user's global preferences in the USRCP State Ledger. These preferences apply across all AI platforms.

NameTypeReqDescription
callerstringIdentifying name of the calling agent/platform
customobjectCustom key-value preferences
expected_versionintegerOptional: version from a prior read. If the stored version differs, the update is rejected with VERSION_CONFLICT.
languagestringPreferred language code (e.g., 'en')
output_formatstringPreferred output format
timezonestringIANA timezone (e.g., 'America/Los_Angeles')
verbositystringPreferred verbosity level

No output schema declared.

No examples provided.