CashPan
Give your AI an allowance: pay approved people within on-chain spending limits.
作者提供的说明(英文原文)
Market analyst tools + AI agent: crypto, US equities, options, Korea, fundamentals, macro, backtests
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
DAEPAK_API_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://daepak.com/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"daepak": {
"command": "uvx",
"args": [
"daepak-mcp"
],
"env": {
"DAEPAK_API_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add --transport http daepak https://daepak.com/mcpclaude mcp add daepak --env DAEPAK_API_KEY=your-value -- uvx daepak-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"daepak": {
"url": "https://daepak.com/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"daepak": {
"command": "uvx",
"args": [
"daepak-mcp"
],
"env": {
"DAEPAK_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"daepak": {
"type": "http",
"url": "https://daepak.com/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"daepak": {
"type": "stdio",
"command": "uvx",
"args": [
"daepak-mcp"
],
"env": {
"DAEPAK_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://daepak.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 Mobiss11 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:DAEPAK_API_KEY
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(2.1.1)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:CashPan, Agentwallet, Dinero en la Mesa — Perp DEX costs & funding
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Give your AI an allowance: pay approved people within on-chain spending limits.
Wallet infrastructure for Ai agents. EVM + Solana. x402 payments. No KYC.
Dinero en la Mesa: live all-in cost (fees + slippage) and funding on 28 perp DEXs. Free, read-only.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Market intelligence tools for any MCP-capable engine — Claude Code, Claude Desktop, or your own agent. Prices, indicators, levels, positioning, the Korean market, US equities, options, backtests, macro (FRED), SEC and OpenDART fundamentals, and your own trading journal. 108 tools, the same ones the product's own analyst uses.
The server describes nothing itself: it pulls the catalogue from GET /v1/tools, so it shows exactly what your key is allowed to call and never drifts from the product.
The same tools are served at https://daepak.com/mcp (Streamable HTTP) with OAuth 2.1: you sign in once in the browser, no key to copy.
claude mcp add --transport http daepak https://daepak.com/mcp
Then /mcp inside Claude Code → daepak → Authenticate. Works the same way as a custom connector in Claude.ai (paste the URL) and in ChatGPT developer mode. For Codex CLI:
[mcp_servers.daepak]
url = "https://daepak.com/mcp"
Prefer a key instead of OAuth (servers, CI)? Send it as a header:
claude mcp add --transport http daepak https://daepak.com/mcp --header "Authorization: Bearer dpk_live_…"
claude mcp add daepak -e DAEPAK_API_KEY=dpk_live_… -- uvx daepak-mcp
Or install it yourself:
pip install daepak-mcp
Get a key on the Keys page of your profile at daepak.com. The free plan includes 2 000 credits a month — enough to build something over an evening.
| variable | default | purpose |
|---|---|---|
DAEPAK_API_KEY | — | your key, dpk_live_…. Required. |
DAEPAK_BASE_URL | https://daepak.com | point at another environment |
DAEPAK_TIMEOUT | 120 | seconds per call |
Nothing else is read. In particular there is no setting that names a user: the account is derived from the key, and a request cannot claim to be someone else.
The catalogue is filtered by your key's scopes — you never see a tool you cannot call.
| scope | tools | what it opens |
|---|---|---|
read:market | 88 | prices, candles, indicators, levels, scores, narratives, derivatives, order book, liquidations, options, US equities, Korean market, fundamentals (OpenDART, SEC), macro (FRED), backtests |
read:personal | 9 | your positions, portfolio, trade journal, catalysts, memory, background tasks |
write:personal | 11 | writing to those same records |
agent:chat | — | full analyst answers, streamed or complete |
Being allowed to read your journal does not allow writing to it. That is a separate scope.
Crypto — get_price, get_price_history, get_levels (support/resistance, Fibonacci, ATR — computed, not drawn), get_indicators, get_score, get_regime, get_derivatives, get_orderbook, get_liquidations, get_fear_greed
Korea — get_kimchi_premium (the Upbit-to-global spread, decomposed into the asset leg and the currency leg), Korean tickers, fresh Upbit listings
US equities — get_stock_quote, get_stock_history, get_stock_levels, get_stock_holders (institutions and insiders), get_us_gap_stats, get_us_movers, get_us_halts, get_us_insiders
Fundamentals from primary sources — get_kr_financials (K-IFRS for any KRX listing, OpenDART), get_us_financials (US-GAAP and IFRS by fiscal year from SEC EDGAR, up to 20 years), compare_financials (Korean and US companies in one schema, USD at the FRED rate), get_kr_insiders, screen_kr (the whole KRX with RS percentiles and foreign-ownership flow), get_kr_rs, list_kr_etfs, backtest_kr_portfolio (against KOSPI)
Macro — get_macro_snapshot (Fed funds, US 2Y/10Y and the curve, broad dollar, USD/KRW, VIX, CPI as YoY, unemployment, Korean overnight rate), get_macro_series (any FRED id with history). Every row carries stale_days; Korean CPI is absent on purpose — FRED's series died in 2023.
Options — get_iv_metrics, get_options_positioning, get_option_structure (payoff and greeks), get_options_backtest
Validation — get_backtest, get_signal_outcomes, get_hit_rate, get_score_history
Arbitrary tokens — resolve_token, get_token_market, get_token_onchain, get_token_holders, for anything outside the watchlist
Research — search_news (RAG over the collected corpus), search_narratives, fetch_url, web_search
The same analyst that answers in the product, over HTTP. It has everything the chat has:
POST /v1/agent/stream | server-sent events — text arrives as it is written |
POST /v1/agent/messages | the complete answer in one response |
GET /v1/agent/resume/{id} | reconnect to a generation already running |
POST /v1/agent/cancel/{id} | stop one |
GET /v1/agent/conversations | your conversations, and /{id} for the messages |
curl -N -X POST https://daepak.com/v1/agent/stream \
-H "Authorization: Bearer dpk_live_…" -H "Content-Type: application/json" \ -d '{"message": "How does BTC look right now?", "mode": "mentor"}'
Conversation memory. The first event carries conversation_id; pass it back and the context continues.
Images. images takes data-URLs, exactly like chat attachments — the agent reads charts and screenshots.
Mentor mode. mode: "mentor" explains how the reading was arrived at, not just the conclusion.
⚠️ A dropped connection loses nothing. Generation continues in the background, the answer still lands in the conversation, and resume replays what you missed. Keep the conversation_id from the first event — that is where you reconnect.
⚠️ suggest (follow-up questions) arrives after done. A client that stops reading at done will never see it. The order is deliberate: the spinner should stop before the suggestions are computed.
Every tool declares its price in the catalogue, so a sequence can be budgeted before it runs. Prices come from measuring the tools in production, not from guessing:
| tier | what | credits |
|---|---|---|
| our database | prices, indicators, levels, candles, narratives | 1 |
| external call | equities, tokens, options, on-chain | 5 |
| embedding, sandbox | news search, code execution | 20 |
A tool nobody has priced yet costs 5, not 1 — an unpriced tool is either an oversight or something heavy, and both are safer to over-charge than to give away.
curl -H "Authorization: Bearer dpk_live_…" https://daepak.com/v1/usage
When the monthly credits run out you get 402 naming two ways forward: a higher plan or the renewal at the start of the month. There is no overage billing — we would rather refuse than send an invoice nobody expected.
The MCP server is a thin shell over a plain REST API.
# catalogue: schema, scope and price for every tool your key can call
curl -H "Authorization: Bearer dpk_live_…" https://daepak.com/v1/tools
curl -X POST https://daepak.com/v1/tools/get_price \ -H "Authorization: Bearer dpk_live_…" \ -H "Content-Type: application/json" \ -d '{"coin": "BTC"}'
{
"tool": "get_price", "credits_used": 1, "credits_left": 1999, "took_ms": 104, "data": { "coin": "BTC", "price": 78017.26, "change_24h": -1.2 } }
Full reference: daepak.com/reference · OpenAPI 3.1: /v1/openapi.json (106 operations, no key needed to read it).
A few things the data will tell you if you look, and which are easy to get wrong:
`401` — the key is missing, revoked, or malformed. Send it as Authorization: Bearer dpk_live_….
`403 scope_required` — the key lacks the scope; the response names which one.
`400 user_id_not_accepted` — the body contained a user_id. The account comes from the key; the field is rejected explicitly rather than ignored, so that a copied example fails loudly instead of quietly returning nothing.
`404 conversation_not_found` — that conversation belongs to another account.
`429` — over the per-minute ceiling for your plan. The minute limit protects the service; the monthly one protects your budget.
`CERTIFICATE_VERIFY_FAILED` — you are running from source without certifi. Install the package instead of the file; the dependency exists for exactly this.
Error messages default to English; send X-Lang: ko or ru for those languages.
MIT