nockchain-mcp
nockchain-agent
Un cliente TypeScript tipado y un servidor MCP para leer Nockchain desde un agente.
Creado por Prism. No está afiliado, respaldado ni operado por Nockchain, Nock Community Co, Zorp ni National Compute.
Instalación
npm install nockchain-agent-sdkEl servidor MCP se ejecuta directamente desde npm:
npx nockchain-mcpNode 20 o superior.
Consultar un saldo
import { NockchainClient } from "nockchain-agent-sdk";
const client = new NockchainClient();
const balance = await client.getBalance("2s3K...");
console.log(`${balance.nock} NOCK (${balance.nicks} nicks) across ${balance.notes.length} notes`);Verificar un pago
Emite una dirección por factura y luego pregunta si ha sido pagada:
import { NockchainClient } from "nockchain-agent-sdk";
const client = new NockchainClient();
const result = await client.verifyPayment({
address: invoiceAddress,
minNock: "1.5",
sinceHeight: 133400,
confirmations: 3,
});
if (result.paid) {
console.log(`${result.confirmedNock} NOCK settled at height ${result.tipHeight}`);
}Usarlo desde un cliente MCP
{
"mcpServers": {
"nockchain": {
"command": "npx",
"args": ["-y", "nockchain-mcp"]
}
}
}Siete herramientas, todas de solo lectura:
herramienta | qué responde |
| la altura actual, con una lectura de frescura por endpoint |
| qué puede gastar una dirección ahora mismo |
| si esta dirección ha sido pagada, con confirmaciones |
| el contenido de un bloque por altura o por ID de bloque |
| el contenido de una transacción, o por qué el nodo no pudo decodificarla |
| estado de caché y de refresco del endpoint seleccionado, y su tabla de pares |
| la tabla completa de salud de los endpoints |
Por qué existe
Dos cosas de la lectura de Nockchain hoy en día cuestan más tiempo del que deberían.
Los saldos se devuelven como cero. La llamada pública WalletGetBalance acepta un selector de dirección, pero para las notas del formato v1 actual ese selector no devuelve nada en absoluto. El saldo vive bajo el primer nombre de la nota, al que se llega aplicando el hash al pay-to-pubkey-hash que hay detrás de la dirección. Dos derivaciones son relevantes, porque las notas coinbase se bloquean de forma distinta a las ordinarias, y el saldo real es la unión de ambas. getBalance hace ese trabajo y devuelve la cifra que la dirección realmente puede gastar.
Los nodos públicos se quedan desactualizados en silencio. Tres endpoints, medidos en el mismo minuto el 25 de agosto de 2026:
endpoint | altura | antigüedad de su estado de cadena |
| 133598 | 157 s |
| 133598 | 214 s |
| 133226 | 50625 s, casi 14 horas |
Una respuesta no lleva ninguna señal de cuál de estos ha respondido. El cliente sondea todos los endpoints de su grupo y se cierra a leer de uno que no supere el umbral de frescura, lanzando un error tipado que menciona las antigüedades medidas. client.health() devuelve la tabla completa.
Limitaciones
Solo lectura. No existe ninguna biblioteca de firma para Nockchain, así que enviar NOCK con token requiere la CLI oficial nockchain-wallet. El SDK enviará una transacción que la CLI ya haya producido. No la construirá ni la firmará.
Un saldo es el conjunto de notas no gastadas en ese momento. It indicates what an address can spend at the current tip. Each time a note is spent, it leaves the set, so the total is no record of what an address has received over its lifetime. Nothing the wallet sends carries a memo or a tag on the wire either, which is why payment correlation works by printing one address per invoice.
La llamada upstream GetTransactionDetails falla en transacciones provistantas después de la actualización Logos. El nodo responde con un error de decodificador en lugar de con la transacción. Al getTransactionDetails detecta ese caso y devuelve { ok: false, reason: "upstream_decoder_bug", txId, fallback }, donde fallback contiene los hechos de inclusión que GetTransactionBlock y GetBlockDetails aún pueden establecer, como la altura del bloque y su fecha de fecha.
La API pública es alfa y no requiere autenticación. No hay ninguna clave que obtener ni ningún límite de frecuencia que prever. Los endpoints se moven y se retrasan sin previo aviso.
Paquetes
paquete | contents |
el toper y la derivación del nockchain-name de la que depende | |
el servidor MCP stdio construido sobre él |
Ejemplos
Los ejemplos importan la compilación del workspace, así que compila una vez primero.
npm install
npm run build
node examples/balance.mjs 2s3K...
node examples/verify-payment.mjs 2s3K... 1.5Ambos leen la red pública.
Desarrollo
npm install
npm run build
npm testLas pruebas se ejecutan offline contra fixtures, incluidos los vectores de oro generados a partir de las crates upstream Rust. Nada en la suite de pruebas abre un socket.
Licencia
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 Connectors
Provide AI agents and automation tools with contextual access to blockchain data including balance…
Read-only on-chain intel for AI agents on Base: balances, tokens, gas, tx status. No API keys.
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
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/winter0x/nockchain-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server