SocialForex
Server Details
Live forex, gold & crypto quotes, economic calendar, screener, currency strength, lot-size calc
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- namlxuit056/social-forex
- GitHub Stars
- 1
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: quotes for pricing, screener for per-symbol technicals, currency strength for relative major-currency performance, economic calendar for macro events, market sessions for timing, and position sizing for risk calculation. There is no meaningful overlap that would cause an agent to misselect a tool.
All names use snake_case verb_noun structure, mostly with the get_ prefix. calculate_position_size is the only different verb, but it is appropriate and still follows the same predictable verb_noun convention.
Six tools is well-scoped for a forex analysis assistant. Each tool covers a distinct analytical or risk-management need without redundant surface area.
The set covers core forex decision support: pricing, technical screening, macro events, session timing, currency strength, and risk sizing. Minor gaps remain, such as historical OHLC data, symbol contract specifications/pip values, or account balance lookup, but agents can likely work around them.
Available Tools
6 toolscalculate_position_sizePosition size calculatorBRead-onlyInspect
Lot size so that hitting the stop loss loses riskPct % of the balance. Account currency is assumed to be USD.
| Name | Required | Description | Default |
|---|---|---|---|
| entry | Yes | ||
| symbol | Yes | e.g. EURUSD, XAUUSD, USDJPY | |
| balance | Yes | Account balance in USD | |
| riskPct | Yes | Risk per trade in %, e.g. 1 | |
| leverage | No | e.g. 500 for 1:500 — adds required margin | |
| stopLoss | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds one genuinely useful behavioral fact — account currency is assumed USD — which affects interpretation of balance and risk amounts. It does not disclose what the result contains (lot size only, or margin as well when leverage is supplied), which matters for a calculator.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the core formula and followed by the currency caveat. Every clause carries information; nothing is padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a pure calculation tool with no output schema, the description should state what comes back — a lot size, and presumably required margin when leverage is given. The USD assumption is a good catch, but the missing return-value description and the unexplained optional leverage leave a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% with entry and stopLoss undocumented in the schema; the description compensates by explaining the relationship between entry, stopLoss, riskPct and balance that determines the output. The USD assumption also disambiguates the balance parameter. It still says nothing about how leverage feeds into the result, so it is not a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific computed resource — lot size — and ties it to a precise formula: loss at stop loss equals riskPct % of balance. That is far more informative than the title 'Position size calculator' alone. It doesn't need sibling differentiation because the siblings (quotes, calendar, sessions) are unrelated market-data tools, but it never explicitly names the compute operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus manually sizing a trade, no prerequisites, and no mention of what happens when the optional leverage parameter is omitted. The only guidance is the USD currency assumption, which is a constraint rather than usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_currency_strengthCurrency strengthARead-onlyInspect
Relative strength of the 8 major currencies, derived from today's % change across available pairs. Sorted strongest first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and external-data behavior are covered. The description adds meaningful context by explaining the derivation method (today's percentage change across available pairs) and the output ordering (strongest first).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short clauses, front-loaded with the core metric and followed by the sort order. Every part adds useful information without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only data tool without an output schema, the description covers the metric, scope, source basis, and ordering. It could go further by clarifying the return format, but it is largely complete for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema baseline is 4. No additional parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and metric: relative strength of the 8 major currencies derived from today's percentage change across available pairs. It is clear what the tool computes, though it does not explicitly distinguish itself from sibling tools like get_quotes or get_screener.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by describing the metric and sort order, but the description gives no explicit when-to-use guidance or alternatives. An agent can infer it is for ranking currency strength, but must decide on its own when to choose it over get_quotes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_economic_calendarEconomic calendarBRead-onlyInspect
Upcoming (and optionally recent) macro events with impact, forecast, previous and actual values. Times are UTC.
| Name | Required | Description | Default |
|---|---|---|---|
| hoursBack | No | Include events released in the last N hours. | |
| minImpact | No | medium | |
| currencies | No | ISO currency codes, e.g. ["USD", "EUR"]. Omit for all. | |
| hoursAhead | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and external-data nature are covered. The description adds useful context that all times are UTC, but says nothing about data freshness, coverage of sources, or rate limits — reasonable but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler; the returned-field list is front-loaded and the UTC note is tacked on efficiently. Every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter read tool with no output schema, the description covers what fields come back and the timezone, but leaves window semantics, defaults, and result size/limits unexplained. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%: hoursBack and currencies are documented in the schema, but minImpact and hoursAhead rely on defaults and bounds alone. The description does not explain what minImpact=medium filters out or what the hoursAhead window means, so it fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (macro/economic events) and enumerates the returned fields (impact, forecast, previous, actual), so an agent knows exactly what it is looking at. It does not explicitly distinguish itself from siblings, but the domain (calendar events vs. quotes, screener, sessions, currency strength) is self-evident.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is the parenthetical '(and optionally recent)', which vaguely maps to hoursBack but never states when to use this tool versus get_currency_strength or get_market_sessions. No prerequisites, exclusions, or alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_sessionsTrading sessionsARead-onlyInspect
Whether the forex market is open, active sessions (Sydney/Tokyo/London/New York), current and upcoming overlaps.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds useful content disclosure (active sessions, overlaps) but says nothing about time zone assumptions, refresh cadence, or whether the answer is real-time or cached, which matters for a live-market status check.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the primary question (is the market open) followed by the supporting details (sessions, overlaps). Nothing redundant, and it's long enough to convey the return scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and read-only annotations, the description carries the burden of explaining what comes back, which it does by enumerating sessions and overlap states. Only the time-zone/reference-time assumption is unaddressed, a minor gap for a status tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there are no semantics to explain; the baseline for a no-param tool is 4. The description correctly avoids inventing parameter talk.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description concretely states what the tool returns: forex market open status, the active sessions among Sydney/Tokyo/London/New York, and current/upcoming overlaps. It's clearly distinct from all siblings (position sizing, currency strength, calendar, quotes, screener), though the verb is implied rather than front-loaded.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the topic (checking forex trading hours) but no explicit when-to-use, exclusions, or alternative routing is given. No sibling is named even implicitly as a contrast, so an agent must infer the context from the domain alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_quotesLive quotesBRead-onlyInspect
Current bid/ask and daily % change for forex majors/minors, gold, silver, oil and crypto.
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | No | Symbols without slash, e.g. ["EURUSD", "XAUUSD"]. Omit for all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds useful return-content semantics (bid, ask, daily percent change) but says nothing about snapshot timing, delayed vs real-time data, behavior for invalid symbols, or market-closed states — all material for a live-quote tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, zero filler, and the most decision-relevant information (what data, which markets) is front-loaded. Nothing is repeated from the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-optional-parameter, no-output-schema read tool, the description does the needed work by naming the returned fields and the asset universe. The remaining gap is timing/freshness semantics, which matter for a tool titled 'Live quotes' but are left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single optional 'symbols' parameter is documented in-schema with format example and the 'omit for all' default. The description adds only indirect value by listing which instrument classes are supported, which implicitly bounds valid symbol values; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (bid/ask and daily % change) and enumerates the covered asset classes (forex majors/minors, metals, oil, crypto), so an agent knows exactly what data comes back. It stops short of naming how it differs from siblings such as get_currency_strength or get_screener, which could read as adjacent price-data tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no named alternative. An agent must infer from the sibling list whether a live quote request belongs here or in get_currency_strength. The only routing hint, 'Omit for all', lives in the schema rather than the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_screenerTechnical screenerARead-onlyInspect
Per-symbol technicals: TradingView recommendation per timeframe (M15/H1/H4/D1, -1 strong sell … +1 strong buy), RSI, ADX, MACD, Bollinger position, stochastic state and ATR.
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | No | Symbols without slash, e.g. ["EURUSD", "XAUUSD"]. Omit for all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond the read-only/open-world annotations by listing the returned technical fields, timeframes, and recommendation scale semantics. It does not explain freshness, candle timing, or response structure, but for a read-only data tool it discloses the core output behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is a single, dense sentence that front-loads the core purpose and then lists the relevant indicators. It contains no filler and gives the agent the essential return semantics immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema coverage, annotations, and no output schema, the description is largely complete: it tells the agent what technical data comes back and the meaning of the recommendation scale. It leaves minor gaps around output structure per symbol and timing/freshness, but nothing critical for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single optional symbols parameter is fully documented in the schema, including format and the omit-for-all behavior. The description does not add any parameter meaning beyond what the schema already provides, so the baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as per-symbol technical data and enumerates the exact indicators returned, including the TradingView recommendation scale and timeframes. It is distinct from siblings such as get_quotes or get_currency_strength, though it does not explicitly name or contrast those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It does not state when to use this tool versus alternatives such as get_quotes or get_currency_strength. The technical content implies a use case, but there is no explicit guidance, exclusions, or prerequisite information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
calculate_position_size - First observed
get_currency_strength - First observed
get_economic_calendar - First observed
get_market_sessions - First observed
get_quotes - First observed
get_screener
Related MCP Connectors
Real-time & historical market data: forex, stocks, crypto, indices, metals, K-line, quotes
Live and historical market data for stocks, forex, crypto, indices, ETFs, commodities and bonds.
Macroeconomic and FX time-series data for AI agents: indicators, calendars, COT, forex, commodities.
Live market data & technical analysis for US stocks, ETFs and crypto. Read-only, no signup.
Related MCP Servers
AlicenseBqualityAmaintenanceUS/HK markets — 110 tools: real-time quotes, options, orders, fundamentals, alerts, DCA & portfolio19314Apache 2.0- AlicenseNot gradedqualityDmaintenanceEnables traders and agents to look up upcoming high-impact economic events like FOMC, NFP, and CPI, and to check whether a prop firm's news-restriction window is currently active. It also scores news risk from 1-10 with a plain trading recommendation.MIT
- AlicenseNot gradedqualityDmaintenanceEnables trading analysis across Forex, Stocks, and Crypto with 25+ technical indicators, real-time market data, and Pine Script v6 development tools including syntax validation, autocomplete, and version conversion.60MIT
- FlicenseNot gradedqualityDmaintenanceEnables quantitative trading analysis with 12 tools for real-time market data, 28+ technical indicators, FinBERT-powered news sentiment analysis, and automated trading signal generation for stocks and forex.1-
Glama MCP Gateway
Add one secure layer between your agents and this server.