get_solana_signatures
Retrieve transaction history for any Solana address to track payments, interactions, and account activity across mainnet or testnet networks.
Instructions
Get transaction signatures for a Solana address (transaction history)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Solana address | |
| limit | No | Maximum number of signatures to return (default: 10) | |
| network | No | Network type (defaults to mainnet) |
Implementation Reference
- src/handlers/solana-handlers.ts:374-390 (handler)Handler case in handleSolanaTool function that extracts arguments and calls solanaService.getSignaturesForAddress to execute the tool.case 'get_solana_signatures': { const address = args?.address as string; const limit = (args?.limit as number) || 10; const network = (args?.network as 'mainnet' | 'testnet') || 'mainnet'; const result = await solanaService.getSignaturesForAddress(address, limit, network); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], isError: !result.success, }; }
- Tool schema definition including name, description, and inputSchema with properties for address, optional limit, and network.{ name: 'get_solana_signatures', description: 'Get transaction signatures for a Solana address (transaction history)', inputSchema: { type: 'object', properties: { address: { type: 'string', description: 'Solana address', }, limit: { type: 'number', description: 'Maximum number of signatures to return (default: 10)', }, network: { type: 'string', enum: ['mainnet', 'testnet'], description: 'Network type (defaults to mainnet)', }, }, required: ['address'], }, },
- Helper method in SolanaService that calls the RPC method 'getSignaturesForAddress' on the blockchain service with the provided address and limit.async getSignaturesForAddress( address: string, limit: number = 10, network: 'mainnet' | 'testnet' = 'mainnet' ): Promise<EndpointResponse> { const service = this.blockchainService.getServiceByBlockchain('solana', network); if (!service) { return { success: false, error: `Solana service not found for ${network}`, }; } return this.blockchainService.callRPCMethod( service.id, 'getSignaturesForAddress', [ address, { limit, }, ] ); }