API Integration
Integrate this MCP server into your applications.
Get your API Key
You'll need to login and generate a Smithery API key to connect to this server.
Installation
Install the official MCP SDKs using npm:
bash
npm install @modelcontextprotocol/sdk @smithery/sdk
TypeScript SDK
typescript
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { createSmitheryUrl } from "@smithery/sdk"
const config = {
"NFD_API_URL": "https://api.nf.domains",
"ALGORAND_ALGOD": "https://testnet-api.algonode.cloud",
"ALGORAND_TOKEN": "",
"ITEMS_PER_PAGE": 10,
"TINYMAN_ACTIVE": false,
"ULTRADE_ACTIVE": false,
"VESTIGE_ACTIVE": false,
"VESTIGE_API_URL": "https://api.vestigelabs.org",
"ALGORAND_INDEXER": "https://testnet-idx.algonode.cloud",
"ALGORAND_NETWORK": "testnet",
"ALGORAND_ALGOD_API": "https://testnet-api.algonode.cloud/v2",
"ALGORAND_ALGOD_PORT": "",
"ALGORAND_INDEXER_API": "https://testnet-idx.algonode.cloud/v2",
"ALGORAND_AGENT_WALLET": "",
"ALGORAND_INDEXER_PORT": ""
}
const serverUrl = createSmitheryUrl("https://server.smithery.ai/@GoPlausible/algorand-mcp", config, "your-smithery-api-key")
const transport = new StreamableHTTPClientTransport(serverUrl)
// Create MCP client
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
const client = new Client({
name: "Test client",
version: "1.0.0"
})
await client.connect(transport)
// Use the server tools with your LLM application
const tools = await client.listTools()
console.log(`Available tools: ${tools.map(t => t.name).join(", ")}`)
Configuration Schema
Full JSON Schema for server configuration:
json
{
"type": "object",
"properties": {
"NFD_API_URL": {
"type": "string",
"default": "https://api.nf.domains",
"description": "NFDomains API URL"
},
"ALGORAND_ALGOD": {
"type": "string",
"default": "https://testnet-api.algonode.cloud",
"description": "Algod node base URL"
},
"ALGORAND_TOKEN": {
"type": "string",
"default": "",
"description": "Algorand API token (optional)"
},
"ITEMS_PER_PAGE": {
"type": "string",
"default": 10,
"description": "Number of items per page for paginated responses"
},
"TINYMAN_ACTIVE": {
"type": "boolean",
"default": false,
"description": "Tinyman is active"
},
"ULTRADE_ACTIVE": {
"type": "boolean",
"default": false,
"description": "UltraDe is active"
},
"VESTIGE_ACTIVE": {
"type": "boolean",
"default": false,
"description": "Vestige is active"
},
"VESTIGE_API_URL": {
"type": "string",
"default": "https://api.vestigelabs.org",
"description": "Vestige API URL"
},
"ALGORAND_INDEXER": {
"type": "string",
"default": "https://testnet-idx.algonode.cloud",
"description": "Indexer base URL"
},
"ALGORAND_NETWORK": {
"type": "string",
"default": "testnet",
"description": "Algorand network to connect to, e.g., testnet or mainnet"
},
"ALGORAND_ALGOD_API": {
"type": "string",
"default": "https://testnet-api.algonode.cloud/v2",
"description": "Algod API endpoint URL"
},
"ALGORAND_ALGOD_PORT": {
"type": "string",
"default": "",
"description": "Algod node port (optional)"
},
"ALGORAND_INDEXER_API": {
"type": "string",
"default": "https://testnet-idx.algonode.cloud/v2",
"description": "Indexer API endpoint URL"
},
"ALGORAND_AGENT_WALLET": {
"type": "string",
"default": "",
"description": "Algorand agent active wallet"
},
"ALGORAND_INDEXER_PORT": {
"type": "string",
"default": "",
"description": "Indexer port (optional)"
}
}
}