TradeOnyx

io.tradeonyx由 tradeonyx.io 發布官方發布者v1.0.0更新於 Oct 24, 2026

Trading journal with pattern detection: log trades by voice, query your own history.

已驗證Streamable HTTP可網頁執行金融知識與記憶資料與分析

概覽

AI 產生的概覽

TradeOnyx 是託管的交易日誌 MCP 伺服器,讓助理記錄交易、回讀你的歷史,並查詢你自己交易中的規律。

可以做什麼
建立、編輯、平倉和刪除交易,並為交易附加截圖;讀取和更新交易後檢討與 AI 交易分析;觸發券商同步,列出帳戶與設定(唯讀)。撰寫、搜尋和讀取依日期歸檔的日誌條目,設定或清除預先規劃的交易劇本,並管理附件。管理策略劇本、具名策略、標籤和紀律規則,包括刪除與封存。讀取快取的 AI 產物:每日簡報、市場熱度、經濟事件與新聞分析、每週規律敘述與建議,以及每週摘要。取得彙總統計和依標籤的表現(僅 Pro Plus)。
適用情境
適合在 TradeOnyx 中記交易日誌的使用者,希望用對話方式讓助理記錄交易和檢討,或根據自己的交易歷史而非泛泛的市場評論來回答問題。
執行需求
透過 HTTP 與 JSON-RPC 2.0 存取的遠端端點,使用 Authorization 標頭中的 Bearer 權杖驗證(支援遠端連接器的用戶端也可走 OAuth 流程)。需要 TradeOnyx 帳戶,以及有效的 7 天連接器試用、Pro 或 Pro Plus 方案;四個批次彙總工具需要 Pro Plus。有每日呼叫上限(試用 30 次、Pro 150 次、Pro Plus 2000 次)。
安裝前請注意
權杖擁有與你本人登入相同的日誌存取權限;它只顯示一次,無法找回,只能替換或撤銷。許多工具會寫入、修改或刪除資料,包括硬刪除交易、策略和標籤,以及串聯刪除違規紀錄歷史。AI 功能會把分析的文字傳送給位於美國的處理方。沒有有效試用或付費方案時連接器會被拒絕,價格見服務商的定價頁面。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 TradeOnyx,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.tradeonyx%2Ftradeonyx/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "tradeonyx": {
      "type": "http",
      "url": "https://tradeonyx.io/mcp"
    }
  }
}

README

TradeOnyx MCP Server

Connect TradeOnyx to Claude, ChatGPT, Gemini or any other MCP-capable assistant. Log trades by voice, have the assistant read your journal back to you, and let it ground its answers in your actual trading history instead of guessing.

TradeOnyx is a trading journal with pattern detection: it imports trades from 40 brokers and runs 28 detectors over your own history to surface what repeats in your trading. This repository documents its MCP server. It contains no product code.

49 tools · JSON-RPC 2.0 over HTTP · hosted in Germany


Endpoint

https://tradeonyx.io/mcp

Transport is HTTP with JSON-RPC 2.0. Authentication is a Bearer token in the Authorization header. The server implements initialize, tools/list and tools/call, and speaks protocol version 2025-06-18.

An unauthenticated call answers honestly rather than hanging:

bash
curl -s -X POST https://tradeonyx.io/mcp \  -H "Content-Type: application/json" \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# {"jsonrpc":"2.0","id":null,"error":{"code":-32001,"message":"Unauthorized"}}

Getting a token

  1. Create an account at tradeonyx.io. The account is free and asks for no payment details.
  2. Open Settings → Integrations and start the 7-day connector trial. A free account can start it once. After it runs out the connector needs Pro or Pro Plus; the journal, the broker imports and the tax export stay free either way. A call made without an active trial or plan is refused with a message saying so, never with a silent empty result.
  3. On the same screen, create an MCP token.
  4. Copy it immediately. The raw token is shown once; only a SHA-256 hash is stored, so a lost token cannot be recovered, only replaced.
  5. Revoke any token from the same screen at any time.

Tokens carry 256 bits of entropy. Treat one like a password: it grants the same access to your journal that you have.

Connecting an assistant

Any client that speaks MCP over HTTP works. For a client configured through a JSON file, the shape is:

json
{  "mcpServers": {    "tradeonyx": {      "url": "https://tradeonyx.io/mcp",      "headers": {        "Authorization": "Bearer YOUR_TOKEN_HERE"      }    }  }}

Assistants that support remote MCP connectors directly (Claude's Connectors, for example) can add the endpoint through their own UI, including an OAuth flow, so no token needs to be pasted by hand.

What you can do with it

A few things people actually use it for:

  • Log a trade in a sentence. "I bought 0.5 lots EURUSD at 1.0840, stop at 1.0810, because the London range broke upward." The assistant fills the fields and writes the reasoning into the journal next to the trade.
  • Write the evening review by talking. The assistant reads back the day's trades, asks what you were thinking, and files the answers as a journal entry.
  • Ask what actually happened. "Which of my setups lost money this month, and what did those trades have in common?" — grounded in your own rows, not in a guess.
  • Prepare the session. Pull the daily briefing and the planned playbooks before the open.

Tools

49 tools. 45 need an active connector trial, Pro or Pro Plus; the 4 bulk aggregations need Pro Plus. The Plan column below says which.

Daily tool-call caps, counted per UTC day and shown in the app:

PlanCalls per day
7-day trial30
Pro150
Pro Plus2000

A call over the cap comes back as a normal tool result with isError: true, naming the cap and when it resets, so an assistant can say what happened instead of failing silently. It is HTTP 200: a cap is a business rule, not a malformed request, and the specification's own worked example of a tool execution error is an upstream rate limit.

How errors arrive

Two levels, and which one you get tells you whether the fix is in your arguments or in the data:

  • Wrong arguments come back as a JSON-RPC error with code -32602 and data.code = "invalid_arguments". That covers an unknown tool, an argument name the tool does not accept, a value outside a declared enum, and a value past a declared maxLength / maxItems / maximum. Everything in that list is declared in the inputSchema you already hold, so a client can correct it without asking.
  • Everything else comes back as a tool result with isError: true and a message in content: a row that does not exist, a value the database will not store, a plan that does not include the tool, the daily cap.

Both are HTTP 200, because the transport requires exactly one JSON object per request. Values past a declared bound are refused, not shortened: a 5000 character note is rejected with the limit named rather than stored as its first 2000 characters, so what you keep is what you sent.

Accounts

ToolPlanDescription
account_listTrial / ProList the user's trading accounts (id / name / type / is_active / FIFO-vs-LIFO). The is_active flag points at the dashboard's active account, which...
settings_getTrial / ProRead the account-level limits the discipline checks and the weekly digest enforce: capital, risk per trade, daily and weekly loss limits, monthly goal, whether overnight positions are allowed, timezone. Percentages come back as percentages plus risk_per_trade_amount in the account currency. Read-only: these cannot be changed through the connector, and risk_per_trade on the strategy tools is a per-strategy annotation that does not move this budget.

Attachments

ToolPlanDescription
attachment_upload_link_createTrial / ProMint a single-use, 10-minute-TTL browser-upload link for a screenshot. Use this when the user shares an image blob you cannot encode or URL — commo...

Broker sync

ToolPlanDescription
broker_sync_triggerTrial / ProManually trigger a sync on an existing broker connection (Bybit, Alpaca, Binance, etc.). Pulls latest fills, FIFO-pairs Buy/Sell legs, persists rou...

Daily briefing

ToolPlanDescription
briefing_getTrial / ProRead the cached daily AI briefing for a market category (gbpusd, eurusd, forex, general, crypto). Returns {briefing: null} if no briefing has b...

Economic events

ToolPlanDescription
econ_analysis_getTrial / ProRead the cached AI analysis for one economic-calendar event by event_id. Returns {analysis: null} when no AI run exists for the event. Includes...
econ_analysis_listTrial / ProList recent cached economic-event AI analyses, newest first. Optional symbol filters by case-insensitive substring on pairs_affected. Returns u...

Journal

ToolPlanDescription
journal_attachment_listTrial / ProList every screenshot attached to one of the user's journal entries. Returns id, public URL, caption, mime type and uploaded_at for each attachment.
journal_attachment_uploadTrial / ProAttach a screenshot to one of the user's journal entries. PREFERRED PATHS (in priority order): 1. If the user shared an HTTPS URL of the image (Tra...
journal_entry_getTrial / ProRead the journal entry for a specific date (or null if none).
journal_entry_listPro PlusList journal entries within a date range. Pro Plus only.
journal_entry_searchTrial / ProSearch the user's own journal entries by words or phrases. Multiple words are ANDed; wrap a phrase in double quotes to match it in order. Searches...
journal_entry_upsertTrial / ProCreate or update the journal entry for a date. Required: date (YYYY-MM-DD). Pass any subset of the six markdown sections — others are left unchange...
journal_planned_playbook_clearTrial / ProDrop every planned-playbook for a calendar day. Idempotent — returns removed_count=0 if nothing was planned. Returns journal_id=null if the...
journal_planned_playbook_setTrial / ProSet the morning-plan playbooks for a calendar day. Replaces the existing set atomically — idempotent on re-call. Creates the JournalEntry if one do...

Market data

ToolPlanDescription
market_heat_getTrial / ProRead the cached AI market-heat read (hot / neutral / cold) for a category and date. Companion to briefing_get — heat reads the calendar pressure (h...

News

ToolPlanDescription
news_analysis_getTrial / ProRead the cached AI analysis for one news headline by news_id. The analysis cache is global (shared across users), so you may see analyses written b...
news_analysis_listTrial / ProList recent cached news analyses, newest first. Optional symbol filters by case-insensitive substring on the pairs_affected column (e.g. 'EURUS...

Patterns

ToolPlanDescription
pattern_narrative_getTrial / ProRead the weekly cross-pattern Onyx-Engine AI narrative for the caller. One artefact per (user, ISO-week); the cache rotates automatically on Monday...
pattern_recos_getTrial / ProRead the weekly cross-detector action-recos for the caller. Sister of pattern_narrative_get — same cache rotation, but the output is a strict list...

Playbooks

ToolPlanDescription
playbook_createTrial / ProCreate a new strategy playbook with entry/exit criteria. Required: name (max 80 chars). description / rules / entry_criteria / exit_criteria are ma...
playbook_deleteTrial / ProSoft-delete a playbook (sets active=false). Historical trade attribution stays intact — the playbook just hides from the active picker. Idempotent.
playbook_listTrial / ProList the user's strategy playbooks. optional account_id narrows to playbooks visible on that account (global ones + that account's). Omit to get ev...
playbook_updateTrial / ProModify an existing playbook. Required: playbook_id. Any field omitted is left unchanged. Pass active=false to archive without losing history (same...

Statistics

ToolPlanDescription
stats_summaryPro PlusAggregate performance stats over a recent period (default 30 days): win rate, expectancy, totals. Accepts tag_ids to restrict every figure to trades carrying any of those tags, and date_from / date_to for a named month. Pro Plus only.
tag_performance_getPro PlusPerformance per tag over closed trades: trade count, win rate, gross and net P&L, profit factor, average win, average loss, expectancy. Answers "which of my setups actually makes money". Covers the whole history by default, since a tag needs a sample. Tags with fewer than min_trades (default 5) closed trades come back by name without figures rather than being dropped. A trade with two tags counts under both, so the rows do not sum to the account result. Pro Plus only.

Strategies

ToolPlanDescription
strategy_createTrial / ProCreate a new named Strategy. The first Strategy a user creates auto-becomes the default (assigned to new trades + imports). All payload fields are...
strategy_deleteTrial / ProHard-delete a Strategy. Trades tagged with it have their strategy_id reset to NULL (history preserved). If the deleted row was the default, the nex...
strategy_listTrial / ProList the user's named trading strategies (e.g. 'Forex-Swing', 'Crypto-Scalp'). Each row carries narrative / edge / setups / focus symbols / rules /...
strategy_set_defaultTrial / ProMark a Strategy as the user's default. New trades + imports get auto-tagged with the default. Flips every other Strategy's is_default off.
strategy_updateTrial / ProModify a named Strategy. Pass strategy_id + any subset of the payload fields. A supplied list (setups, symbols_focus, rules, trading_hours) replaces the stored one, so send every entry you want to keep; omit the field to leave it untouched. This is why the tool is annotated destructiveHint: true while strategy_create is not. Editing any field invalidates the AI-context caches that referenced t...

Tags

ToolPlanDescription
tag_createTrial / ProCreate a new tag in the user's library. Required: name (max 40 chars). Idempotent on name — returns existing row with created=false if the tag is a...
tag_deleteTrial / ProHard-delete a tag. Refuses if the tag is still attached to any trades; the error message states how many attachments block the delete.
tag_listTrial / ProList the user's tags (setup / mistake / psychology / custom).
tag_updateTrial / ProRename a tag or change its category / color. Required: tag_id. Returns updated_fields so the caller can confirm which keys persisted. Errors with '...

Trades

ToolPlanDescription
trade_ai_analysis_getTrial / ProRead the cached coach-style AI analysis for one of the user's trades. The analysis is one-shot per trade — once written via the dashboard, every re...
trade_attachment_listTrial / ProList every screenshot attached to one of the user's trades. Returns id, public URL, caption, mime type and uploaded_at for each attachment.
trade_attachment_uploadTrial / ProAttach a screenshot to one of the user's trades. PREFERRED PATHS (in priority order): 1. If the user shared an HTTPS URL of the image (TradingView...
trade_createTrial / ProManually insert a trade (open or closed). Required: symbol, trade_type, volume, open_price. trade_type must be 'BUY' or 'SELL' (uppercase). open_ti...
trade_deleteTrial / ProDelete a trade that was logged manually or through this connector, together with its review, tags, attachments and AI analysis. Broker-imported trades are refused: the next sync would reconcile them against the statement again. Use this to withdraw a trade entered with wrong values, since gross_pl cannot be edited afterwards.
trade_getTrial / ProGet full details of one trade owned by the user.
trade_listPro PlusList the user's trades. Filter by date range, symbol, tag (tag_ids, any-of), direction (trade_type) or open/closed status. Returns up to limit rows (default 100, max 500) sorted by open_time...
trade_review_updateTrial / ProUpsert the post-trade review for a trade. Required: trade_id. Common stumbles: mood_before/mood_after are INTEGERS 1-5 (NOT enum strings like 'calm...
trade_updateTrial / ProEdit user-mutable fields on an existing trade: sl, tp, comment, external_url, playbook_id, strategy_id, target_rr, mfe_price, mae_price. Also closes an open position: send close_price and close_time together on a trade that is still open and was not broker-imported, and gross_pl is derived from the two prices when the instrument is quoted in the account's currency. Broker-truth fields (gr...

Trading rules

ToolPlanDescription
trading_rule_createTrial / ProCreate a new discipline / trading rule. Required: text (the rule label, max 200 chars). optional account_id confines the rule to one account; omit...
trading_rule_deleteTrial / ProDelete one of the user's trading rules. Also removes the record of every time the rule was broken, because the journal's rule-violation entries cascade with it. To stop following a rule but keep that history, set active=false with trading_rule_update instead.
trading_rule_listTrial / ProList the user's discipline / trading rules. optional account_id narrows to rules visible on that account (global + that-account).
trading_rule_updateTrial / ProModify or deactivate a trading rule. Required: rule_id. Pass active=false to soft-delete (rule disappears from picker, history preserved). account_...

Weekly digest

ToolPlanDescription
weekly_digest_getTrial / ProRead one weekly AI digest for the caller. The digest is the editorial Sunday-evening 600-800 word brief. week accepts the ISO Monday date (e.g...

Plans

FreeFree, trial runningProPro Plus
Connector accessnoyes, 7 days, once per accountyesyes
Daily tool calls—301502000
Logging + journal tools—yesyesyes
Bulk aggregations (trade_list, journal_entry_list, stats_summary, tag_performance_get)—nonoyes
Journal, broker imports and tax export in the web appyesyesyesyes

A free account starts the connector trial once, under Settings → Integrations. Before it is started, and after it has run out, the connector answers every call with an explicit refusal naming what to do; it does not return empty results. The web app itself stays free throughout.

Prices and current limits are on the pricing page.

Privacy and security

  • Servers are in Germany and your journal and trades stay in the EU. The AI features send the text they analyse to a processor in the United States; every processor is named in the privacy policy, which is the authoritative list.
  • Tokens are stored as SHA-256 hashes; the raw value exists only in your clipboard.
  • Every tool resolves data through the authenticated user. A token reaches exactly the account it belongs to.
  • Deleting your TradeOnyx account erases the associated data, including the access log for your requests.

Found a security issue? Please report it privately to the address in our security.txt ([email protected]) rather than opening a public issue.

Links

Disclaimer

TradeOnyx is a documentation and analysis tool. It does not provide investment advice or investment brokerage, and it does not generate trading signals. Trading financial instruments can lead to the total loss of the capital invested.

Licence

The documentation in this repository is MIT-licensed. TradeOnyx itself is a commercial product and is not open source.

來源:README.md,提交 ac6697f

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 75%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。