yahoo-finance-mcp-server
Server Details
Yahoo fundamentals: earnings, P/E, analyst targets, peer comparisons for equity research.
- Status
- Healthy
- Uptime
- 100.0% over 37 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2024-11-05
- URL
TDQS
Scored across 3 tools
Each tool has a distinct primary purpose: single quote vs. multiple quotes vs. side-by-side comparison. Some overlap exists between get_multiple_quotes and compare_stocks since both involve multiple securities, but the descriptions clarify that compare_stocks focuses on analytical metrics and relative performance, while get_multiple_quotes is for quick quote retrieval.
All tool names follow a consistent verb_noun pattern using snake_case: compare_stocks, get_multiple_quotes, get_stock_quote. The verbs 'compare' and 'get' are used predictably, and the nouns clearly indicate the target (stocks, quotes, stock_quote).
With 3 tools, the server is minimal but not unreasonably sparse for a quote-focused service. Each tool covers a distinct use case (single, multiple, comparison), so every tool earns its place. It is slightly under-scoped for a full Yahoo Finance API, but appropriate for a focused quote/comparison tool.
The domain is stock quotes and comparison, and the server covers the core operations: get a single quote, get multiple quotes, and compare securities with key metrics. Minor gaps exist, such as lack of historical data or ticker search, but these are workable around and not critical for the apparent purpose of real-time monitoring and investment comparison.
Available Tools
3 toolscompare_stocksARead-onlyInspect
Compare multiple stock securities side-by-side with key financial metrics and performance data. Returns price, P/E ratio, dividend yield, market cap, earnings, revenue, and relative performance for comparison. Use for investment analysis, selecting between stocks, or portfolio optimization.
| Name | Required | Description | Default |
|---|---|---|---|
| tickers | Yes | List of tickers to compare (minimum 2 for meaningful comparison) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description adds useful behavioral detail by listing what the tool returns (price, P/E ratio, dividend yield, market cap, earnings, revenue, relative performance). No contradictions; could add data freshness or error caveats but is solid given the safety annotations.
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 well-structured sentences: the first states the core purpose and metric list, the second adds use cases. No redundant or filler content; every clause contributes meaning.
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 output schema, the description compensates by naming the returned metrics and the intended use cases. It is complete enough for a comparison tool, though it could slightly expand on response structure or limitations (e.g., invalid/blank tickers).
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 'tickers' parameter is fully covered in the input schema (100% coverage), including the minimum-2 guidance. The description adds no extra parameter semantics beyond restating 'multiple', so the schema carries the load.
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 opens with the specific verb 'Compare' and a clear resource ('multiple stock securities side-by-side'), then enumerates the key financial metrics returned. This distinguishes it from sibling quote tools by emphasizing comparison and relative performance.
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 gives clear usage context: 'Use for investment analysis, selecting between stocks, or portfolio optimization.' It does not explicitly name alternatives or exclusions, but the comparison focus differentiates it from simple quote tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_multiple_quotesARead-onlyInspect
Fetch current stock quotes for multiple ticker symbols in one request. Returns price, change, volume, and key metrics for each stock. Use for portfolio monitoring, screening multiple stocks, or comparing multiple securities at once.
| Name | Required | Description | Default |
|---|---|---|---|
| tickers | Yes | List of stock ticker symbols to retrieve quotes for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint and openWorldHint annotations, the description discloses what the tool returns (price, change, volume, key metrics) and the batching behavior ('in one request'). This adds meaningful context about output and operation without contradicting the annotations.
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 three concise sentences, each serving a purpose: function, output, and use cases. It is front-loaded with the primary action and contains no filler or redundant 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 simple one-parameter tool with complete schema coverage and no output schema, the description adequately covers purpose, return values, and usage scenarios. It is complete enough for an agent to select and 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?
Schema coverage is 100%, with the tickers parameter fully documented. The description does not add additional parameter-level semantics beyond what the schema already provides, so the baseline score 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 tool fetches current stock quotes for multiple ticker symbols in one request. This specific verb+resource+scope distinguishes it from siblings like get_stock_quote (likely single) and compare_stocks (likely comparative analysis).
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 explicit use cases: portfolio monitoring, screening multiple stocks, or comparing multiple securities at once. This gives clear context for when to use the tool, though it does not explicitly mention alternatives or when not to use it, 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_stock_quoteARead-onlyInspect
Fetch the current stock market quote for an individual ticker symbol. Returns real-time price, intraday change (dollars and percentage), trading volume, market capitalization, P/E ratio, earnings per share, dividend yield, and 52-week high/low. Use for real-time price monitoring, investment decisions, or financial dashboards.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol in uppercase (e.g. 'AAPL', 'MSFT', 'NVDA', 'TSLA') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds valuable context by specifying 'real-time price' and listing the return fields, which clarifies the dynamic, up-to-date nature of the data. It does not disclose potential latency or error behavior, but for a simple read-only tool, the provided context is sufficient.
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 concise and well-structured: it states the core action in the first sentence, enumerates the returned data in the second, and provides use cases in the third. Each sentence adds distinct value with no waste or redundancy.
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 simple single-parameter tool with no output schema, the description covers the purpose, return fields, and use cases thoroughly. It does not discuss error handling or latency, but these are not critical for a straightforward read-only quote tool, making the description reasonably 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?
The input schema fully documents the 'ticker' parameter with a description and examples (100% coverage). The description does not add further parameter-specific information beyond restating that it is for an individual ticker symbol, so the schema carries the burden adequately.
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 ('Fetch') and resource ('stock market quote') with a clear scope ('individual ticker symbol'), which distinguishes it from sibling tools like get_multiple_quotes and compare_stocks. It also enumerates the specific data points returned, leaving no ambiguity about the tool's function.
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 clearly states intended use cases ('real-time price monitoring, investment decisions, or financial dashboards'), providing context for when to use the tool. However, it does not explicitly mention alternatives or exclusion criteria for the sibling tools, though the 'individual ticker symbol' phrasing implies single-query use.
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.
3 tool updates
- First observed
compare_stocks - First observed
get_multiple_quotes - First observed
get_stock_quote
Related MCP Connectors
Financials, ratios, SEC filings and analyst data for any public company. Premium account required.
Quotes, company profiles, fundamentals, earnings and IPO calendars, plus market and company news.
Financial market, fundamental, valuation, risk, ownership, forecast, and portfolio tools.
AI stock intelligence: prices, fundamentals, technicals, news, macro regime, and sector signals.
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceProvides real-time stock market data and financial analysis through Yahoo Finance integration. Enables users to get quotes, historical prices, fundamentals, dividends, analyst forecasts, and growth projections for any stock symbol.4-
- FlicenseAqualityCmaintenanceEnables real-time stock analysis across US, Indian NSE, and BSE tickers through Yahoo Finance, with tools for prices, history, financials, peer comparison, technical indicators, sector overviews, and interactive dashboards.7-
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive financial data from Yahoo Finance, enabling retrieval of stock prices, company information, financial statements, options data, analyst recommendations, and market news through natural language queries.MIT
- AlicenseAqualityDmaintenanceProvides comprehensive financial data and analysis tools using Yahoo Finance, including real-time stock data, historical data with technical indicators, options chains, and financial statements.3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.