Wealthapi

eu.wealthapi由 wealthapi.eu 發布v0.1.0更新於 Oct 24, 2026

Read-only MCP server for wealthAPI: portfolio, cash-flow, and dividend insights for AI assistants.

已驗證STDIO僅桌面金融資料與分析

概覽

AI 產生的概覽

讓助理以唯讀方式回答 wealthAPI 帳戶問題:帳戶、現金流、投資組合績效、股利與行情資料。

可以做什麼
這是一個本機 stdio 伺服器,將 wealthAPI REST API 包裝成唯讀工具。涵蓋帳戶與餘額、交易與週期性支出、現金流彙總與儲蓄率、投資組合估值、配置、績效、風險指標與已實現收益、股利歷史、行事曆與殖利率,以及代碼搜尋、報價和基本面資料。它也註冊了月度回顧、儲蓄率檢查、訂閱稽核等引導式提示。
適用情境
當你希望助理直接回答關於自己 wealthAPI 帳戶的日常理財問題,例如支出、投資組合績效、最大持倉、股利收入或分散程度,而不必手動匯出資料時使用。
執行需求
以本機 Node.js 程序執行(從原始碼建置需 Node 20+ 與 pnpm),需在 Claude Desktop 等桌面 MCP 用戶端中設定。需要 wealthAPI 個人 API 權杖,透過 BEARER_TOKEN 環境變數提供,並具備帳戶、投資、交易與個人資料的讀取權限。需要連線至 wealthAPI API 的網路存取。
安裝前請注意
伺服器需要 BEARER_TOKEN 中的 wealthAPI 個人 API 權杖,持有該權杖者可讀取其授權範圍內的帳戶資料。它會向 wealthAPI 正式環境 API 發出請求,投資組合與交易資料會離開本機傳送至該服務。工具雖標示為唯讀,仍應確認權杖權限並維持唯讀範圍。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Wealthapi,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

wealthapi-mcp

A small Model Context Protocol (MCP) server that lets Claude (or any MCP-compatible assistant) answer everyday portfolio questions about your wealthAPI account:

"What did I spend the most money on last month?" "How is my portfolio performing this year?" "Show me my five biggest positions." "Which of my investments lost the most value?"

It runs locally on your machine. Your bearer token never leaves your computer.

What is an MCP server?

MCP is an open protocol that lets an AI assistant call tools you control. The assistant runs in one process (e.g. Claude Desktop); the MCP server runs as a separate process you launch. They talk to each other over stdio using JSON-RPC: the assistant writes a tools/call message to the server's stdin, the server runs the tool and writes the result back to its stdout. That's the whole protocol.

Note the distinction: this is an MCP server, not an MCP plugin. There is no such thing as an MCP plugin — plugins (e.g. Claude Code plugins) extend the assistant itself, while an MCP server is a standalone process the assistant connects to over the protocol. Any MCP-compatible client (Claude Desktop, Claude Code, others) can use this server.

Concretely, this repo is a Node script. When Claude Desktop starts it, the script registers its tools, waits for tool calls, and when one arrives, makes an HTTPS request to the wealthAPI REST API on your behalf and returns a text summary. No state, no database, no server to maintain.

Read more at https://modelcontextprotocol.io.

The tools

Auth is a wealthAPI API token (wapi_key_…) carrying the read scopes (accounts:read, investments:read, transactions:read, profile:read). All tools are read-only.

Accounts & cash flow

ToolWrapsAnswers
list_accountsGET /api/v1/accounts"What accounts do I have?"
get_account_balancesGET /api/v1/accounts/balances"Show my cash balance history"
get_portfolio_valuationGET /api/v1/accounts/valuation (+ historicValuations)"What is my portfolio worth (today / over time)?"
list_transactionsGET /api/v1/transactions"What did I spend most on last month?"
detect_recurring_transactionsGET /api/v1/transactions"What subscriptions / fixed costs do I have?"
list_bookingsGET /api/v1/bookings"Show my buys / sells / dividends"
get_cash_flow_summaryGET /api/v1/cashFlowAnalytics/history"Income vs spending per month"
get_savings_rateGET /api/v1/cashFlowAnalytics/history"What's my savings rate?"

Portfolio & performance

ToolWrapsAnswers
list_investmentsGET /api/v2/investments"What do I own and what is it worth?"
get_gainers_and_losersGET /api/v1/investments/gainersAndLosers"Best / worst performers"
get_portfolio_performancePOST /api/v2/performance"How did my portfolio do this year?"
get_portfolio_allocationGET /api/v1/investments"How diversified am I by region / sector / asset type?"
get_risk_metricsGET /api/v1/riskYieldMetrics (+ /investments)"How risky is my portfolio?"
get_realized_gainsGET /api/v1/performance/realizedGains"What did I realize this year?" (tax season)

Dividends

ToolWrapsAnswers
get_dividend_historyGET /api/v1/dividends/history"How much dividend income did I get per year / month?"
get_dividend_calendarGET /api/v1/dividends/calendar"When are my next dividend payments?"
get_portfolio_yieldGET /api/v1/dividends/portfolioYield"What's my dividend yield?"

Market data & profile

ToolWrapsAnswers
search_symbolsGET /api/v2/symbols"Find Apple / this ISIN"
get_quotesGET /api/v2/quotes"What's the current price?"
get_security_fundamentalsGET /api/v1/fundamentals/{isin} (+ /statistics)"Is this stock expensive?" (P/E, P/B, F-Score)
whoamiGET /api/v1/users/myself"Which account is this?"

The server also registers prompts (monthly_review, savings_rate_check, subscription_audit, fixed_costs_summary, financial_health_check) that chain these tools into guided analyses.

Tool registration is gated by SUPPORTED_TOOLS/SUPPORTED_PROMPTS in src/index.ts — remove a name there to disable it without deleting code.

Install

You need Node 20+ and pnpm.

bash
git clone [email protected]:wealthAPI-eu/wealthapi-mcp.gitcd wealthapi-mcppnpm installpnpm build

Get a personal bearer token from wealthAPI (your account → API settings).

Add the server to Claude Desktop's config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "wealthapi": {      "command": "node",      "args": ["/absolute/path/to/wealthapi-mcp/build/index.js"],      "env": {        "BEARER_TOKEN": "paste-your-token-here"      }    }  }}

Restart Claude Desktop. The active tools will appear in the tools panel of any chat, and you can ask portfolio questions in plain English.

How to add a new tool

The canonical example lives in src/tools/accounts.ts — list_accounts is ~50 lines and shows the whole pattern.

  1. Create or open the relevant file under src/tools/ and write a register*Tools(server, client) function that calls server.registerTool(...). Each call takes a name, a { description, inputSchema } object (Zod for the input schema), and an async handler that returns { content: [{ type: "text", text }] }.
  2. Import and call your register*Tools from src/index.ts.
  3. pnpm build and restart Claude Desktop.

That's it. No code generation, no registration files, no boilerplate.

Layout

src/  index.ts          Bootstrap: McpServer + StdioServerTransport + register*Tools(...)  config.ts         Reads BEARER_TOKEN from env; API base URL is fixed to production  api/    client.ts       fetch wrapper: GET/POST, query strings, retry on 5xx/429    types.ts        TS interfaces for API response shapes  tools/    accounts.ts     list_accounts, get_account_balances, get_portfolio_valuation    allocation.ts   get_portfolio_allocation    cash-flow.ts    get_cash_flow_summary, get_savings_rate, detect_recurring_transactions    dividends.ts    get_dividend_history, get_dividend_calendar, get_portfolio_yield    investments.ts  list_investments, get_gainers_and_losers    performance.ts  get_portfolio_performance, get_realized_gains    risk.ts         get_risk_metrics    securities.ts   search_symbols, get_quotes, get_security_fundamentals    transactions.ts list_transactions, list_bookings    user.ts         whoami  util/    logger.ts       Pino → stderr (stdout is reserved for MCP)    format.ts       formatCurrency, formatDate, formatTabletest/  api/    client.test.ts  Vitest unit test for the query-string builder  tools/    *.test.ts       Unit tests for the pure aggregation helpers

Run tests

bash
pnpm test

來源:README.md,提交 d3596ef

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

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

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

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

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