sdp-mcp
Provides 76 tools for enterprise Solana development, enabling stablecoin issuance, payments, trading, wallet management, and compliance screening via natural language.
README
sdp-mcp
76-tool MCP server for the Solana Developer Platform -- stablecoin issuance, payments, trading, wallets, and compliance.
The only MCP bridge to SDP. Built for enterprise Solana development. Covers the full SDP API surface: issue stablecoins and RWAs, move money on/off-chain, trade via DEX aggregation, manage wallets and custody, and screen addresses for compliance -- all from any MCP-compatible AI agent.
SDP is the enterprise gateway to Solana used by Mastercard, Western Union, Worldpay, and other global payment networks.
Tool Count by Family
| Family | Tools | Coverage |
|---|---|---|
| Issuance | 28 | Stablecoins, tokenized deposits, RWAs, templates, deploy, mint, burn, freeze, pause, seize, allowlist, authorities |
| Wallets | 14 | Create, delete, initialize, custody switching, signing configs, balances, public keys, signer verification |
| Projects | 10 | CRUD, member management, project-scoped API keys |
| Payments | 9 | Fiat on/off-ramp, stablecoin transfer, fee estimation, wallet balances, payment policies |
| API Keys | 6 | CRUD, rotation with grace period |
| Trading | 6 | DEX swap quotes, swap execution (Jito bundles), automated vaults (DCA/TWAP/limit/rebalance), FX rates |
| Health | 2 | Service health, dependency readiness |
| Compliance | 1 | Address screening (Chainalysis, Elliptic, TRM Labs) |
| Total | 76 |
Quick Start
npx (zero install)
SDP_API_KEY=your-key npx sdp-mcp
Claude Desktop / Claude Code
Add to claude_desktop_config.json (or .mcp.json):
{
"mcpServers": {
"sdp": {
"command": "npx",
"args": ["-y", "sdp-mcp"],
"env": {
"SDP_API_KEY": "your-key-here",
"SDP_NETWORK": "devnet"
}
}
}
}
Global install
npm install -g sdp-mcp
SDP_API_KEY=your-key sdp-mcp
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
SDP_API_KEY |
Yes | -- | SDP API key for authentication |
SDP_API_URL |
No | https://api.platform.solana.com |
Base URL for the SDP API |
SDP_NETWORK |
No | devnet |
Solana network (devnet, testnet, mainnet-beta) |
Full Tool Reference
Health (2)
| Tool | Description |
|---|---|
sdp_health_check |
Check SDP service health, API version, and uptime. No auth required. |
sdp_health_ready |
Check readiness of all SDP dependencies (database, RPC, custody). |
API Keys (6)
| Tool | Description |
|---|---|
sdp_api_key_list |
List all account-level API keys with permissions and status. |
sdp_api_key_create |
Create a new API key with permission scoping and IP allowlist. |
sdp_api_key_get |
Get details of a specific API key by ID. |
sdp_api_key_update |
Update key name, permissions, or IP allowlist. |
sdp_api_key_delete |
Permanently revoke an API key. |
sdp_api_key_rotate |
Rotate a key with configurable grace period (default 24h). |
Wallets (14)
| Tool | Description |
|---|---|
sdp_wallet_initialize |
Initialize wallet signing with a custody provider (Privy, Fireblocks, BitGo, etc.). |
sdp_wallet_create |
Create a new Solana wallet with optional label and project association. |
sdp_wallet_get |
Get wallet details including public key, balances, and custody provider. |
sdp_wallet_list |
List all wallets with IDs, labels, public keys, and balances. |
sdp_wallet_update |
Update a wallet's label. |
sdp_wallet_delete |
Permanently delete a wallet (ensure zero balance first). |
sdp_wallet_set_default |
Set the default wallet for signing operations. |
sdp_wallet_get_public_key |
Get the base58-encoded public key for a wallet. |
sdp_wallet_get_signing_config |
Get the active custody provider and signing policy. |
sdp_wallet_list_signing_configs |
List all initialized custody providers and their configurations. |
sdp_wallet_aggregate_balances |
Sum token holdings across all wallets, optionally by mint. |
sdp_wallet_list_switch_options |
List available custody providers for migration. |
sdp_wallet_switch_custody |
Migrate signing from one custody provider to another. |
sdp_wallet_signer_check |
Verify custody signing works by sending a memo transaction. |
Projects (10)
| Tool | Description |
|---|---|
sdp_project_list |
List all projects with names, IDs, and creation dates. |
sdp_project_create |
Create a new project as an organizational container. |
sdp_project_get |
Get project details by ID. |
sdp_project_update |
Update project name or description. |
sdp_project_delete |
Permanently delete a project and disassociate resources. |
sdp_project_list_members |
List project members with roles and join dates. |
sdp_project_add_member |
Add a member by email with role assignment. |
sdp_project_remove_member |
Remove a member and revoke their project access. |
sdp_project_list_api_keys |
List API keys scoped to a specific project. |
sdp_project_create_api_key |
Create a project-scoped API key. |
Issuance (28)
| Tool | Description |
|---|---|
sdp_create_stablecoin |
Issue a Token-2022 stablecoin with configurable authorities and supply cap. |
sdp_create_tokenized_deposit |
Issue a tokenized bank deposit (demand, time, savings). |
sdp_create_rwa |
Issue a real-world asset token with transfer restrictions and valuation oracle. |
sdp_get_token_info |
Get token metadata and on-chain state. |
sdp_list_tokens |
List issued tokens, filterable by type. |
sdp_mint_tokens |
Mint new supply to a recipient wallet. |
sdp_issuance_list_templates |
List available token templates (stablecoin, security, custom). |
sdp_issuance_get_template |
Get full template configuration and default parameters. |
sdp_issuance_update_token |
Update token name, symbol, or metadata. |
sdp_issuance_deploy_token |
Deploy a token on-chain (execute mode, SDP signs). |
sdp_issuance_deploy_token_prepare |
Prepare unsigned deployment transaction for external signing. |
sdp_issuance_mint_tokens_prepare |
Prepare unsigned mint transaction for external signing. |
sdp_issuance_burn_tokens |
Burn tokens to reduce supply (execute mode). |
sdp_issuance_burn_tokens_prepare |
Prepare unsigned burn transaction for external signing. |
sdp_issuance_force_burn |
Force-burn from any account using permanent delegate authority. |
sdp_issuance_force_burn_prepare |
Prepare unsigned force-burn transaction. |
sdp_issuance_seize_tokens |
Force-transfer (seize) tokens for regulatory compliance. |
sdp_issuance_seize_tokens_prepare |
Prepare unsigned seizure transaction. |
sdp_issuance_update_authority |
Change token authority (mint, freeze, close, delegate). |
sdp_issuance_update_authority_prepare |
Prepare unsigned authority update transaction. |
sdp_issuance_pause_token |
Globally pause all transfers for a token. |
sdp_issuance_unpause_token |
Resume transfers for a paused token. |
sdp_issuance_freeze_account |
Freeze a specific token account. |
sdp_issuance_unfreeze_account |
Unfreeze a previously frozen account. |
sdp_issuance_list_frozen_accounts |
List all frozen accounts for a token. |
sdp_issuance_manage_allowlist |
List or add entries to a token's transfer allowlist. |
sdp_issuance_remove_allowlist_entry |
Remove an address from the transfer allowlist. |
sdp_issuance_list_token_transactions |
List transactions for a specific token with filtering. |
Payments (9)
| Tool | Description |
|---|---|
sdp_create_onramp |
Fiat-to-stablecoin onramp (Stripe, Circle, MoonPay). |
sdp_create_offramp |
Stablecoin-to-fiat offramp (ACH, SEPA, PIX). |
sdp_transfer_stablecoin |
Transfer stablecoins between wallets with auto ATA creation. |
sdp_get_payment_status |
Check payment status by ID. |
sdp_list_payments |
List payment history with filtering and pagination. |
sdp_estimate_fees |
Estimate fees before executing a payment. |
sdp_payments_get_wallet_balances |
Get SOL, USDC, and all SPL token balances for a wallet. |
sdp_payments_get_wallet_policies |
Get payment policies (allowlist, limits) for a wallet. |
sdp_payments_update_wallet_policies |
Update destination allowlist and transfer limits. |
Trading (6)
| Tool | Description |
|---|---|
sdp_get_swap_quote |
Get best-price swap quotes via DEX aggregation (Jupiter, Raydium, Orca). |
sdp_execute_swap |
Execute a swap with optional Jito bundle for MEV protection. |
sdp_create_vault |
Create an automated trading vault (DCA, TWAP, limit, rebalance). |
sdp_get_vault_info |
Get vault state, performance metrics, and PnL. |
sdp_list_vaults |
List vaults with strategy, status, and owner filtering. |
sdp_get_fx_rate |
Get exchange rates: crypto-crypto, crypto-fiat, fiat-fiat. |
Compliance (1)
| Tool | Description |
|---|---|
sdp_compliance_screen_address |
Screen address against Chainalysis, Elliptic, Range, and TRM Labs. |
Architecture
- @psm/mcp-core-ts -- shared MCP infrastructure (McpAction, output filtering, rate limiting, input validation)
- @modelcontextprotocol/sdk -- MCP protocol transport (stdio)
- zod + zod-to-json-schema -- input validation with auto-generated JSON schemas
- fetch -- HTTP client for SDP API calls (no external HTTP deps)
Security
- API key redacted from error messages and responses
- Output filter strips secrets (API keys, tokens, JWTs) and PII from all responses
- Rate limited to 60 calls/minute
- Input parameter length limits enforced (8KB max per field)
- Control characters stripped from all string inputs
- Tool name injection validation
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。