Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Description from the maker (original English)
Your AI writes Go trading strategies; kdraigo backtests them on one-minute Binance and Bybit data.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.kdraigo.com/mcpRun this in your terminal
claude mcp add --transport http kdraigo https://mcp.kdraigo.com/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"kdraigo": {
"url": "https://mcp.kdraigo.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"kdraigo": {
"type": "http",
"url": "https://mcp.kdraigo.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.kdraigo.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified against the domain kdraigo.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 1363 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.27.0) reached the registry today.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Finance Toolkit, SolidInvoice, Korea Tax Calculator
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
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.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Model Context Protocol server for the kdraigo algorithmic trading platform. Drop one binary into your mcpServers config and Claude Code (or any MCP client) can scaffold strategies, run backtests, fetch analytics, and iterate end-to-end against the kdraigo backend.
Two ways to use it:
https://mcp.kdraigo.com/mcp: add that URL to claude.ai, ChatGPT, Gemini CLI or Claude Code as a remote MCP server, sign in on kdraigo.com (Google or wallet), and nothing runs on your machine. See Hosted server.kdraigo.com with your Ed25519 key.go install github.com/kdraigo/kdraigo_mcp/cmd/kdraigo-mcp@latest
go install reports the installed release tag automatically. From a clone, use make install (or make build) to stamp the version from your local git tag.
Verify (prints the release tag):
kdraigo-mcp version
You need an Ed25519 API key: create one on kdraigo.com under Account → API keys (kdraigo.com/account/api-keys). It gives a key_id (UUID) and a hex-encoded private_key, shown once.
Create ~/.kdraigo/config.yaml:
auth:
key_id: "00000000-0000-0000-0000-000000000000" private_key: "<128-hex-char-ed25519-private-key>" endpoint: "https://kdraigo.com" # optional; this is the default
Override the config path with KDRAIGO_CONFIG if you need a non-default location.
claude mcp add --scope user kdraigo -- kdraigo-mcp
Other MCP clients (or a project's .mcp.json) take the usual entry:
{
"mcpServers": { "kdraigo": { "command": "kdraigo-mcp" } } }
Restart the client. The tools below appear under the kdraigo server: 78 by default, 80 with the replay switch.
The two replay tools, create_backtest_session and run_backtest_stream, are off unless the server runs with KDRAIGO_MCP_ENABLE_REPLAY=1. They step candles through a session without running any strategy code, so they are not how a strategy is backtested. A strategy runs as its own program through dev_sdk: locally with go run ., or in the cloud workspace with workspace_run. A replay left parked also holds one of the account's session slots for up to an hour.
kdraigo-mcp install-skill # ~/.claude/skills/<name>/SKILL.md
kdraigo-mcp install-skill --project # /.claude/skills/ /SKILL.md
The skills are built into the binary, so they always match its tools. Restart Claude Code to load them. Releases before v1.1.0 wrote flat ~/.claude/skills/ .md files that Claude Code never loaded; the installer names any it finds so you can delete them.
kdraigo-strategy — open the research lab → write the hypothesis → check what was already done → run (go run . or the cloud workspace) → report → drill down → record → hand off, how to judge a result, and the pitfalls.kdraigo-indicators — choose the right technical indicator by intent and wire it via the SDK.Results come back as a few header lines and tab-separated tables, with no JSON, so a page of rows fits the client's tool-output limit. A result stops at about 60 KB and its last line says how to get the rest (offset, or save_to for orders).
| Tool | What it does |
|---|---|
get_sdk_docs | Returns the embedded dev_sdk reference. Pass section to scope. |
get_indicator_docs | Deep per-indicator reference (purpose, calculation, signals, usage). Pass name to scope to one indicator or category. |
scaffold_strategy | git clones a template from example_strategy into a target dir. |
get_session_report | A backtest's or live session's results in one call: return, drawdown, return/DD, P&L split, trades and win rate per side, average R with its standard error, net without the 5 best trades, losing streak, time underwater, daily Sharpe/Sortino/Calmar, a table per instrument, P&L per month, and the platform's warnings (unfinished run, missing candles, few trades, no stops, open positions, concentration). |
get_trades | Every trade with entry, exit, net, initial stop and R; filter, sort by net or R, or save_to a CSV. Needs analytics_service with report version 2. |
get_breakdown | Trades grouped by period, instrument, side, exit kind, holding time, weekday or hour, each group with win rate, net, profit factor and R. |
list_sessions | The caller's backtest sessions, newest first, with status and progress. |
list_live_sessions | The caller's live trading bots (those that send telemetry): status, last heartbeat, uptime and the wallet now against the start. |
get_session_detail | One backtest's record: window, progress, starting wallets, instruments with fills and fees. |
get_live_session | One live bot now: its open positions valued at the mark price, what protects each (resting stop and take-profit), the wallet and its last orders. |
get_session_orders | Orders filtered by instrument, status, role and time; with_reason adds the strategy's reason and logs; save_to writes every match to a local CSV. Takes session_type=live too. |
get_session_positions | Futures positions a session held, paged, with open and liquidated counts (empty for spot). |
get_session_funding | Funding ledger, one row per settlement, paged, with totals (empty for spot). |
update_session_metadata | Patches name, notes, tags, favorite. |
delete_session | Removes a session and its data. |
get_analytics_types | Lists available metric types (equity, drawdown, trading_frequency, etc.). |
get_analytics_series | Time-bucketed series for a session metric, whole session or one instrument; at most 2,000 buckets. |
get_candles | OHLCV from data_provider (public endpoint, no signing). |
get_flow | Trade flow per bar from data_provider (public): taker buy/sell volume and counts, delta, VWAP, large prints; on perpetuals liquidations, open interest, funding, mark and index (null before collection). CSV by default; fields picks columns, at looks up up to 1,000 times in one call. |
get_positioning | Futures positioning per bar from data_provider (public): open interest, all-account and top-trader long/short ratios, taker buy/sell ratio; 5-minute periods back to 2020; null = not published. CSV by default; fields picks columns, at looks up up to 1,000 times in one call. |
workspace_create | Starts a cloud workspace from a template (basic, with-indicators, with-risk-manager, with-atr-bracket) on a dev_sdk version; with lab, its runs are recorded in that research lab. |
workspace_list | The caller's workspaces. |
workspace_files | A workspace's files with sizes, versions and who wrote each (the Lab or API). |
workspace_read_file | A file's full content, then its version. |
workspace_write_file | Creates or replaces a file (flat .go files; the platform owns go.mod). With base_version, a file the user changed in the Lab since is refused, not overwritten. |
workspace_delete_file | Deletes a file; with version, only that version. |
workspace_build | Compiles on a sandbox machine; returns import-check or compiler errors as file:line: message. |
workspace_run | Builds and runs on the sandbox machine with a key minted for the run; waits up to wait s and names the backtest sessions it made. Takes your own env. |
workspace_run_status | A build's or run's status, sessions and last lines of output; wait follows one still going. |
workspace_logs | A run's output, paged by byte offset (capped at 1 MB per run). |
workspace_stop | Stops a run still going; its key is revoked. |
workspace_runs | A workspace's builds and runs, newest first. |
workspace_delete | Deletes a workspace with its files and run history; its sessions stay. |
workspace_set_lab | Puts a workspace in a research lab (or none): its runs are recorded there from then on. |
lab_list / lab_create | The caller's research labs; a new one with a brief to fill, blank or from a template (futures-trend, spot-accumulation). |
lab_open | A lab at the start of a session: brief, last handoff, open experiments, verdicts, recent runs with their results, lessons. |
lab_check | What was already done like a planned run: an exact repeat (with workspace_id: same code, values, data and window), experiments on the same scope with their verdicts, related notes. |
lab_lint | A lab's check-up: a brief never written, too long or older than the latest verdict; experiments never decided; unfiled runs; links that reach nothing; work not handed off. |
lab_search | Full-text search over notes, experiments and lessons, one lab or all. |
lab_note_read / lab_note_write | A note, the brief or a lesson; writes take base_version so a change made in the website is refused, not lost. |
lab_handoff | Where this session stopped, shown first by the next lab_open. |
experiment_save / experiment_register / experiment_activate / experiment_decide | Draft an experiment (hypothesis, mechanism, protocol, scope), freeze it before its deciding runs, file the lab's runs under it, record its verdict. |
lab_runs / lab_file_runs | A lab's recorded runs with their results; file runs under an experiment. |
vault_pull / vault_push | Local only: a lab as a folder of markdown files Obsidian opens, and its edits sent back (see Vault below). |
syndicate_list / syndicate_open | The user's syndicates (groups that share labs), their members and labs. |
syndicate_create / syndicate_join / syndicate_leave | Make one (Verified or Pro), join one with an invite code, leave one. Invites and roles are done on the website. |
experiment_publish | A decided experiment as a frozen snapshot with verified result cards (and optionally its run's code), as a draft or to a syndicate. Publishing to everyone is the user's click on the website. |
library_search / library_read | The research library: what others published to everyone or to the user's syndicates, with filters (pair, timeframe, outcome, pre-registered, has code). |
library_fork | A publication into the user's own lab as a new draft, with its notes; with workspace=true its code goes into a new cloud workspace. |
widget_types | The widget catalog: each type, its params (allowed values, defaults) and an example. |
board_list / board_open | The user's boards (and their syndicates', as syndicate:board); a board's widgets with ids, places and params. |
board_create | A board for the user, or in a syndicate they write in. |
widget_add / widget_update / widget_remove | Add, change or remove one widget; every write is checked against the catalog and a refusal names the field. |
board_set_layout | Move and resize several widgets at once on the 12-column grid. |
script_reference | The kdscript language guide: syntax, every built-in, inputs, drawing calls, examples. |
script_list / script_open | The user's chart scripts (and their syndicates'); a script's source, inputs, plots and version. |
script_check | Check a draft without saving it: problems by line and column, or its inputs and plots. Nothing runs. |
script_save | Save a new script, or over an existing one (the newest version unless base_version is given); checked first. |
script_preview | Run a script on the newest bars of a pair, isolated on the platform: each plot's newest values, first time, min and max, or where it failed. |
script_remove | Delete a script that no board draws. |
|
Only the beginning is shown; read the rest in the repo