The Dakota Platform MCP server exposes platform data (customers, accounts, transactions) to AI clients like Claude Desktop, Claude Code, and ChatGPT via the Model Context Protocol.
The server is read-only today. Future versions will support orchestration commands (creating transactions, managing accounts).
Hosted Environments
| Environment | URL |
|---|
| Production | https://mcp.dakota.xyz/mcp |
| Sandbox | https://mcp.sandbox.dakota.xyz/mcp |
| Demo | https://mcp.demo.dakota.xyz/mcp |
| Development | https://mcp.dev.dakota.xyz/mcp |
| Local | http://localhost:5734/mcp |
All hosted endpoints are HTTPS-only and require Stytch OAuth authentication.
Configuring Your AI Agent
Claude Desktop
Edit your config at ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"dakota-platform": {
"url": "https://mcp.dakota.xyz/mcp"
}
}
}
Restart Claude Desktop. The Dakota tools should appear in the tool picker, and you’ll be prompted to authenticate on first use.
Claude Code
claude mcp add dakota-platform https://mcp.dakota.xyz/mcp
Verify with claude mcp list. To remove: claude mcp remove dakota-platform.
ChatGPT / Other MCP Clients
Any MCP-compatible client can connect by pointing it at the /mcp endpoint above. The server speaks Streamable HTTP (HTTP + SSE) on a single endpoint:
POST /mcp — client messages
GET /mcp — SSE stream from server
- Required client header:
Accept: application/json, text/event-stream
- Session managed via
Mcp-Session-Id header
Local Development
For engineers running the server locally:
cd platform-mcp
cp .env.example .env # set PLATFORM_API_URL and SESSION_SECRET
make build
make run
Health check: curl http://localhost:5734/health
Required env vars: PLATFORM_API_URL, SESSION_SECRET (min 32 chars).
Optional: PORT (default 5734), LOG_LEVEL (default info), ENVIRONMENT (default development).
Customers
| Tool | Description |
|---|
list_customers | List customers with filtering by name, type, KYB status, and creation date |
get_customer | Get detailed customer information including KYB links and provider statuses |
Orchestration Accounts
| Tool | Description |
|---|
list_onramp_accounts | List onramp accounts (bank transfer → crypto) |
get_onramp_account | Get onramp account details |
list_offramp_accounts | List offramp accounts (crypto → fiat) |
get_offramp_account | Get offramp account details |
list_swap_accounts | List swap accounts (crypto → crypto) |
get_swap_account | Get swap account details |
Transactions
| Tool | Description |
|---|
list_auto_transactions | List auto transactions with filtering by account, status, type, date range |
get_auto_transaction | Get auto transaction details including receipt and blockchain info |
list_one_off_transactions | List one-off offramp transactions (single-use crypto → fiat) |
get_one_off_transaction | Get one-off transaction details |
Example Prompts
Once connected, you can ask your AI agent things like:
- “List the 10 most recent customers that completed KYB this month.”
- “Show me all failed auto transactions for customer
cust_xxx in the past 7 days.”
- “What’s the total volume across all onramp accounts for
cust_xxx?”
- “Get details for offramp account
acct_xxx and summarize its recent activity.”
The agent will pick the right tool, call the MCP server, and synthesize a response from the structured data.
Security Notes
- All connections require authentication via Stytch OAuth.
- The server validates
Origin headers to prevent DNS-rebinding attacks.
- Production endpoints are HTTPS-only.
- The server is read-only — no mutations are possible today.
- Never paste session tokens, API keys, or customer PII into prompts.
Reference