ryntra-solana-evidence
Ryntra Solana Evidence Kit
Lee lo que un activo de Solana puede hacerte, previsualiza exactamente lo que hará una transferencia y verifica un recibo sin preguntar a la parte que lo emitió.
Apache-2.0. Solo lectura por construcción: sin clave, sin ruta de firma, sin construcción de transacciones y un único método RPC — getAccountInfo. Un test enumera cada llamada RPC y cada identificador con forma de firma en el código fuente distribuido en cada ejecución, por lo que esa frase es una puerta en lugar de una promesa.
npm ci
npm run verify # lint, typecheck, network-free tests, boundary gate
npm run cli -- inspect 2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXoEse último comando lee PayPal USD en mainnet a través de un endpoint público, sin ninguna cuenta, e imprime sus ocho extensiones de token con lo que cada una significa para alguien que posee el activo.
Por qué
Un mint de Token Extensions puede tener poderes que un saldo no te muestra. Un delegado permanente permite al emisor mover o quemar tokens desde cualquier cuenta. Un hook de transferencia ejecuta el programa de otra persona en cada transferencia. Una comisión de transferencia significa que el destinatario recibe menos de lo que se envió. Un estado de cuenta congelado por defecto significa que recibir un token no es lo mismo que poder moverlo.
Nada de eso está oculto — está en la cadena, en la cuenta del mint, decodificable por cualquiera. Simplemente no es leído por la mayoría de las cosas en las que la gente hace clic.
Este kit lo lee, dice lo que significa en una frase que un titular entiende y se niega a comprimirlo en una puntuación. Aquí no hay calificación, y el mejor veredicto que puede devolver el motor de políticas es NO_KNOWN_BLOCKER.
Related MCP server: Solana Debug MCP
Las tres herramientas
flowchart LR
RPC[("Solana JSON-RPC<br/>getAccountInfo")]
MINT["mint account bytes"]
RPC --> MINT
MINT --> P["<b>inspect_solana_mint</b><br/>Asset Passport<br/>identity · authorities<br/>extensions with provenance"]
P --> F["<b>preflight_solana_action</b><br/>exact preview<br/>fee math · resolved hook<br/>expected balance deltas"]
POL["owner policy<br/>13 declared dials"] --> V["policy verdict<br/>13 findings"]
F --> V
R[("Outcome Receipt<br/>JSON")] --> VR["<b>verify_solana_receipt</b><br/>schema · integrity<br/>issuer · binding"]
classDef tool fill:#101418,stroke:#4c8bf5,color:#e8eef6
classDef data fill:#0d1117,stroke:#3d444d,color:#c9d1d9
class P,F,V,VR tool
class RPC,MINT,POL,R dataQué responde | Alcanza la red | |
| Qué es este activo y qué puede hacer su emisor a un titular | sí, una lectura |
| Qué hará esta transferencia exacta y qué opina mi política de ella | sí, una lectura |
| Este recibo está intacto, quién lo firmó y si es sobre Solana | no — completamente local |
Cada una está disponible de tres maneras: como llamada SDK tipada, como herramienta MCP y desde la CLI.
Diseño
lib/solana/ the evidence core — decoding, passport, preflight, policy, receipt
lib/agent-control/ the frozen canonical hashing and the Solana registry adapter
lib/guard/ the one canonical JSON serializer both hashers use
packages/solana-evidence-sdk/ typed calls over the core
packages/solana-evidence-mcp/ local stdio MCP server
examples/solana-evidence-cli/ the runnable CLI
docs/solana/schemas/ published JSON Schemas for non-JS consumerslib/ no es una copia. Son los mismos módulos que ejecuta ryntra.io, extraídos con sus rutas intactas — así que un resultado de este kit y un resultado del producto provienen del mismo código, y una extracción que rompa eso falla sus propias pruebas. lib/stellar/evidence.ts está aquí por la misma razón y ninguna otra: el sobre de evidencia es neutral respecto a la cadena, y enviar la única implementación es mejor que enviar una copia que se desvíe. lib/solana/evidence.ts lo dice donde lo encuentres.
Reglas de diseño y su coste
Cada hecho lleva cómo se conoce. ONCHAIN_VERIFIED, DECLARED, DERIVED, CONFLICTING, UNKNOWN, UNSUPPORTED. Un valor sin fuente no es un valor aquí. El coste es la verbosidad, y vale la pena: el marketing del propio emisor y una lectura del libro mayor nunca deben llevar la misma insignia.
Una frase describe el contexto, no el slot. Un mint que lleva TransferHook con el id de programa todo ceros no tiene hook instalado — el pasaporte lo dice, y dice quién puede instalar uno. La frase genérica habría sido falsa en el mint de Token Extensions más inspeccionado que existe.
Las cantidades son unidades base sin formato como cadenas. Una cantidad de 64 bits no sobrevive a un número de JavaScript, y una cantidad con pérdida es una cantidad incorrecta. No hay decimales en ningún lugar de la ruta de valores.
Una extensión para la que nadie escribió semántica aún se renderiza, marcada, con su tipo raw. Un hecho decodificado sin una frase bonita sigue siendo un hecho; ocultarlo sería la mentira.
Nada lanza excepciones. Las negativas son valores con un código y una razón — ACCOUNT_NOT_FOUND, NOT_A_MINT, DECODE_FAILED. «Sin respuesta» y «esta respuesta» no deben parecerse.
Los reintentos cubren el transporte y nunca la respuesta. Una respuesta que se parsea se devuelve tal cual, incluido «sin cuenta», porque volver a preguntar no cambia los hechos.
Recibos
Un Recibo de Resultado de Ryntra es una observación de algo que ya ocurrió — nunca una instrucción, y nunca una prueba de que Ryntra lo hizo. verify_solana_receipt recalcula ambos hashes a partir de los propios bytes del recibo y verifica la firma Ed25519 contra la clave que lleva el recibo. Cuatro ejes, reportados por separado:
esquema — si esto tiene la forma de un recibo en absoluto;
integridad — si ambos hashes se recalculan;
emisor — si la firma es válida; y, solo si pasas
trustedPublicKeys, si la clave es una que tú confías;vinculación — si el nombre del registro identifica al adaptador de Solana.
«Firmado por alguien» no es «firmado por Ryntra», y colapsar ambos es el error que este eje existe para prevenir. lib/solana/fixtures/receipt-*.json son artefactos reales que puedes ejecutar contra esto, incluyendo uno que es el firmado con un solo carácter editado.
Límite de confianza
Sin custodia y sin claves. No se guarda, lee, deriva ni solicita ninguna clave. No hay ruta de firma, y la puerta de límite falla la compilación si aparece una.
No se ejecuta nada. No se construye ni envía ninguna transacción.
Un veredicto no es un juicio de seguridad. Reporta la ausencia de bloqueadores conocidos bajo una política que el llamante declaró, y el vocabulario de veredictos no tiene palabra para seguridad.
El endpoint es elección del operador. Ninguna herramienta o llamada SDK toma una URL de su llamante; los endpoints del proveedor provienen de
RYNTRA_SOLANA_RPC_MAINNETyRYNTRA_SOLANA_RPC_DEVNET, y los valores predeterminados públicos funcionan sin cuenta.Distribuido con el código fuente. El paquete raíz es
private, por lo que unnpm publishaccidental se rechaza. No se reivindica ningún paquete npm.
Enlaces
Servidor MCP:
packages/solana-evidence-mcpSeguridad: SECURITY.md · Contribuciones: CONTRIBUTING.md
El espacio de trabajo del que proviene: https://ryntra.io/solana
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceProvides read-only access to Solana on-chain data, enabling natural language queries for wallet balances, token holdings, prices, transactions, and more via MCP-compatible clients.8MIT
- AlicenseAqualityCmaintenanceInspects and debugs Solana transactions, accounts, Anchor IDLs, errors, and PDAs from MCP-compatible clients.52MIT
- FlicenseAqualityDmaintenanceProvides read-only access to the XRP Ledger for querying accounts, transactions, NFTs, DEX order books, and more.12

Tegro Wallet MCPofficial
Alicense-qualityBmaintenanceProvides read-only, real-time access to TON blockchain data including wallet balances, token holdings, transactions, prices, NFTs, DNS resolution, and address validation, without requiring private keys.7MIT
Related MCP Connectors
Ask what you can't be sure of. Read-only checks on tokens, NFTs, wallets and contracts.
Read-only crypto safety: token honeypot checks, EIP-712 signature decode, approval scans.
Solana on-chain intelligence — token scans, wallet profiling, bundle detection, 19 MCP tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ryntra-io/ryntra-solana-evidence'
If you have feedback or need assistance with the MCP directory API, please join our Discord server