Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Market analyst tools + AI agent: crypto, US equities, options, Korea, fundamentals, macro, backtests
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
DAEPAK_API_KEY「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://daepak.com/mcpClaude 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月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Mobiss11 で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
まだチェックしていません。エンドポイントは順番にチェックしています
まだチェックしていません。エンドポイントは順番にチェックしています
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:DAEPAK_API_KEY
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(2.1.1)がレジストリに届いたのは2 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Foliosio
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read your support inbox, tag conversations and save draft replies from your AI agent. Never sends.
作者のリポジトリから書かれたとおりにコピーしたものです。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