algorand-mcp
Algorand Local Model Context Protocol (Server & Client)
Install / Use
claude mcp add GoPlausible -- npx -y github:GoPlausible/algorand-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Tags
Skill content
View source on GitHubAlgorand MCP Server
A comprehensive Model Context Protocol (MCP) server that gives AI agents and LLMs full access to the Algorand blockchain. Built by GoPlausible.
Algorand is a carbon-negative, pure proof-of-stake Layer 1 blockchain with instant finality, low fees, and built-in support for smart contracts (AVM), standard assets (ASAs), and atomic transactions.
What is MCP?
Model Context Protocol is an open standard that lets AI applications connect to external tools and data sources. This server exposes Algorand blockchain operations as MCP tools that any compatible AI client can use — Claude Desktop, Claude Code, Cursor, Windsurf, and others.
Features
- Agent wallet — mnemonics stored in a local SQLite database, used by the MCP server to sign on the agent's behalf (mnemonics never returned in tool responses)
- Wallet accounts with human-readable nicknames
- Account creation, key management, and rekeying
- Transaction building, signing, and submission (payments, assets, applications, key registration)
- Atomic transaction groups
- TEAL compilation and disassembly
- Full Algod and Indexer API access
- NFDomains (NFD) name service integration
- x402 HTTP micropayments — automatic discovery and one-call paid requests using the active wallet (USDC/ALGO)
- AP2 tooling for Algorand
- Tinyman AMM integration (pools, swaps, liquidity)
- Haystack Router DEX aggregation (best-price swaps across Tinyman, Pact, Folks)
- Alpha Arcade prediction market trading (browse markets, orderbooks, limit/market orders, positions, claims)
- ARC-26 URI and QR code generation
- Algorand knowledge base with full developer documentation taxonomy
- Per-tool-call network selection (mainnet, testnet, localnet) and pagination
Requirements
- Node.js v20 or later
- npm, pnpm, or yarn
Installation
From npm
npm install -g @goplausible/algorand-mcp
From source
git clone https://github.com/GoPlausible/algorand-mcp.git
cd algorand-mcp
npm install
npm run build
MCP Configuration
The server runs over stdio. There are three ways to invoke it — pick whichever suits your setup:
| Method | Command | When to use |
|---|---|---|
| npx (recommended) | npx @goplausible/algorand-mcp | No install needed, always latest version |
| Global install | algorand-mcp | After npm install -g @goplausible/algorand-mcp |
| Absolute path | node /path/to/dist/index.js | Built from source or local clone |
No environment variables are required for standard use. Network selection, pagination, and node URLs are all handled dynamically per tool call.
OpenClaw
No manual configuration needed — install the @goplausible/openclaw-algorand-plugin npm package and the Algorand MCP server is configured automatically:
npm install -g @goplausible/openclaw-algorand-plugin
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Using npx:
{
"mcpServers": {
"algorand-mcp": {
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Using global install:
{
"mcpServers": {
"algorand-mcp": {
"command": "algorand-mcp"
}
}
}
Using absolute path:
{
"mcpServers": {
"algorand-mcp": {
"command": "node",
"args": ["/absolute/path/to/algorand-mcp/dist/index.js"]
}
}
}
Claude Code
Create .mcp.json in your project root (project scope) or ~/.claude.json (user scope):
{
"mcpServers": {
"algorand-mcp": {
"type": "stdio",
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Or add interactively:
claude mcp add algorand-mcp -- npx @goplausible/algorand-mcp
Cursor
Add via Settings > MCP Servers, or edit .cursor/mcp.json in your project root:
{
"mcpServers": {
"algorand-mcp": {
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Windsurf
Add via Settings > MCP, or edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"algorand-mcp": {
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
VS Code / GitHub Copilot
Edit .vscode/mcp.json in your workspace root, or open Settings > MCP Servers:
{
"servers": {
"algorand-mcp": {
"type": "stdio",
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Cline
Add via the MCP Servers panel in the Cline sidebar, or edit ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json (macOS):
{
"mcpServers": {
"algorand-mcp": {
"command": "npx",
"args": ["@goplausible/algorand-mcp"],
"disabled": false
}
}
}
OpenAI Codex CLI
Create .codex/mcp.json in your project root or ~/.codex/mcp.json for global scope:
{
"mcpServers": {
"algorand-mcp": {
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Open Code
Edit ~/.config/opencode/config.json:
{
"mcp": {
"algorand-mcp": {
"type": "stdio",
"command": "npx",
"args": ["@goplausible/algorand-mcp"]
}
}
}
Any MCP-compatible client
The server speaks the standard MCP stdio protocol. For any client not listed above, configure it with:
- Command:
npx(oralgorand-mcpif globally installed, ornode /path/to/dist/index.js) - Args:
["@goplausible/algorand-mcp"](for npx) - Transport:
stdio
Network Selection
Every tool accepts an optional network parameter: "mainnet" (default), "testnet", or "localnet". Algod and Indexer URLs are built-in for mainnet and testnet via AlgoNode.
Example tool call:
{ "name": "api_algod_get_account_info", "arguments": { "address": "ABC...", "network": "testnet" } }
If no network is provided, tools default to mainnet.
Pagination
API responses are automatically paginated. Every tool accepts an optional itemsPerPage parameter (default: 10). Pass the pageToken from a previous response to fetch the next page.
Agent Wallet
Architecture
The agent wallet is a local SQLite database that the MCP server controls on the agent's behalf. The server holds the mnemonics and signs transactions for the agent — the agent never sees the mnemonics in any tool response.
| Layer | What it stores | Where |
|---|---|---|
| SQLite (wallet.db) | Account rows (address, public_key, nickname, mnemonic, created_at) and the active-account index | ~/.algorand-mcp/wallet.db (mode 0600) |
Threat model. The wallet.db file is the secret. Anyone with read access to it can recover every mnemonic stored in the wallet. The mitigations are filesystem permissions (0600, owner-only), keeping the data directory off shared/world-readable volumes, and treating the data directory like any other secret store (snapshot it carefully, restrict backups, encrypt the host disk for at-rest protection). For Docker deployments, mount ~/.algorand-mcp as a named volume and restrict access to it like you would any secret material.
How it works
Agent (LLM) MCP Server Storage
────────── ────────── ───────
│ │ │
│ wallet_add_account │ │
│ { nickname: "main" } │ │
│ ──────────────────────────► │ generate keypair │
│ │ INSERT (address, public_key, │
│ │ nickname, mnemonic) ──►│ wallet.db
│ ◄─ { address, publicKey, │ │
│ nickname, index } │ │
│ │ │
│ wallet_sign_transaction │ │
│ { transaction: {...} } │ │
│ ──────────────────────────► │ SELECT mnemonic FROM accounts ◄─│
│ │ WHERE address=<active> │
│ │ sign in memory │
│ ◄─ { txID, blob } │ (key discarded after sign) │
│ │ │
- Account creation (
wallet_add_account) — Generates a keypair and inserts a row containing the mnemonic intoaccounts. Returns address, public key, nickname, and index. The mnemonic is never returned. - Active account — One account is active at a time.
wallet_switch_accountchanges it by nickname or index. All signing and query tools operate on the active account. - Transaction signing (
wallet_sign_transaction) — Reads the mnemonic from the DB, signs in memory, returns only the signed blob. - Data signing (
wallet_sign_data) — Signs arbitrary hex data using raw Ed25519 via the@noble/curveslibrary (no Algorand SDK prefix). Useful for off-chain authentication. - Asset opt-in (
wallet_optin_asset) — Creates, signs, and submits an opt-in transaction for the active account in one step.
Backward compatibility (silent migration from OS keychain)
Older installs of this MCP stored mnemonics in the OS keychain (@napi-rs/keyring). On first startup after upgrading, the server runs a one-shot, silent migration:
- For every
accountsrow whosemnemoniccolumn isNULLor empty, it attempts to read the mnemonic from the OS keychain under the service namealgorand-mcpkeyed by the address. - If found, the mnemonic is copied into the DB column.
- The original keychain entry is left in place as a redundant backup; nothing is deleted.
After this completes, the DB is the sole source of truth. The keychain is consulted only as a fallback if the DB still has a NULL mnemonic for an address (e.g., the keychain was unavailable during startup and became available later). All new accounts created after the upgrade are written directly to the DB and never touch the keychain.
Orphan handling (archive, not delete). If an accounts row exists but its mnemonic isn't in the keychain and isn't already in the DB (e.g., the user copied wallet.db to a new machine without also moving the keychain entries, restored from a partial backup, or installed in Docker where the keychain never existed), that row is unusable for signing. Rather than delete it, the server marks the row as archived (UPDATE accounts SET archived = 1 WHERE mnemonic IS NULL OR mnemonic = ''). Archived rows:
- are hidden from the default
wallet_list_accountsresponse - never become the active account (the active-account index is clamped to the end of the remaining active list, or reset to
0if no active accounts remain) - keep their original nickname (a partial unique index
idx_active_nicknameenforces nickname uniqueness only among active rows, so a new `wallet_add_acco
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
84.2kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
73.4kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ruflo
73.0k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
career-ops
72.3kOpen-source AI job search: scan job portals, evaluate listings into a structured A-H report with a global 1-5 score, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Codex, OpenCode, Antigravity…)
