Skip to main content
Glama

swap

Execute token swaps on the Alchemy MCP Server by providing owner and signer addresses to facilitate cryptocurrency exchanges.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ownerScaAccountAddressYesThe owner SCA account address.
signerAddressYesThe signer address to send the transaction from.

Implementation Reference

  • The execution handler for the 'swap' MCP tool, which invokes alchemyApi.swap, formats the JSON response, and handles errors.
    }, async (params) => { try { const result = await alchemyApi.swap(params); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }], }; } catch (error) { if (error instanceof Error) { console.error('Error in swap:', error); return { content: [{ type: "text", text: `Error: ${error.message}` }], isError: true }; } return { content: [{ type: "text", text: 'Unknown error occurred' }], isError: true }; } });
  • TypeScript interface defining the SwapParams input type for the swap tool.
    export interface SwapParams { ownerScaAccountAddress: string; signerAddress: string; }
  • index.ts:345-348 (registration)
    MCP server registration of the 'swap' tool with Zod input schema validation.
    server.tool('swap', { ownerScaAccountAddress: z.string().describe('The owner SCA account address.'), signerAddress: z.string().describe('The signer address to send the transaction from.') }, async (params) => {
  • Supporting function implementing the swap logic by POSTing to the agent wallet server endpoint.
    async swap(params: SwapParams) { const { ownerScaAccountAddress, signerAddress } = params; console.error('SWAPPING TOKENS'); try { const response = await fetch(`${AGENT_WALLET_SERVER}/transactions/swap`, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ ownerScaAccountAddress, signerAddress }) }); console.error('SWAPPING TOKENS RESPONSE', response); if (!response.ok) { const errorData = await response.json(); throw new Error(errorData.error || `HTTP ${response.status}: ${response.statusText}`); } const result = await response.json(); return result.data; } catch (error) { console.error('Error in swap:', error); throw error; } }

Latest Blog Posts

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/alchemyplatform/alchemy-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server