Server data from the Official MCP Registry
Connect Claude to your eToro account for portfolio analysis, market research, and trading.
Connect Claude to your eToro account for portfolio analysis, market research, and trading.
Valid MCP server (6 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.
8 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: ETORO_API_KEY
Environment variable: ETORO_USER_KEY
Environment variable: ETORO_TRADING_MODE
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-gabrielcerutti-etoro-mcp-server": {
"env": {
"ETORO_API_KEY": "your-etoro-api-key-here",
"ETORO_USER_KEY": "your-etoro-user-key-here",
"ETORO_TRADING_MODE": "your-etoro-trading-mode-here"
},
"args": [
"-y",
"etoro-mcp-server"
],
"command": "npx"
}
}
}From the project's GitHub README.
Connect any MCP-compatible AI assistant (Claude, Cursor, and others) to your eToro account for portfolio analysis, market research, and trading.
Overview • Installation • Configuration • Tools
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.
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.
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:
Sector % of invested Top holdings Technology 38% GOOG, META, MSFT, NVDA, AMZN ETFs & Index 22% VOO, QQQ, SOXX, ARGT, IEUR Crypto 15% BTC, ETH Healthcare 10% UNH Financials 8% SAP Other 7% LDO + others 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
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):
Week of Open High Low Close Mar 22 $172.65 $181.20 $167.01 $167.61 Mar 29 $165.26 $177.47 $162.95 $176.72 Apr 5 $176.12 $189.98 $173.66 $188.53 Apr 12 $184.15 $201.69 $183.98 $201.64 Apr 19 $199.02 $210.92 $197.23 $208.26 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
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):
Year Return Year Return 2013 +8.9% 2020 +36.9% 2014 −14.3% 2021 +15.9% 2015 +22.4% 2022 −19.2% 2016 +81.1% 2023 +23.9% 2017 +150.9% 2024 +21.0% 2018 −10.9% 2025 +37.7% 2019 +45.1% 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
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:
Watchlist Items Recently Invested 38 My Watchlist 34 Stocks pre-screening 69 ETFs 54 Semiconductor ← new 5 People & Smart Portfolios 26 Crypto 6 Commodities 5
Tools used: etoro_create_watchlist → etoro_search_instruments → etoro_add_watchlist_items → etoro_get_watchlists
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)
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)
[!WARNING] 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).
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).
Add this to your client's MCP config — it'll launch the server from the published npm package on demand, no local install needed:
{
"mcpServers": {
"etoro": {
"command": "npx",
"args": ["-y", "etoro-mcp-server"],
"env": {
"ETORO_API_KEY": "your-api-key",
"ETORO_USER_KEY": "your-user-key",
"ETORO_TRADING_MODE": "demo"
}
}
}
}
For Claude Code, the equivalent CLI command:
claude mcp add etoro \
-e ETORO_API_KEY=your-api-key \
-e ETORO_USER_KEY=your-user-key \
-e ETORO_TRADING_MODE=demo \
-- npx -y etoro-mcp-server
Pin a specific version with etoro-mcp-server@1.1.0 in the args if you want stability over auto-updates.
If you want to hack on the server locally, clone the repo and build:
npm install
npm run build
Then point your MCP client at the built file (dist/index.js):
claude mcp add etoro-mcp \
-e ETORO_API_KEY=your-api-key \
-e ETORO_USER_KEY=your-user-key \
-e ETORO_TRADING_MODE=demo \
-- node /path/to/etoro-mcp/dist/index.js
Or in claude_desktop_config.json / equivalent:
{
"mcpServers": {
"etoro-mcp": {
"command": "node",
"args": ["/path/to/etoro-mcp/dist/index.js"],
"env": {
"ETORO_API_KEY": "your-api-key",
"ETORO_USER_KEY": "your-user-key",
"ETORO_TRADING_MODE": "demo"
}
}
}
}
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.
| Setting | Env var | CLI arg | Default |
|---|---|---|---|
| API Key | ETORO_API_KEY | --api-key | (none) |
| User Key | ETORO_USER_KEY | --user-key | (none) |
| Trading Mode | ETORO_TRADING_MODE | --trading-mode | demo |
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.
All tools are prefixed with etoro_ for namespace isolation when composed with other MCP servers.
| Tool | Description |
|---|---|
etoro_search_instruments | Search instruments by keyword (e.g. "AAPL", "Bitcoin") or exact ticker |
etoro_get_instruments | Get full instrument details by IDs (1–100) |
etoro_get_instrument_types | List all instrument types (stocks, crypto, ETFs…) |
etoro_get_industries | List industry classifications |
etoro_get_exchanges | List stock exchanges |
etoro_get_candles | Get OHLCV candle data for technical analysis and backtesting |
etoro_get_closing_prices | Get historical daily closing prices |
etoro_get_rates | Get live bid/ask rates |
| Tool | Description |
|---|---|
etoro_get_portfolio | Get portfolio + P&L: positions, unrealized P&L, exposure summary, longest holding |
etoro_get_orders | List all pending orders (limit / entry) |
etoro_get_trade_history | Closed-trade history (entry/exit, P&L, duration). Primary source for performance research |
etoro_open_position | Open position by USD amount or units (unified tool) |
etoro_close_position | Close an open position fully, or partially via unitsToDeduct |
etoro_place_limit_order | Place a limit / entry order |
etoro_cancel_order | Cancel a pending order |
| Tool | Description |
|---|---|
etoro_get_current_user | Get the authenticated user's identity (GCID, real / demo CIDs) |
etoro_get_user_profile | Get a user's public profile |
etoro_get_user_performance | Get performance summary (optionally by time period) |
etoro_get_user_trades | Get a user's trade info for a period |
etoro_get_user_portfolio | Get a user's live public portfolio holdings |
etoro_discover_users | Discover popular investors filtered by gain, risk score, period |
etoro_get_copiers | Get info about users copying your portfolio |
| Tool | Description |
|---|---|
etoro_get_watchlists | List your watchlists |
etoro_create_watchlist | Create a watchlist |
etoro_delete_watchlist | Delete a watchlist |
etoro_rename_watchlist | Rename a watchlist |
etoro_add_watchlist_items | Add instruments to a watchlist |
etoro_remove_watchlist_item | Remove an instrument from a watchlist |
etoro_set_default_watchlist | Set default watchlist |
etoro_get_curated_lists | Get eToro's curated lists |
etoro_get_public_watchlists | Browse a user's public watchlists |
| Tool | Description |
|---|---|
etoro_get_instrument_feed | Get social feed for an instrument |
etoro_get_user_feed | Get social feed for a user |
etoro_create_post | Create a social feed post |
etoro_create_comment | Comment on a post |
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
by mcp-marketplace · Developer Tools
Scaffold, build, and publish TypeScript MCP servers to npm — conversationally
by mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.