Skip to content
Conduit

mcp server

wdk-mcp-toolkit

Model Context Protocol (MCP) server for WDK (Wallet Development Kit) by Tether. Provides unified blockchain operations through the MCP.

tetherto/wdk-mcp-toolkitcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

Before you start

  • Node.js 20 or newer
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "wdk-mcp-toolkit": {
      "command": "npx",
      "args": [
        "-y",
        "@tetherto/wdk-mcp-toolkit"
      ]
    }
  }
}

same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12

Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs

README

synced Oct 25, 2026

@tetherto/wdk-mcp-toolkit

npm version npm downloads license docs

Note: This package is currently in beta. Please test thoroughly in development environments before using in production.

A simple and secure package to expose WDK (Wallet Development Kit) functionality through the Model Context Protocol (MCP). This package provides a clean API for creating MCP servers that enable AI agents to interact with cryptocurrency wallets across multiple blockchains.

About WDK

This module is part of WDK (Wallet Development Kit) by Tether, which empowers developers to build secure, non-custodial wallets with unified blockchain access, stateless architecture, and complete user control.

For detailed documentation about the complete WDK ecosystem, visit docs.wdk.tether.io.

Installation

npm install @tetherto/wdk-mcp-toolkit @modelcontextprotocol/sdk

Quick Start

import { WdkMcpServer, WALLET_TOOLS, PRICING_TOOLS } from '@tetherto/wdk-mcp-toolkit'
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
import WalletManagerEvm from '@tetherto/wdk-wallet-evm'

const server = new WdkMcpServer('my-wallet-server', '1.0.0')
  .useWdk({ seed: process.env.WDK_SEED })
  .registerWallet('ethereum', WalletManagerEvm, {
    provider: 'https://eth.drpc.org',
  })
  .usePricing()
  .registerTools([...WALLET_TOOLS, ...PRICING_TOOLS])

const transport = new StdioServerTransport()
await server.connect(transport)

Seed Sourcing

When you run the bundled server (wdk-mcp-toolkit serve), the BIP-39 seed is read from the first of these environment variables that is set, so you can keep it out of plaintext config by pointing at a secret manager or protected file:

VariableSeed source
WDK_SEEDThe seed value supplied directly.
WDK_SEED_COMMANDA command whose stdout is the seed, e.g. op read op://Private/wdk-seed.
WDK_SEED_FILEA path to a file whose contents are the seed, e.g. /run/secrets/wdk-seed.

The value is trimmed. If a configured command or file fails, startup aborts with an error; if none are set, the server runs with pricing tools only.

Key Capabilities

  • MCP Server Extension: Extends the official @modelcontextprotocol/sdk server with WDK-specific capabilities
  • Multi-Chain Wallets: Register wallet managers for EVM chains, Bitcoin, Solana, TON, TRON, and more
  • Built-In Tools: Expose wallet, pricing, indexer, swap, bridge, lending, and fiat tools
  • Read/Write Tool Sets: Register read-only tools for safer agent access or write tools for approved transactions
  • Human Confirmation: Use MCP elicitations to require approval before sensitive write operations
  • Extensible Design: Add custom MCP tools alongside WDK tools
  • Wallet Disposal: Release wallet instances on shutdown via WDK's dispose(). Note: JavaScript seed strings are immutable and cannot be reliably zeroized, so disposal frees references rather than guaranteeing secure erasure of the seed from memory.

Compatibility

  • MCP clients with tools support
  • MCP clients with elicitations support for human-approved write operations
  • Node.js projects using ES modules
  • WDK wallet modules and protocol modules registered by the host application

Documentation

TopicDescriptionLink
OverviewMCP Toolkit overview and feature summaryMCP Toolkit Overview
UsageEnd-to-end MCP server and agent integration walkthroughMCP Toolkit Usage
ConfigurationWallets, tokens, protocols, tools, and securityMCP Toolkit Configuration
API ReferenceComplete server and tool referenceMCP Toolkit API Reference

Examples

ExampleDescription
Basic ServerCreate a WDK MCP server with wallet, pricing, indexer, swap, bridge, lending, and fiat tools
LangChain Agent (TypeScript)Connect a TypeScript LangChain agent to the WDK MCP server
LangChain Agent (Python)Connect a Python LangChain agent to the WDK MCP server

For detailed walkthroughs, see the Usage Guide. See all runnable examples in the wdk-examples repository.

Community

Join the WDK Discord to connect with other developers.

Support

For support, please open an issue on GitHub or reach out via email.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

↑↓ navigate openesc close