xfinlab
Server Details
Real-time market events, sentiment, and technical analysis as MCP tools, backed by real data.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- lnanology/Xfinlab
- GitHub Stars
- 1
- Server Listing
- XFINLAB Intelligence
TDQS
Scored across 5 tools
Most tools have distinct primary functions, but news-related overlap exists: get_market_events, get_intelligence_feed, and get_global_market_map all contain headlines, and get_sentiment overlaps with sentiment fields in the global map and intelligence feed. The descriptions are explicit enough to disambiguate with careful reading, but an agent could easily select the wrong tool for a ticker-news request.
All five tools follow the same get_ + snake_case pattern, producing get_global_market_map, get_intelligence_feed, get_market_events, get_sentiment, and get_technical_analysis. No mixed conventions or vague verb variants.
Five tools is well-scoped for a financial analysis server: macro snapshot, news feed, AI intelligence, sentiment, and technical analysis each earn their place without bloat or thinness.
The set covers macro, news, sentiment, and technical analysis, but lacks direct raw market data such as current price/quote or historical OHLC, and has no fundamentals or screener tools. Agents can work around these gaps for simple workflows, but some analysis contexts will dead-end.
Available Tools
5 toolsget_global_market_mapAInspect
Get a cross-region global market snapshot ('World Engine'): macro indicators (GDP growth/inflation/unemployment, with source attribution -- world_bank/fred/ecb), filtered regional headlines, and FinBERT sentiment for each requested region, plus a top-level global headlines feed (GDELT). Regions: us, europe, japan, korea, china, hk, tw, sea, me, latam. No AI narrative, no directional signal -- structured real data only.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | XFINLAB Intelligence API key (X-API-Key). Omit if supplied via HTTP header instead. | |
| regions | No | Comma-separated region keys, e.g. 'us,hk,china'. Omit for all 10 regions. | |
| news_limit | No | Headlines per region, 1-20. | |
| include_sentiment | No | Whether to run FinBERT sentiment on each region's headlines. | |
| marketplace_license_key | No | Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that the tool returns structured real data only and does not generate AI narrative or directional signal, which is valuable context. However, it omits any mention of side effects (though likely read-only), auth requirements beyond the schema, rate limits, or error behavior. It partially compensates but not fully.
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 a single, reasonably sized paragraph. It front-loads the primary purpose, then details content types, lists regions, and ends with a caveat about no AI narrative. Every sentence contributes unique information; there is no filler or repetition. It could be slightly tighter, but it is well structured.
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 that there is no output schema, the description does a solid job of conveying what the agent can expect: macro indicators with source attribution, regional headlines, FinBERT sentiment, and a global headlines feed. It also enumerates valid regions. It does not mention pagination, output formatting, or error handling, but the key functional coverage is present for an agent to invoke the tool correctly.
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 schema already describes all parameters with 100% coverage, so baseline is 3. The description adds value by enumerating the exact region keys (us, europe, japan, korea, china, hk, tw, sea, me, latam), which the schema does not list. It also clarifies the meaning of 'regions' in context. This extra enumeration is genuinely useful for an agent constructing a call.
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 states a specific verb ('Get'), a precise resource ('cross-region global market snapshot'), and enumerates the exact content: macro indicators with source attribution, regional headlines, FinBERT sentiment, and a global headlines feed. It also explicitly excludes AI narrative and directional signal, which implicitly differentiates it from sibling tools like get_sentiment or get_technical_analysis. The scope is unambiguous.
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 description provides no explicit guidance on when to use this tool versus its siblings. It does not name alternatives or state conditions for choosing this over get_sentiment, get_intelligence_feed, or get_market_events. The implicit 'structured real data only' hint is not sufficient for an agent to route correctly among the five siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_intelligence_feedAInspect
Get AI-structured event clusters from recent news: same-story headline clusters with entity/sentiment/quant-context fields and an AI-written narrative summary. Optionally scoped to one ticker; otherwise returns the latest cross-market feed. This is structured fact extraction, not republished article text, and never includes a directional trading signal or probability estimate.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language for the narrative summary. | en |
| limit | No | Max event clusters, 1-10. | |
| ticker | No | Optional ticker to scope the feed to, e.g. 'MSFT'. | |
| api_key | No | XFINLAB Intelligence API key (X-API-Key). Omit if supplied via HTTP header instead. | |
| marketplace_license_key | No | Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the nature of the output (structured event clusters with specific fields), the scoping behavior, and explicitly states exclusions (no republished text, no trading signal or probability estimate). This is valuable behavioral context beyond the schema. It does not mention authentication or rate limits, but those are implied by the api_key parameter in the schema, so the absence is acceptable.
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 a single, well-structured paragraph. It front-loads the primary purpose, then the scoping option, and finishes with clarifying exclusions. Every sentence adds value, with no redundant fluff. Appropriate length for the tool's complexity.
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 tool has no output schema, the description compensates by detailing what the output contains (entity/sentiment/quant-context fields, narrative summary) and what it excludes. It also explains scoping behavior. Missing are details about return format (e.g., list vs object), pagination, or error handling, but for a read-only feed tool this is sufficient for an agent to understand the purpose and expected result.
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 100%, so the description does not need to add parameter details. The description does mention 'Optionally scoped to one ticker' which maps to the ticker parameter, but that is already documented in the schema. No additional semantic value is provided for lang, limit, api_key, or marketplace_license_key, so 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 verb ('Get') and resource ('AI-structured event clusters from recent news'), and details the output composition (headline clusters with entity/sentiment/quant-context fields and an AI-written narrative summary). It explicitly distinguishes itself from sibling tools by clarifying it is structured fact extraction, not republished article text, and never includes a directional trading signal or probability estimate – clear differentiation.
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?
Provides clear context for when to use: optionally scoped to one ticker, otherwise returns the cross-market feed. The disclaimer about not being republished text and lacking trading signals implicitly tells the agent not to use this for raw articles or signal generation. However, it does not explicitly name sibling tools as alternatives or state when-not-to-use conditions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_eventsAInspect
Get recent market/company news headlines from XFINLAB's aggregated real-time news feed (RSS-sourced, deduplicated). Optionally filter by ticker/company name. Returns title, source, kind, published_at, url for each item -- no article body text.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results, 1-100. | |
| ticker | No | Optional ticker or company name to filter by, e.g. 'NVDA'. | |
| api_key | No | XFINLAB Intelligence API key (X-API-Key). Omit if supplied via HTTP header instead. | |
| marketplace_license_key | No | Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It proactively states that the feed is RSS-sourced, deduplicated, and only returns title, source, kind, published_at, and url, explicitly noting 'no article body text'. This gives the agent realistic expectations about output and limitations.
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 sentences, front-loaded with the core purpose, then the return format and a key limitation. Every sentence carries substantive information and there is no redundant or filler content.
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?
The description explains what the tool returns and its limitation, which is essential since there is no output schema. It does not cover ordering, pagination, or error handling, but these are less critical for a read-only headline fetcher, and the explicit field list mostly satisfies the communication burden.
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?
Input schema covers 100% of the four parameters, and the description reiterates the 'ticker' param as 'optional filter by ticker or company name′, aligning with the schema. It adds no meaning for limit, api_key, or marketplace_license_key beyond what the schema already documents, so the baseline of 3 is appropriate.
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 states the verb 'Get', the resource 'market/company news headlines', and the specific source 'XFINLAB's aggregated real-time news feed'. It lists the exact fields returned and explicitly differentiates from full article text, which distinguishes it from a more general intelligence feed. The scope is unambiguous.
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 guidance on when to choose this tool over the sibling 'get_intelligence_feed' or when it is not appropriate. The description only implies its use case ('recent... news headlines') but gives no exclusions, priorities, or conditions relative to alternatives, which leaves an agent without decision guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sentimentAInspect
Get FinBERT-based sentiment analysis of recent headlines for a ticker. Returns per-headline label/confidence/score plus an average score. Real model inference, not a fabricated estimate.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of recent headlines to analyze, 1-25. | |
| ticker | Yes | Ticker to analyze, e.g. 'AAPL'. | |
| api_key | No | XFINLAB Intelligence API key (X-API-Key). Omit if supplied via HTTP header instead. | |
| marketplace_license_key | No | Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It adds a valuable behavioral disclosure ('Real model inference, not a fabricated estimate'), which prevents agent hallucination. However, it does not mention any potential side effects, rate limits, or the need for an API key (though the schema covers the key). The safety profile (read-only) is not explicitly stated, leaving some ambiguity.
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 sentences, front-loads the core purpose and output, and then adds a crucial authenticity note. There is no fluff or repetition; every sentence earns its place.
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 tool with no output schema, the description adequately explains the return structure (per-headline label/confidence/score plus average). It covers the main function and the 'real inference' aspect. It could mention limitations or error scenarios, but given the tool's simplicity and the rich schema, it is sufficiently complete.
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 100%, with each parameter described. The description does not add any extra meaning beyond the schema; it mentions 'recent headlines' which loosely maps to the limit parameter, but no additional semantics are provided. Baseline of 3 is appropriate.
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 uses a specific verb ('Get') and resource ('FinBERT-based sentiment analysis of recent headlines for a ticker'), which clearly distinguishes it from the sibling tools (market map, feed, events, technical analysis). The purpose is unambiguous and specific.
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 description implies when to use the tool (when sentiment on a ticker is needed) but does not explicitly mention alternatives or when not to use it. The sibling names are distinct enough that an agent could infer the choice, but there is no direct guidance on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_technical_analysisBInspect
Get confluence direction/confidence, trend, MACD, volume, chart patterns, and market-structure signals (BOS/CHOCH/liquidity-sweep/order-flow/volume-profile/institutional-footprint) for one ticker, computed from real OHLC price data -- the same engine that powers XFINLAB's chart-analysis and ai-analysis pages.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language for text labels, e.g. 'en', 'zh-HK'. | en |
| period | No | History window, e.g. '6mo', '1y'. | 6mo |
| ticker | Yes | Ticker to analyze, e.g. 'TSLA', '0700.HK'. | |
| api_key | No | XFINLAB Intelligence API key (X-API-Key). Omit if supplied via HTTP header instead. | |
| interval | No | Candle interval, e.g. '1d'. | 1d |
| marketplace_license_key | No | Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It mentions data source (real OHLC) and that it powers XFINLAB's chart-analysis pages, which adds credibility, but it does not state whether the operation is read-only, has side effects, requires authentication beyond what schema shows, or imposes rate limits. The description focuses on the content of signals rather than behavior, leaving the agent without information about expected side effects or limitations.
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 a single dense sentence that lists many signals and then appends a dash explanation of the data source. It is not overly verbose but is somewhat run-on and could be split for clarity. The key content (what it computes) is front-loaded, but the long enumeration makes it harder to parse quickly. It earns a middle score because it is informative yet not optimally structured.
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 tool has six parameters and no output schema, the description partially compensates by enumerating the types of signals returned, giving the agent an idea of what to expect. However, it does not describe the response format (e.g., JSON structure, pagination), error behavior, or any prerequisites beyond parameters. For a moderately complex analysis tool, this is an adequate but not complete picture, so a 3 is warranted.
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%, so the schema fully documents all six parameters. The description does not add meaning beyond the schema; it only lists computed signals, which relate to output rather than parameters. The phrase 'for one ticker' reiterates the ticker parameter but does not provide new semantics. Since the baseline is 3 for high coverage and no additional value is added, this score is appropriate.
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 states the tool retrieves technical analysis signals (confluence, trend, MACD, volume, chart patterns, market-structure) for a single ticker, computed from real OHLC data. It is distinct from sibling tools like get_sentiment or get_global_market_map, which cover sentiment or market-wide views. The specific verb 'get' and resource 'technical analysis' make the purpose unambiguous.
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 description implies usage for technical analysis on a single ticker but does not explicitly contrast with siblings or state when not to use it. For example, it doesn't mention that for sentiment one should use get_sentiment or for market-wide context get_global_market_map. The purpose is clear enough to infer usage, but no explicit guidance or exclusions are provided.
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.
5 tool updates
- Changed
get_global_market_map1 field changed- added
Input schema / properties / marketplace_license_keyAdded value: +{ + "description": "Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license.", + "type": "string" +}
- Changed
get_intelligence_feed1 field changed- added
Input schema / properties / marketplace_license_keyAdded value: +{ + "description": "Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license.", + "type": "string" +}
- Changed
get_market_events1 field changed- added
Input schema / properties / marketplace_license_keyAdded value: +{ + "description": "Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license.", + "type": "string" +}
- Changed
get_sentiment1 field changed- added
Input schema / properties / marketplace_license_keyAdded value: +{ + "description": "Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license.", + "type": "string" +}
- Changed
get_technical_analysis1 field changed- added
Input schema / properties / marketplace_license_keyAdded value: +{ + "description": "Optional: an mcp-marketplace.io license key for this listing's paid tier. If valid, upgrades a free XFINLAB API key's daily quota to Pro for this call. Omit if supplied via the X-Marketplace-License-Key header instead, or if not using a marketplace license.", + "type": "string" +}
5 tool updates
- First observed
get_global_market_map - First observed
get_intelligence_feed - First observed
get_market_events - First observed
get_sentiment - First observed
get_technical_analysis
Related MCP Connectors
Crypto MCP with 21 tools for market data, DeFi, analytics, and sentiment. Post-paid USDC billing.
Crypto market data & research MCP: price, derivatives, on-chain, sentiment, news, catalysts.
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
Real-time crypto market data: candles, tickers, orderbooks across 13+ exchanges via MCP.
Related MCP Servers
- AlicenseBqualityDmaintenanceAI-powered trading toolkit with backtesting, live sentiment, Yahoo Finance, and 30+ technical analysis tools for MCP clients.274MIT
- AlicenseNot gradedqualityCmaintenanceAI-powered financial intelligence for autonomous trading agents. 9 MCP tools for real-time trading signals, risk index, market regime detection, stock analysis, commodity scoring, sector radar, and geopolitical intelligence briefings.1MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to access real-time crypto market data, volatility alerts, sentiment analysis, risk scores, and market reports through micropayment-gated MCP tools with on-chain settlement.-
- AlicenseAqualityBmaintenanceA modular MCP server providing 64 tools across 13 modules for real-time stock and crypto market data, including scanning, technical analysis, options flow, insider trades, and personalized watchlists.39154 npm6MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.