Alchemy
Datos de blockchain en más de 100 cadenas: precios de tokens, NFTs, transferencias, simulación, trazas, Solana DAS
Documentación
Servidor MCP de Alchemy
Dale a tu agente de codificación con IA acceso directo a más de 100 blockchains con 168 herramientas a través del Protocolo de Contexto de Modelo.
Para el índice completo de documentación, consulta llms.txt.
El Servidor MCP de Alchemy conecta tus herramientas de IA a datos de blockchain a través del Protocolo de Contexto de Modelo (MCP). Expone 168 herramientas que abarcan resolución de ENS, precios de tokens, metadatos de NFT, historial de transacciones, simulación de contratos inteligentes, trazado, abstracción de cuentas, billeteras inteligentes, Solana DAS y más — cubriendo más de 100 redes incluyendo Ethereum, Base, Polygon, Arbitrum, Optimism, Solana y Starknet.
Conecta tu cliente
El servidor se ejecuta en https://mcp.alchemy.com/mcp y se autentica mediante OAuth — solo inicia sesión con tu cuenta de Alchemy cuando se te solicite. No se requiere clave API ni instalación local.
- Agrega el servidor:
claude mcp add alchemy --transport http https://mcp.alchemy.com/mcp
-
Reinicia Claude Code (o inicia una nueva conversación).
-
Selecciona
alchemyy autentícate:
/mcp
Deberías ver alchemy en la lista de servidores MCP activos. La primera vez que uses una herramienta, se abrirá una ventana del navegador para iniciar sesión con tu cuenta de Alchemy.
- Agrega el servidor:
codex mcp add alchemy --url https://mcp.alchemy.com/mcp
- Verifica que se haya agregado:
codex mcp list
Agrega el siguiente JSON a tu archivo de configuración de MCP:
- Cursor:
~/.cursor/mcp.json(global) o.cursor/mcp.json(a nivel de proyecto)
{
"mcpServers": {
"alchemy": {
"type": "streamable-http",
"url": "https://mcp.alchemy.com/mcp"
}
}
}
Reinicia tu editor después de guardar. Para Cursor, también puedes verificar mediante Configuración de Cursor > MCP.
Agrega a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"alchemy": {
"type": "streamable-http",
"url": "https://mcp.alchemy.com/mcp"
}
}
}
Reinicia Claude Desktop después de guardar.
Agrega a .vscode/mcp.json en tu proyecto:
{
"servers": {
"alchemy": {
"type": "http",
"url": "https://mcp.alchemy.com/mcp"
}
}
}
Para cualquier otro cliente compatible con MCP, apúntalo a https://mcp.alchemy.com/mcp usando transporte HTTP Streamable. El servidor admite OAuth 2.1 con PKCE — tu cliente manejará el flujo de autorización automáticamente.
Primeros pasos
Una vez conectado, inicia sesión con tu cuenta de Alchemy cuando se te solicite. Luego, el flujo de trabajo típico es:
- Dile a tu agente qué aplicación usar — p. ej. "Selecciona una aplicación de Alchemy"
- Pregunta a tu agente — p. ej. "¿Cuál es el precio actual de ETH?" o "Muéstrame los NFTs que posee vitalik.eth"
Herramientas disponibles
El servidor expone 168 herramientas en tres categorías:
Administración — Gestión de Cuenta y Aplicaciones (8 herramientas)
Gestiona tu cuenta y aplicaciones de Alchemy. Estas herramientas no interactúan con la blockchain.
| Herramienta | Descripción |
|---|---|
ping | Verificación de estado |
list_apps | Lista tus aplicaciones de Alchemy |
get_app | Obtén detalles de la aplicación |
select_app | Selecciona una aplicación y almacena en caché su clave API para herramientas RPC/Datos |
create_app | Crea una nueva aplicación |
update_app | Actualiza el nombre o la descripción de la aplicación |
list_chains | Lista las más de 100 redes compatibles |
update_allowlist | Actualiza las listas permitidas de la aplicación (red, dirección, origen, IP) |
RPC — JSON-RPC en cadena (132 herramientas)
Realiza llamadas JSON-RPC a nodos de blockchain. Todas requieren select_app primero.
| Herramienta | Descripción |
|---|---|
ethBlockNumber | Obtén el número de bloque más reciente |
ethChainId | Obtén el ID de la cadena |
ethGasPrice | Obtén el precio actual del gas |
ethMaxPriorityFeePerGas | Obtén la tarifa máxima de prioridad por gas |
ethBlobBaseFee | Obtén la tarifa base de blob EIP-4844 |
ethSyncing | Obtén el estado de sincronización del nodo |
ethGetBalance | Obtén el saldo de ETH para una dirección |
ethGetCode | Obtén el bytecode del contrato |
ethGetStorageAt | Obtén el valor de almacenamiento en una posición |
ethGetProof | Obtén la prueba de Merkle para el almacenamiento de una cuenta |
ethGetBlockByNumber | Obtén un bloque por número |
ethGetBlockByHash | Obtén un bloque por hash |
ethGetBlockReceipts | Obtén todos los recibos de un bloque |
ethGetBlockTransactionCountByHash | Obtén el conteo de transacciones en un bloque por hash |
ethGetBlockTransactionCountByNumber | Obtén el conteo de transacciones en un bloque por número |
ethGetTransactionByHash | Obtén una transacción por hash |
ethGetTransactionByBlockHashAndIndex | Obtén una transacción por hash de bloque e índice |
ethGetTransactionByBlockNumberAndIndex | Obtén una transacción por número de bloque e índice |
ethGetTransactionReceipt | Obtén un recibo de transacción |
ethGetTransactionCount | Obtén el nonce para una dirección |
ethGetLogs | Obtén registros que coincidan con un filtro |
ethCall | Ejecuta una llamada de contrato inteligente de solo lectura |
ethEstimateGas | Estima el gas para una transacción |
ethCreateAccessList | Genera la lista de acceso EIP-2930 |
ethFeeHistory | Obtén datos históricos de tarifas |
ethCallBundle | Simula un lote de transacciones en un bloque |
ethCallMany | Simula múltiples lotes de transacciones entre bloques |
netListening | Verifica si el nodo está escuchando conexiones |
netVersion | Obtén el ID de la red |
web3ClientVersion | Obtén la versión del cliente |
web3Sha3 | Calcula un hash Keccak-256 |
resolveEnsName | Resuelve un nombre ENS de mainnet en cadena a una dirección de Ethereum |
| Herramienta | Descripción |
|---|---|
getTokenBalances | Obtén saldos de tokens ERC-20 para una dirección |
getTokenMetadata | Obtén nombre, símbolo, decimales y logo del token |
getTokenAllowance | Obtén la asignación ERC-20 para un gastador |
| Herramienta | Descripción |
|---|---|
getAssetTransfers | Obtén transferencias de activos históricas (ERC-20, ERC-721, nativas, internas) |
getTransactionReceipts | Obtén todos los recibos de transacción de un bloque |
| Herramienta | Descripción |
|---|---|
simulateAssetChanges | Simula los cambios de activos de una transacción |
simulateExecution | Simula el rastro de ejecución de una transacción |
simulateAssetChangesBundle | Simula los cambios de activos de un lote de transacciones |
simulateExecutionBundle | Simula los rastros de ejecución de un lote de transacciones |
simulateUserOperationAssetChanges | Simula los cambios de activos de una UserOperation |
| Herramienta | Descripción |
|---|---|
traceCall | Traza una llamada sin crear una transacción |
traceTransaction | Traza una transacción minada |
traceBlock | Traza todas las transacciones en un bloque |
traceFilter | Filtra rastros por dirección y rango de bloques |
traceReplayTransaction | Reproduce una transacción con rastros |
traceReplayBlockTransactions | Reproduce todas las transacciones en un bloque |
| Herramienta | Descripción |
|---|---|
debugTraceTransaction | Traza una transacción para depuración |
debugTraceCall | Traza una llamada para depuración |
debugTraceBlockByNumber | Traza un bloque por número para depuración |
debugTraceBlockByHash | Traza un bloque por hash para depuración |
debugGetRawBlock | Obtén datos de bloque crudos codificados en RLP |
debugGetRawReceipts | Obtén recibos de transacción crudos para un bloque |
| Herramienta | Descripción |
|---|---|
estimateUserOperationGas | Estima el gas para una UserOperation |
getUserOperationReceipt | Obtén un recibo de UserOperation |
getUserOperationByHash | Obtén una UserOperation por hash |
supportedEntryPoints | Lista las direcciones EntryPoint compatibles |
rundlerMaxPriorityFeePerGas | Obtén la tarifa máxima de prioridad por gas del bundler |
requestGasAndPaymasterAndData | Solicita patrocinio de gas + datos de paymaster |
requestPaymasterAndData | Solicita solo datos de paymaster |
| Herramienta | Descripción |
|---|---|
walletPrepareCalls | Prepara llamadas para el envío de billeteras inteligentes |
walletSendPreparedCalls | Envía llamadas de billetera inteligente preparadas y firmadas |
walletGetCallsStatus | Obtén el estado de las llamadas de billetera inteligente enviadas |
walletGetCapabilities | Obtén las capacidades de billetera inteligente para cadenas especificadas |
walletListAccounts | Lista cuentas inteligentes asociadas con una dirección de firmante |
walletCreateSession | Crea una sesión de billetera inteligente con permisos limitados |
walletGetCrossChainStatus | Obtén el estado de transacciones en la misma cadena o entre cadenas |
walletRequestQuote | Solicita una cotización de intercambio para un intercambio de tokens |
| Herramienta | Descripción |
|---|---|
solana_getBalance | Obtén el saldo de SOL en lamports |
solana_getAccountInfo | Obtén datos de cuenta (propietario, lamports, datos) |
solana_getMultipleAccounts | Obtén datos de múltiples cuentas |
solana_getTransaction | Obtén una transacción confirmada por firma |
solana_getSignaturesForAddress | Obtén firmas de transacciones para una dirección |
solana_getSignatureStatuses | Obtén estados de firmas de transacciones |
solana_simulateTransaction | Simula una transacción sin enviarla |
solana_getTokenAccountBalance | Obtén el saldo de una cuenta de token SPL |
solana_getTokenAccountsByOwner | Obtén todas las cuentas de token de una billetera |
solana_getTokenAccountsByDelegate | Obtén cuentas de token delegadas |
solana_getTokenSupply | Obtén el suministro total de un token SPL |
solana_getTokenLargestAccounts | Obtén los 20 principales tenedores de un token |
solana_getBlock | Obtén un bloque confirmado por slot |
solana_getBlockHeight | Obtén la altura actual del bloque |
solana_getBlockTime | Obtén la marca de tiempo Unix para un slot |
solana_getBlocks | Obtén bloques confirmados en un rango |
solana_getBlocksWithLimit | Obtén bloques confirmados desde un slot con límite |
solana_getBlockCommitment | Obtén el compromiso de voto para un bloque |
solana_getBlockProduction | Obtén estadísticas de producción de bloques |
solana_getSlot | Obtén el slot actual |
solana_getSlotLeader | Obtén el líder del slot actual |
solana_getSlotLeaders | Obtén líderes de slot para un rango |
solana_getLatestBlockhash | Obtén el hash de bloque más reciente |
solana_isBlockhashValid | Verifica la validez del hash de bloque |
solana_getProgramAccounts | Obtén todas las cuentas propiedad de un programa |
solana_getEpochInfo | Obtén información de la época actual |
solana_getEpochSchedule | Obtén el cronograma de épocas |
solana_getSupply | Obtén el desglose del suministro de SOL |
solana_getVersion | Obtén la versión del software del nodo |
solana_getTransactionCount | Obtén el conteo total de transacciones |
solana_getInflationRate | Obtén la tasa de inflación actual |
solana_getInflationGovernor | Obtén los parámetros del gobernador de inflación |
solana_getInflationReward | Obtén recompensas de staking por época |
solana_getVoteAccounts | Obtén cuentas de voto de validadores |
solana_getLargestAccounts | Obtén las 20 principales cuentas por saldo |
solana_getClusterNodes | Obtén información de nodos del clúster |
solana_getLeaderSchedule | Obtén el cronograma de líderes para una época |
solana_getFeeForMessage | Obtén la tarifa de un mensaje |
solana_getRecentPrioritizationFees | Obtén datos recientes de tarifas de prioridad |
solana_getMinimumBalanceForRentExemption | Obtén el mínimo exento de renta |
solana_getFirstAvailableBlock | Obtén el bloque disponible más bajo |
solana_getGenesisHash | Obtén el hash de génesis |
solana_getHighestSnapshotSlot | Obtén el slot de snapshot más alto |
solana_getIdentity | Obtén la clave pública de identidad del nodo |
solana_getMaxRetransmitSlot | Obtén el slot máximo de retransmisión |
solana_getMaxShredInsertSlot | Obtén el slot máximo de inserción de shred |
solana_getRecentPerformanceSamples | Obtén muestras recientes de TPS |
solana_getStakeActivation | Obtén el estado de activación de stake |
solana_minimumLedgerSlot | Obtén el slot de ledger más bajo |
solana_requestAirdrop | Airdrop de SOL (solo devnet) |
Datos — APIs REST (28 herramientas)
Llama a las APIs REST de Alchemy para obtener datos de blockchain enriquecidos. Todas requieren select_app primero.
| Herramienta | Descripción |
|---|---|
getNFTsForOwner | Obtén todos los NFT propiedad de una dirección |
getNFTsForContract | Obtén todos los NFT en un contrato |
getNFTsForCollection | Obtén todos los NFT en una colección |
getNFTMetadata | Obtén metadatos de NFT por ID de token |
getNFTMetadataBatch | Obtén metadatos de hasta 100 NFT |
getContractMetadata | Obtén metadatos del contrato NFT |
getContractMetadataBatch | Obtén metadatos de múltiples contratos |
getOwnersForNFT | Obtén propietarios de un NFT específico |
getOwnersForContract | Obtén todos los propietarios en un contrato |
getFloorPrice | Obtén el precio mínimo de los mercados |
getContractsForOwner | Obtén contratos NFT en poder de una dirección |
isSpamContract | Comprueba si un contrato es spam |
| Herramienta | Descripción |
|---|---|
getTokenPricesBySymbol | Obtén precios de tokens por símbolo (ETH, BTC, etc.) |
getTokenPricesByAddress | Obtén precios de tokens por dirección de contrato |
getHistoricalTokenPrices | Obtén datos históricos de precios en un rango de tiempo |
| Herramienta | Descripción |
|---|---|
getTokensByAddress | Obtén tokens en múltiples cadenas |
getTokenBalancesByAddress | Obtén saldos de tokens con valores en USD en múltiples cadenas |
getNFTsByAddress | Obtén NFT en múltiples cadenas |
getNFTContractsByAddress | Obtén contratos NFT en múltiples cadenas |
Cadenas compatibles
Soportamos más de 100 blockchains incluyendo Ethereum, Base, Polygon, Arbitrum, Optimism, Solana, Starknet, zkSync, Scroll, Linea, Mantle, Blast, y muchas más. Usa list_chains para ver la lista completa.
Herramientas relacionadas
- Agent Skills enseñan a tu agente de codificación cada API de Alchemy a nivel de código fuente
- El Alchemy CLI envuelve las mismas APIs como una superficie de herramientas amigable con la shell para consultas en vivo, trabajo administrativo y automatización local
- Autenticación de billetera para APIs de Alchemy permite a los agentes autenticarse con una billetera en lugar de una clave de API