Skip to main content
Glama
slemos

eToro MCP Server

by slemos

Simulate a position on past prices

etoro_simulate_position
Read-onlyIdempotent

What would have happened if a position had been opened at the start of a window and followed the candles: a long (buy) or short (sellShort) of amountUsd with a leverage, an optional stop loss and take profit, held until one of them (or the…

Instructions

What would have happened if a position had been opened at the start of a window and followed the candles: a long (buy) or short (sellShort) of amountUsd with a leverage, an optional stop loss and take profit, held until one of them (or the margin) is hit, or until the end of the window. Returns the entry and exit prices and times, why it ended, the result in USD and as a percentage of the amount, and the worst and best moments in between. Uses eToro's historical candles (bid prices; no spread, fees, overnight costs or slippage). It places nothing and prepares nothing. A simulation of the rule you gave on past prices, not a prediction, a recommendation or financial advice. Nothing was sent to eToro and nothing was prepared.

Input Schema

NameRequiredDescriptionDefault
toNoEnd of the window (exclusive). Default: now.
fromYesStart of the window, ISO 8601 with timezone, e.g. 2025-01-01T00:00:00Z.
sideYes
symbolNoExact ticker, e.g. 'AAPL'. Provide symbol or instrumentId.
intervalNoCandle size. Daily is enough for most questions; smaller candles find stops and targets more precisely.1d
leverageNo
amountUsdYesMoney put into the position.
instrumentIdNo
stopLossRateNoStop loss as a price (not a percentage): below the entry for a buy, above it for a sellShort.
takeProfitRateNoTake profit as a price: above the entry for a buy, below it for a sellShort.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.10.0

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this read-only, idempotent and non-destructive, and the description still goes further: it states nothing is placed or prepared, nothing is sent to eToro, and that the simulation uses bid prices with no spread, fees, overnight costs or slippage. It also discloses exactly what the result contains, which is behavior an agent could not infer from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core mechanic and the return shape, and the caveats are appropriately placed. It loses a point for redundancy: 'It places nothing and prepares nothing' is restated as 'Nothing was sent to eToro and nothing was prepared', which is wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter simulation tool with no output schema, the description compensates by enumerating the return fields (entry/exit prices and times, exit reason, USD and percentage result, best/worst moments) and by flagging the cost-model limitations. Nothing material an agent needs before invoking it is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 70%, leaving side, leverage and instrumentId undocumented in the schema; the description covers the first two by explaining the buy/sellShort amount-with-leverage construction and the margin-hit condition for stop loss/take profit. It adds real meaning beyond the schema for the trigger parameters, though it says nothing about instrumentId or the interval enum.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb and resource and describes the mechanics in detail: long/short of amountUsd with leverage, optional stop loss and take profit, held until a trigger or window end. An agent knows exactly what is computed, though the description never names the obviously similar sibling etoro_backtest to distinguish itself from it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The opening 'What would have happened if a position had been opened...' implies the hypothesis-testing use case, and the text clarifies this is retrospective simulation rather than prediction. However, no explicit when-to-use, when-not-to-use, or alternative (e.g., etoro_backtest) is named, so selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.