Skip to main content
Glama
matteoantoci

MCP Bitpanda Server

list_fiat_wallets

Retrieve all fiat currency wallets from Bitpanda to view balances and manage traditional currency holdings.

Instructions

Lists all user's fiat wallets from the Bitpanda API.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The handler function that executes the tool logic by fetching fiat wallets from the Bitpanda API using axios.
    const listFiatWalletsHandler = async (_input: Input): Promise<Output> => { try { const apiKey = getBitpandaApiKey(); const url = `${BITPANDA_API_BASE_URL}/fiatwallets`; const response = await axios.get<Output>(url, { headers: { 'X-Api-Key': apiKey, 'Content-Type': 'application/json', }, }); // Return the data received from the Bitpanda API return response.data; } catch (error: unknown) { console.error('Error fetching Bitpanda fiat wallets:', error); const message = error instanceof Error ? error.message : 'An unknown error occurred while fetching fiat wallets.'; // Re-throwing the error to be handled by the MCP server framework throw new Error(`Failed to fetch Bitpanda fiat wallets: ${message}`); } };
  • Defines the input schema (empty object) and TypeScript types for input and output of the list_fiat_wallets tool.
    // Define the input schema shape for the list_fiat_wallets tool (no parameters) const listFiatWalletsInputSchemaShape = {}; type RawSchemaShape = typeof listFiatWalletsInputSchemaShape; type Input = z.infer<z.ZodObject<RawSchemaShape>>; // Define the expected output structure based on the API documentation type Output = { data: Array<{ type: string; attributes: { fiat_id: string; fiat_symbol: string; balance: string; name: string; pending_transactions_count: number; }; id: string; }>; };
  • Exports the complete tool definition for list_fiat_wallets, bundling name, description, schema, and handler.
    export const listFiatWalletsTool: BitpandaToolDefinition = { name: 'list_fiat_wallets', description: "Lists all user's fiat wallets from the Bitpanda API.", inputSchemaShape: listFiatWalletsInputSchemaShape, handler: listFiatWalletsHandler, };
  • Registers the list_fiat_wallets tool (among others) with the MCP server using server.tool().
    export const registerBitpandaTools = (server: McpServer): void => { bitpandaToolDefinitions.forEach((toolDef) => { try { // Pass the raw shape to the inputSchema parameter, assuming SDK handles z.object() server.tool(toolDef.name, toolDef.description, toolDef.inputSchemaShape, async (input) => { const result = await toolDef.handler(input); // Assuming the handler returns the data directly, wrap it in the MCP content format return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }], }; }); console.log(`Registered Bitpanda tool: ${toolDef.name}`); } catch (error) { console.error(`Failed to register tool ${toolDef.name}:`, 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/matteoantoci/mcp-bitpanda'

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