This server provides MCP (Model Context Protocol) tools for interacting with eToro's public API endpoints. It allows you to:
- Fetch a user's portfolio using their username
- Look up instrument details by IDs
- Search for instruments by name prefix (autocomplete)
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Build for production:
npm run build
-
Start the production server:
npm start
Fetches an eToro user's portfolio using their username. The tool automatically converts the username to a Customer ID (CID) internally.
Parameters:
username
: The eToro usernameauthToken
(optional): Authorization token for authenticated requests
Fetches details for a list of eToro instruments.
Parameters:
instrumentIds
: List of instrument IDs to fetch details forfields
(optional): Fields to include in the response (defaults todisplayname
,threeMonthPriceChange
,oneYearPriceChange
,lastYearPriceChange
)
Searches for eToro instruments by name prefix (autocomplete).
Parameters:
namePrefix
: The prefix to search for in instrument namesfields
(optional): Fields to include in the response (defaults tointernalInstrumentId
,displayname
,internalClosingPrice
)
Note that some of the eToro API endpoints have CORS restrictions and should be called from a server-side environment. The tools in this server handle these requests on the server side to avoid CORS issues.
The server exposes a REST API for accessing these tools, which can be called from any HTTP client:
GET /tools # List all available tools
GET /tools/:name/schema # Get tool schema
POST /tools/:name/execute # Execute a tool
Example of using the fetch_etoro_portfolio
tool:
curl -X POST http://localhost:3000/tools/fetch_etoro_portfolio/execute \
-H "Content-Type: application/json" \
-d '{"username": "yoniasia"}'