← Back to search

io.github.jarod-vyent/xrpl-identity-mcp

jarod-vyent Scanned 2h ago

MCP server for XRPL identity: DIDs, credentials, signer lists, and safe transaction workflows.

C
73.6 / 100

Versions

0.1.1latest
first seen Jul 8, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 12

signer_list_prepare_set
annotations: none low

Prepare an unsigned SignerListSet transaction to create, replace, or delete an XRPL multisign signer list. This server never signs or stores keys.

quorum number
credential_prepare_create
annotations: none low

Prepare an unsigned XLS-70 CredentialCreate transaction. The issuer signs externally; this server only prepares JSON and never custodies keys.

credential_prepare_accept
annotations: none low

Prepare an unsigned XLS-70 CredentialAccept transaction for a subject to accept an issued credential. Signing happens outside this server.

credential_prepare_delete
annotations: none low

Prepare an unsigned XLS-70 CredentialDelete transaction. The submitter signs externally; this server never signs or stores keys.

credential_verify
annotations: none low

Read an XLS-70 Credential ledger object and report whether it exists, has been accepted, and is expired relative to the validated ledger close time.

credential_list
annotations: none low

List up to 400 XLS-70 Credential objects visible in an account owner directory, optionally filtered by whether the account is issuer or subject.

did_resolve
annotations: none low

Resolve an XLS-40 DID object for an XRPL account or did:xrpl identifier. Returns raw ledger data, UTF-8 decoded DID fields where valid, and fetched DID document content for ipfs:// or https:// URIs. Only text/JSON documents are inlined; binary content is reported as metadata (source, content type, byte length) with the body omitted.

did_prepare_set
annotations: none low

Prepare an unsigned XLS-40 DIDSet transaction. This server does not sign or custody keys; sign externally and verify the signed blob before submission.

did_prepare_delete
annotations: none low

Prepare an unsigned XLS-40 DIDDelete transaction for an account DID. This server never signs; sign externally and verify the blob before submitting.

tx_decode_verify
annotations: none low

Decode a signed XRPL transaction blob, compute its hash, and optionally compare it against an expected partial intent before submission. This is the WYSIWYS safety gate.

tx_submit_signed
annotations: none low

Submit a pre-signed XRPL transaction blob and poll for validation. On mainnet this is blocked unless ALLOW_MAINNET_SUBMIT=true is set.

account_identity_summary
annotations: none low

Summarize an XRPL account identity posture: AccountRoot auth flags, RegularKey and Domain state, signer list, DID presence, and visible credential counts as issuer and subject (each with a *Truncated boolean flagging when the count hit the 400-object scan cap).

Permissions 3

network medium
Server uses network capabilities via: fetch()
shell high
Server uses shell capabilities via: child_process, spawn()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 36

medium
Permission: network access detected permission_analyzer · 70%
low
Tool 'credential_prepare_create' has no annotations annotation_checker · 100%
low
Tool 'credential_prepare_accept' has no annotations annotation_checker · 100%
low
Tool 'credential_prepare_delete' has no annotations annotation_checker · 100%
low
Tool 'credential_verify' has no annotations annotation_checker · 100%
low
Tool 'credential_list' has no annotations annotation_checker · 100%
low
Tool 'did_resolve' has no annotations annotation_checker · 100%
low
Tool 'did_prepare_set' has no annotations annotation_checker · 100%
low
Tool 'did_prepare_delete' has no annotations annotation_checker · 100%
low
Tool 'tx_decode_verify' has no annotations annotation_checker · 100%
low
Tool 'tx_submit_signed' has no annotations annotation_checker · 100%
low
Tool 'signer_list_prepare_set' has no annotations annotation_checker · 100%
low
Tool 'account_identity_summary' has no annotations annotation_checker · 100%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: vitest@3.2.4 (GHSA-5xrq-8626-4rwp) dependency_analyzer · 95%
medium
Vulnerable dependency: vitest@3.2.4 (GHSA-82fw-gwwq-j7x9) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
Tool: credential_prepare_create manifest_parser · 85%
info
Tool: credential_prepare_accept manifest_parser · 85%
info
Tool: credential_prepare_delete manifest_parser · 85%
info
Tool: credential_verify manifest_parser · 85%
info
Tool: credential_list manifest_parser · 85%
info
Tool: did_resolve manifest_parser · 85%
info
Tool: did_prepare_set manifest_parser · 85%
info
Tool: did_prepare_delete manifest_parser · 85%
info
Tool: tx_decode_verify manifest_parser · 85%
info
Tool: tx_submit_signed manifest_parser · 85%
info
Tool: signer_list_prepare_set manifest_parser · 85%
info
Tool: account_identity_summary manifest_parser · 85%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (3) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 210 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%