
eToro MCP Server
io.github.gabrielcerutti由 GitHub 账号 gabrielcerutti 发布v1.1.4更新于 Oct 25, 2026
Connect AI assistants to eToro for portfolio analysis, market research, and trading.
概览
一个非官方 MCP 服务器,把 AI 助手连接到 eToro 账户,用于投资组合分析、市场研究、自选列表、社交动态,以及可选的交易。
- 可以做什么
- 搜索并查看金融工具、交易所、行业和工具类型,获取实时报价、K 线数据和历史收盘价,用于研究与回测。读取投资组合持仓、盈亏、挂单和已平仓交易历史。开仓、平仓或部分平仓,下限价单并取消挂单。查询用户资料、业绩、公开投资组合和跟单者,并发现热门投资者。创建、重命名、删除自选列表并添加或移除其中的工具,浏览精选列表和公开列表。读取工具和用户的社交动态,并发布帖子和评论。
- 适用场景
- 适合让助手按行业梳理 eToro 持仓、研究股票代码与价格历史、评估热门投资者以决定是否跟单、回测定投等策略,或用自然语言管理自选列表。交易功能虽受支持,但应视为次要且风险更高的用途。
- 运行要求
- 以 stdio 方式在本地运行,通常通过 npm 包 etoro-mcp-server 用 npx 启动(需要 Node.js),也可作为桌面扩展安装。需要 eToro API 密钥(ETORO_API_KEY)和用户密钥(ETORO_USER_KEY),并将 ETORO_TRADING_MODE 设为 demo 或 real(默认 demo)。交易模式必须与 API 密钥的环境一致。需要访问 eToro API 的网络连接。
安装
在 SourceWeft 中
- 打开 控制台中的 eToro MCP Server,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
eToro MCP Server
Connect any MCP-compatible AI assistant (Claude, Cursor, and others) to your eToro account for portfolio analysis, market research, and trading.
[CI] [DeepWiki] [Node.js] [TypeScript] [MCP SDK] [License: MIT]
Overview
MCP server wrapping the eToro public API, exposing 35 tools for AI assistants (Claude Desktop, Cursor, Claude Code, etc.). Built for investment research and portfolio analysis — assess positions, research instruments and themes, vet popular investors for copy-trading, backtest DCA strategies against historical data. Trading is fully supported, but use care: letting an AI agent place real-money orders is genuinely risky, and you should treat it as such.
What Can You Do With It?
The server is built around research workflows first. The examples below show real multi-tool conversations — the assistant chains several etoro_* calls together to answer a single question. Numbers are representative; actual responses draw from live eToro data.
1. Portfolio health check
The assistant calls etoro_get_portfolio to pull your open positions, then etoro_get_instruments to resolve instrument IDs to names and sectors, and etoro_get_rates for live prices. It assembles a full snapshot from the raw data.
You: How is my portfolio doing? Break it down by sector and flag any trouble spots.
Assistant: I pulled your portfolio (98 open positions), resolved each instrument, and fetched live rates. Here's the picture:
- Cash: $22,265 • Invested: $45,782 • Positions: 98 open
Sector breakdown:
[Portfolio sector allocation]Trouble spot: Your tech sleeve is 38% of invested capital and concentrated in 5 mega-caps. A single sector drawdown hits hard — consider whether the ETF overlap (QQQ, SOXX) is intentional diversification or accidental doubling-down.
Tools used: etoro_get_portfolio → etoro_get_instruments → etoro_get_rates
2. Instrument research
Search is keyword-based — etoro_search_instruments finds instruments by ticker or company name, then you chain etoro_get_instruments for full details and etoro_get_candles for price history.
You: Pull up NVDA — I want the current price and a weekly chart for the last month.
Assistant: Searching for "NVDA" and pulling candle data:
- NVIDIA Corporation (NVDA) — InstrumentID 1545
- Live rate: Bid $208.14 / Ask $208.40
- Exchange: NASDAQ • Type: Stock • Sector: Semiconductors
Weekly candles (last 5 weeks):
[NVDA weekly candlestick chart]NVDA rallied +27% off the March low ($162.95 → $208.26), with each weekly candle printing a higher low. Momentum is strong but the move is getting extended.
Tools used: etoro_search_instruments → etoro_get_instruments → etoro_get_rates → etoro_get_candles
3. Copy-trading due diligence
Vet popular investors using real public data. The assistant calls etoro_get_user_profile for identity and stats, then etoro_get_user_performance for the full yearly return history.
You: Vet user jeppekirkbonde for a long-term copy allocation. I want the honest risk picture.
Assistant: Here's what the data says on jeppekirkbonde:
- Name: Jeppe Kirk Bonde • PI Level: 6 (highest tier)
- Copiers: 25,000+ • AUM: $200M+
- Background: MSc Finance, Copenhagen Business School
Year-by-year performance (real data):
[jeppekirkbonde yearly performance]Average annual return: +30.7% across 13 full years. Three down years (2014, 2018, 2022) with a max drawdown of −19.2% in the 2022 tech selloff.
What you should know:
- This is a concentrated, long-only US tech strategy. The +150.9% in 2017 and +81.1% in 2016 are outliers — don't expect those every year.
- Down years are real: 2022 cost −19.2%. If you can't stomach a 20% paper loss, this isn't the right copy.
- 25K+ copiers and $200M+ AUM means his moves have market impact in smaller names. Slippage is a factor.
Reasonable for multi-year capital if you accept the volatility. Not appropriate for money you need inside 18 months.
Tools used: etoro_get_user_profile → etoro_get_user_performance
4. Watchlist management
The full watchlist lifecycle — create, populate, rename, and curate — all through natural language.
You: Create a "Semiconductor" watchlist and add NVDA, AMD, ASML, TSM, and AVGO to it.
Assistant: Done:
- Created watchlist "Semiconductor" (ID: 48291)
- Searched and resolved all 5 tickers to instrument IDs
- Added: NVDA (1545), AMD (2842), ASML (5765), TSM (3901), AVGO (6192)
Your watchlists now:
Tools used: etoro_create_watchlist → etoro_search_instruments → etoro_add_watchlist_items → etoro_get_watchlists
5. DCA backtest with historical candles
Use etoro_get_candles to pull years of OHLCV data, then simulate a dollar-cost averaging strategy — no orders placed, pure research.
You: Backtest a $500/month DCA into QQQ over the last 3 years. What would I have today?
Assistant: Pulling weekly QQQ candles (156 weeks) and simulating $500 on the first trading day of each month:
- Total invested: $18,000 (36 months × $500)
- Units accumulated: ~38.2 QQQ
- Current value: $25,365 (at $664.01/share)
- Gain: +$7,365 (+40.9% on invested capital)
- Approx. IRR: ~12.8%/year
Worst stretch: Nov 2022 – Mar 2023, paper drawdown of −22% on the accumulated stack. You bought through it — those discounted shares are now your biggest winners.
No orders placed. This is research only.
Tools used: etoro_get_candles → etoro_get_rates (for current price)
6. Macro-aware portfolio review
Combine portfolio data with the assistant's general knowledge to get a risk assessment tied to your actual holdings.
You: My portfolio is heavy on tech. Flag any risks from this week's macro calendar.
Assistant: Your tech exposure totals ~$17,400 (38% of invested capital) across GOOG, META, MSFT, NVDA, AMZN and the SOXX/QQQ ETFs. This week's watch-list:
- Wed — CPI print (core consensus +0.3% MoM). A hot number re-prices rate-cut odds → tech multiples compress first.
- Thu — Fed speakers (Williams, Waller). Hawkish language strengthens USD, pressuring mega-cap international revenue.
- Fri — NVDA earnings (after close). Binary event for your largest single-stock position.
What this means for you:
- A hot CPI + hawkish Fed combo could knock 3–5% off your tech sleeve short-term.
- NVDA earnings will drive ~8% of your portfolio's week-over-week change. Know your thesis before it prints.
Tools used: etoro_get_portfolio → etoro_get_instruments → etoro_get_rates (+ assistant's macro knowledge)
Trading is also supported — one example
⚠️ Letting an AI execute real-money trades is risky. The same natural-language interface that makes research fast also makes it easy to misinterpret intent — a typo, an ambiguous number, a stale context from earlier in the conversation. Mitigations: start in
ETORO_TRADING_MODE=demo, use read-only API keys for anything that doesn't need write access, and require explicit confirmation in your conversation before anyrealorder.
All examples above are research-only. When you're ready to execute, the same interface places orders. Orders always respect the configured ETORO_TRADING_MODE (demo for paper, real for live).
You: Buy $500 of NVDA at market.
Assistant: Confirmed — opening a market position:
- Instrument: NVDA (1545)
- Amount: $500
- Rate: $208.40 (ask)
- Mode:
demoPosition opened — ID
3418072. This is a demo trade, no real money involved.
Full trading coverage includes: open position by amount or units (etoro_open_position), close or partially close (etoro_close_position), limit/entry orders (etoro_place_limit_order), cancel pending orders (etoro_cancel_order), and listing pending orders (etoro_get_orders).
Composing with Other MCP Servers
MCP servers are designed to be composed. The eToro server handles portfolio data, live rates, candles, and trading — but an AI assistant can call tools from multiple servers in a single conversation, filling in the gaps that no single API covers.
Example: earnings risk check across two servers
With eToro + a financial data server (e.g. Financial Datasets, Alpha Vantage, or similar):
You: Do any of my open positions have earnings this week? Flag the ones I should watch.
Assistant: Pulling your portfolio from eToro (98 positions), then checking the earnings calendar:
- NVDA — reports Thursday after close. Your position: $4,200 (9.2% of invested). This is a binary event — expect ±8% move.
- GOOGL — reports Tuesday after close. Your position: $3,100 (6.8%). Consensus is +12% YoY revenue; ad revenue mix is the swing factor.
- UNH — reported Monday pre-market (already priced in). Beat on EPS, slight miss on membership growth.
The rest of your holdings have no earnings this week. Your biggest event risk is NVDA Thursday — it's your largest single-stock position.
This isn't possible with the eToro server alone — it knows your positions but not the earnings calendar. The financial data server knows the calendar but not your portfolio. Together, the assistant connects both.
Natural pairings
Configuration
Just add multiple servers to your MCP config — the assistant sees all tools from all servers:
The assistant will automatically chain tools across servers when a question requires it — no extra wiring needed.
Installation
Claude Desktop (recommended)
Download the latest .mcpb file from the Releases page and drag it into Claude Desktop:
Extensions → drag etoro-{version}.mcpb into the window
You'll be prompted for your API Key, User Key, and trading mode. That's it.
[!TIP] Get your keys at eToro → Settings → Trading → Create New Key. Choose your environment (Demo or Real) and the permissions you need (Read or Write).
Via npm (Claude Code, Cursor, Continue, Cody, …)
Add this to your client's MCP config — it'll launch the server from the published npm package on demand, no local install needed:
For Claude Code, the equivalent CLI command:
Pin a specific version with [email protected] in the args if you want stability over auto-updates.
From source (developers)
If you want to hack on the server locally, clone the repo and build:
Then point your MCP client at the built file (dist/index.js):
Or in claude_desktop_config.json / equivalent:
MCP Registry
This server is listed on the MCP Registry under the name io.github.gabrielcerutti/etoro-mcp-server. The registry is the public index of MCP servers — think of it as a package registry for AI tools, analogous to what npm is for JavaScript libraries. MCP-compatible clients use it to discover and install servers programmatically without users having to hand-copy configuration.
Each tagged release of this repository is auto-published to the registry by GitHub Actions (via OIDC), so the entry always tracks the latest npm version.
Configuration
Trading mode: demo routes all trading calls through eToro's virtual account. Set to real only when you're ready to trade with real money.
[!WARNING]
trading_modemust match the environment of your API key. A demo key used withrealmode (or vice versa) will cause authentication errors.
Tools (35 total)
All tools are prefixed with etoro_ for namespace isolation when composed with other MCP servers.
Market Data (8)
Portfolio & Trading (7)
User & Discovery (7)
Watchlists (9)
Social Feeds (4)
Disclaimer
This project is an unofficial, community-built integration. It is not affiliated with, endorsed by, or supported by eToro. Use it at your own risk.
- Not financial advice. Nothing in this server, its documentation, or its example outputs constitutes investment advice, a recommendation, or a solicitation to buy or sell any financial instrument.
- You are responsible for your trades. The server can place real-money orders when configured in
realmode. Verify every order before confirming, and understand that AI assistants can misinterpret intent. - API changes may break things. This server depends on eToro's public API, which can change without notice. Always pin a version in production.
- Demo first. Start with
ETORO_TRADING_MODE=demoand only switch torealafter you're confident in your setup.
Contributing
Contributions are welcome — bug reports, feature requests, and pull requests.
The DeepWiki page gives an auto-generated overview of the codebase architecture — useful starting point before diving in.
- Fork the repo and create a branch from
main - Run
npm install && npm run buildto verify your changes compile - Run
npm testto make sure existing tests pass - Open a PR with a clear description of what changed and why
License
MIT — use it, fork it, build on it.
来源:README.md,提交 6e8fb11
工具
0版本历史
1- v1.1.4最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分