Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
作者提供的说明(英文原文)
AI-native crypto trading MCP server — market data, orders, grid strategies & DeFi
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"openmm": {
"command": "npx",
"args": [
"-y",
"@qbtlabs/openmm-mcp"
]
}
}
}在终端中运行这条命令
claude mcp add openmm -- npx -y @qbtlabs/openmm-mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"openmm": {
"command": "npx",
"args": [
"-y",
"@qbtlabs/openmm-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"openmm": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@qbtlabs/openmm-mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日
发布者(adacapo21)不是仓库所有者(QBT-Labs);可能是其他人代为上架的
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 0 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.5)于8个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Finance Toolkit, SolidInvoice, Korea Tax Calculator
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
📚 [Documentation](https://docs.openmm.io) · 🤖 [AI Skills Portal](https://agents.openmm.io) · 🔌 [API Reference](https://api.openmm.io)
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents via any MCP client.
| Option | Best For | API Keys | Payments |
|---|---|---|---|
| Local (npm) | Full control, your own keys | Encrypted vault | Free |
| Hosted (mcp.openmm.io) | No setup, pay-per-use | Not needed for public data | x402 USDC |
Prerequisites: Node.js 20 or later.
npm install -g @qbtlabs/openmm-mcp
openmm-mcp --setup
The setup wizard writes the correct MCP config for your client (Claude Desktop, Claude Code, Cursor, Windsurf). No credentials are stored in config files — only the socket path.
openmm-init
This creates an encrypted vault at ~/.openmm/vault.enc containing your wallet key and exchange API credentials. You'll set a password, generate (or import) a wallet, and optionally add exchange keys.
openmm serve
Type your vault password once. The unified socket starts at /tmp/openmm.sock — all MCP clients connect here. No credentials exist in any config file.
If you prefer to edit config files directly instead of using --setup:
| Client | Config file |
|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Claude Code | ~/.claude.json |
| Cursor | .cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
{
"mcpServers": { "openmm": { "command": "node", "args": ["/path/to/openmm-mcp/dist/index.js"], "env": { "MCP_TRANSPORT": "stdio", "OPENMM_SOCKET": "/tmp/openmm.sock", "PAYMENT_SERVER": "https://mcp.openmm.io", "X402_TESTNET": "true" } } } }
Replace /path/to/openmm-mcp with the actual install path. For Claude Desktop, use the full path to node (e.g. from which node) to avoid nvm/PATH issues.
Tip: Run
openmm-mcp --setupinstead — it writes the correct absolute paths automatically.
No API keys. No private keys. No passwords. Just the socket path.
You can skip the vault and pass API keys directly in the env block:
{
"mcpServers": { "openmm": { "command": "npx", "args": ["@qbtlabs/openmm-mcp"], "env": { "MEXC_API_KEY": "your_key", "MEXC_SECRET": "your_secret" } } } }
The vault strengthens every scenario — nothing sensitive exists in any config file, process environment, or client memory.
| Client | Without vault | With vault |
|---|---|---|
| Claude Desktop | API keys in env | Only OPENMM_SOCKET |
| Claude Code | API keys in env | Only OPENMM_SOCKET |
| Cursor | API keys in env | Only OPENMM_SOCKET |
| Windsurf | API keys in env | Only OPENMM_SOCKET |
All clients connect to the same running openmm serve — one vault, one socket, any client.
Connect to mcp.openmm.io — no local installation needed for public data. Pay per tool call with USDC on Base.
AI Agent (Claude / Cursor / Windsurf)
│ MCP stdio — no keys in config ▼ MCP Client Process (reads OPENMM_SOCKET — credentials never here) │ Unix socket /tmp/openmm.sock (mode 0600) ▼ openmm serve — unified vault process ┌──────────────────────────────────┐ │ ~/.openmm/vault.enc │ │ AES-256-GCM + PBKDF2 │ ← wallet key + exchange keys, one vault │ │ │ │ Policy Engine │ ← maxPerTx, maxPerDay, allowedChains │ (checked before key is touched) │ │ │ │ │ signAndWipe() │ ← key used inline, wiped from memory └──────────────────────────────────┘ │ EIP-3009 signature only ▼ mcp.openmm.io → x402 verification → Base L2 settlement
| Property | How |
|---|---|
| Keys encrypted at rest | AES-256-GCM + PBKDF2 in ~/.openmm/vault.enc |
| Keys never in client memory | MCP process only holds socket path |
| Keys never in config files | No API keys, no private keys anywhere in config |
| Process isolation | Signing happens in openmm serve, not in the AI agent process |
| Policy enforcement | Spending limits checked before private key is accessed |
| Memory safety | signAndWipe() — key used once, goes out of scope immediately |
402 Payment Required with priceopenmm serve signs EIP-3009 authorization (gasless — no ETH needed)| Category | Tools | Price (USDC) |
|---|---|---|
| Free | list_exchanges | $0.00 |
| Read | get_ticker, get_orderbook, get_trades, get_ohlcv, get_balance, list_orders, get_cardano_price, discover_pools, get_strategy_status | $0.001 |
| Write | create_order, cancel_order, cancel_all_orders, start_grid_strategy, stop_strategy | $0.01 |
| Tool | Description | Parameters |
|---|---|---|
| Market Data | ||
list_exchanges | List supported exchanges | — |
get_ticker | Real-time price, bid/ask, spread, volume | exchange, symbol |
get_orderbook | Order book depth (bids/asks) | exchange, symbol, limit? |
get_trades | Recent trades with buy/sell summary | exchange, symbol, limit? |
get_ohlcv | OHLCV candlestick data | exchange, symbol, timeframe?, limit? |
| Account | ||
get_balance | Account balances (all or filtered) | exchange, asset? |
list_orders | Open orders (all or by symbol) | exchange, symbol? |
| Trading | ||
create_order | Place limit or market order | exchange, symbol, type, side, amount, price? |
cancel_order | Cancel order by ID | exchange, symbol, orderId |
cancel_all_orders | Cancel all orders for a pair | exchange, symbol |
| Cardano DEX | ||
get_cardano_price | Aggregated token price from DEXes | symbol |
discover_pools | Discover direct ADA pools via Minswap and SundaeSwap | symbol |
| Strategy | ||
start_grid_strategy | Start grid trading | exchange, symbol, lowerPrice, upperPrice, gridLevels?, totalAmount |
stop_strategy | Stop a running strategy | strategyId, cancelOrders? |
get_strategy_status | Get strategy status | strategyId |
| Command | Description |
|---|---|
openmm-init | Create vault, generate/import wallet, add exchanges |
openmm-init --import | Create vault with an existing private key |
openmm serve | Unlock vault, start unified socket |
openmm-status | Show vault, socket, wallet, and exchange status (no password) |
| Command | Description |
|---|---|
openmm-exchange list | List configured exchanges |
openmm-exchange add | Add exchange credentials |
openmm-exchange remove | Remove exchange credentials |
Supported exchanges: mexc, gateio, bitget, kraken, binance, coinbase, okx
| Command | Description |
|---|---|
openmm-wallet info | Show wallet address and chain |
openmm-wallet set | Set wallet credentials |
openmm-wallet export | Display private key (requires confirmation) |
| Command | Description |
|---|---|
openmm-policy show | Show current policy |
openmm-policy set max-per-tx | Max USDC per transaction |
openmm-policy set max-per-day | Max USDC per day |
openmm-policy set allowed-chains | Comma-separated chain IDs |
openmm-policy reset | Clear all policy limits |
| Command | Description |
|---|---|
openmm-vault info | Show vault metadata |
openmm-vault change-password | Change vault password |
openmm-vault export | Export all credentials (dangerous) |
openmm-vault destroy | Delete the vault |
Check BTC price:
"Get me the BTC/USDT ticker on MEXC"
Place an order:
"Buy 0.1 ETH at $2400 on Kraken"
Start grid strategy:
"Start a grid strategy on MEXC for INDY/USDT between $0.10 and $0.15 with 10 levels and $500 total"
Check Cardano token:
"What's the current price of SNEK on Cardano DEXes?"
~/.openmm/vault.enc/tmp/openmm.sock mode 0600 — the socket is the authentication boundaryopenmm serve process via IPCgit clone https://github.com/QBT-Labs/openMM-MCP.git
cd openMM-MCP npm install npm run typecheck npm run lint npm test npm run build
MIT
A hosted deployment is available on Fronteir AI.