{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"smithery_anchoragents-yfinance-mcp-server2","slug":"anchoragents-yfinance-mcp-server2","name":"yfinance-mcp-server2","type":"mcp","url":"https://github.com/AnchorAgents/yfinance-mcp-server2","page_url":"https://unfragile.ai/anchoragents-yfinance-mcp-server2","categories":["mcp-servers"],"tags":["mcp","model-context-protocol","smithery:AnchorAgents/yfinance-mcp-server2"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_0","uri":"capability://tool.use.integration.real.time.stock.price.retrieval.via.mcp.protocol","name":"real-time stock price retrieval via mcp protocol","description":"Exposes yfinance's stock ticker data fetching through the Model Context Protocol, allowing AI agents to query current and historical stock prices by ticker symbol. Implements MCP resource endpoints that wrap yfinance's Ticker.history() and Ticker.info methods, translating HTTP/JSON requests into structured financial data responses with OHLCV (open, high, low, close, volume) fields and metadata.","intents":["I want my AI agent to fetch current stock prices for a given ticker symbol","I need to retrieve historical price data for a stock over a specific date range","I want to build a financial chatbot that can answer questions about stock performance"],"best_for":["AI agents and LLM applications requiring live financial data","Teams building financial analysis chatbots or trading assistants","Developers integrating stock market data into autonomous workflows"],"limitations":["yfinance relies on Yahoo Finance scraping, which can be rate-limited or blocked without notice","No built-in caching — repeated queries for the same ticker incur network latency","Historical data accuracy depends on Yahoo Finance data quality; gaps or delays may occur","Real-time data is delayed by 15-20 minutes for free tier; no intraday tick-level granularity"],"requires":["MCP client implementation (Claude Desktop, custom MCP host, or compatible framework)","Python 3.8+","yfinance library (installed as dependency)","Network access to Yahoo Finance endpoints"],"input_types":["ticker symbol (string, e.g., 'AAPL')","date range (ISO 8601 format or relative periods like '1y', '6mo')","interval (daily, weekly, monthly)"],"output_types":["JSON with OHLCV data","structured financial metrics (PE ratio, market cap, dividend yield)","time-series arrays with timestamps"],"categories":["tool-use-integration","data-processing-analysis","financial-data"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_1","uri":"capability://tool.use.integration.multi.ticker.batch.data.aggregation","name":"multi-ticker batch data aggregation","description":"Supports querying multiple stock tickers in a single MCP call, aggregating results into a unified response structure. Implements parallel or sequential fetching of yfinance Ticker objects, combining OHLCV data, fundamentals, and metadata across symbols, then normalizing into a consistent JSON schema for downstream processing by AI agents.","intents":["I want to compare price movements across a portfolio of stocks in one query","I need to fetch fundamental data (PE, market cap, dividend) for multiple tickers at once","I want my agent to analyze sector performance by retrieving data for all stocks in a watchlist"],"best_for":["Portfolio analysis agents","Comparative financial research workflows","Agents building market dashboards or sector analysis reports"],"limitations":["Batch size may be constrained by Yahoo Finance rate limits; large portfolios (100+ tickers) risk throttling","No built-in deduplication — repeated tickers in a batch are fetched separately","Latency scales linearly with ticker count; no async/parallel optimization documented","Aggregation schema is fixed; custom field selection or filtering not exposed"],"requires":["MCP client with support for parameterized tool calls","Python 3.8+","yfinance library","Network access to Yahoo Finance"],"input_types":["array of ticker symbols (e.g., ['AAPL', 'MSFT', 'GOOGL'])","optional: date range, interval, data fields to include"],"output_types":["JSON array of ticker objects with OHLCV and fundamentals","normalized comparison matrix (tickers × metrics)"],"categories":["tool-use-integration","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_2","uri":"capability://data.processing.analysis.historical.ohlcv.time.series.retrieval.with.interval.selection","name":"historical ohlcv time-series retrieval with interval selection","description":"Exposes yfinance's Ticker.history() method through MCP, allowing agents to fetch historical price data at configurable intervals (daily, weekly, monthly). Translates interval parameters into yfinance's period/interval arguments, returns time-indexed DataFrames converted to JSON arrays with timestamp, open, high, low, close, volume, and adjusted close fields.","intents":["I want to fetch 5 years of daily closing prices for technical analysis","I need weekly OHLCV data to identify support/resistance levels","I want my agent to calculate moving averages or volatility metrics from historical data"],"best_for":["Technical analysis agents","Backtesting and historical performance evaluation","Agents building price trend reports or momentum indicators"],"limitations":["Data granularity limited to daily, weekly, monthly; no intraday tick data (1m, 5m, 1h)","Historical data availability varies by ticker; delisted stocks may have incomplete history","Adjusted close prices may differ from raw close due to splits/dividends; no option to retrieve unadjusted data","Large date ranges (10+ years) may timeout or return incomplete data due to Yahoo Finance limits"],"requires":["MCP client","Python 3.8+","yfinance library","Network access to Yahoo Finance"],"input_types":["ticker symbol (string)","start date (ISO 8601 or relative like '1y', '5y')","end date (ISO 8601 or relative)","interval ('1d', '1wk', '1mo')"],"output_types":["JSON array of OHLCV objects with ISO 8601 timestamps","time-series data suitable for charting or statistical analysis"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_3","uri":"capability://data.processing.analysis.stock.fundamental.metrics.extraction","name":"stock fundamental metrics extraction","description":"Exposes yfinance's Ticker.info dictionary through MCP, extracting key fundamental metrics (PE ratio, market cap, dividend yield, earnings per share, 52-week high/low, etc.). Implements selective field extraction from yfinance's unstructured info dict, normalizing null/missing values and converting numeric strings to proper types for agent consumption.","intents":["I want my agent to compare valuation metrics (PE, PB ratio) across stocks","I need to fetch dividend yield and payout ratio for income-focused portfolio analysis","I want to identify stocks trading near their 52-week lows for screening"],"best_for":["Fundamental analysis agents","Stock screening and filtering workflows","Valuation comparison and investment decision agents"],"limitations":["yfinance's info dict is unstructured and inconsistently populated; some fields may be missing or null for certain tickers","Data freshness varies; some metrics (earnings) update quarterly, others (price) update daily","No field validation or schema enforcement; agents must handle missing/malformed data","Derived metrics (e.g., PEG ratio) not computed; agents must calculate from raw fields"],"requires":["MCP client","Python 3.8+","yfinance library","Network access to Yahoo Finance"],"input_types":["ticker symbol (string)","optional: specific metric fields to retrieve (e.g., ['trailingPE', 'marketCap', 'dividendYield'])"],"output_types":["JSON object with normalized fundamental metrics","key-value pairs with numeric and string values"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_4","uri":"capability://tool.use.integration.mcp.protocol.resource.and.tool.registration","name":"mcp protocol resource and tool registration","description":"Implements the Model Context Protocol server specification, registering yfinance capabilities as MCP resources and tools with proper schema definitions. Uses MCP's JSONSchema for input validation, implements request/response serialization, and handles MCP lifecycle (initialization, capability advertisement, error handling). Enables Claude and other MCP clients to discover and invoke yfinance functions with type-safe arguments.","intents":["I want Claude to automatically discover available stock data functions without manual configuration","I need type-safe argument validation for stock ticker queries","I want to integrate yfinance into my MCP-compatible AI framework (Claude Desktop, custom host, etc.)"],"best_for":["Teams using Claude Desktop or MCP-compatible AI frameworks","Developers building MCP servers for financial data integration","Organizations standardizing on MCP for AI tool integration"],"limitations":["MCP protocol overhead adds ~50-100ms per request compared to direct library calls","Tool schema must be manually defined; no automatic schema generation from yfinance","Error handling is limited to MCP error responses; no custom exception types exposed","No built-in authentication; relies on MCP client's credential management"],"requires":["MCP-compatible client (Claude Desktop, custom MCP host, etc.)","Python 3.8+","mcp library (Python SDK for MCP)","yfinance library"],"input_types":["MCP tool call requests with JSONSchema-validated arguments"],"output_types":["MCP tool response with JSON-serialized results","MCP error responses for invalid inputs or failures"],"categories":["tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_5","uri":"capability://safety.moderation.error.handling.and.data.validation.for.ticker.queries","name":"error handling and data validation for ticker queries","description":"Implements input validation for ticker symbols and date parameters, catching invalid tickers early and returning structured error responses via MCP. Validates ticker format (alphanumeric, length constraints), date range logic (start < end), and handles yfinance exceptions (network errors, invalid symbols) by translating them into MCP error responses with descriptive messages for agent consumption.","intents":["I want my agent to gracefully handle invalid ticker symbols without crashing","I need clear error messages when a date range is invalid or a ticker has no data","I want to prevent malformed requests from reaching yfinance and wasting API quota"],"best_for":["Production AI agents requiring robust error handling","Agents operating in untrusted environments (user-provided tickers)","Workflows requiring detailed error reporting for debugging"],"limitations":["Validation is basic (format checks); doesn't verify ticker existence without a yfinance call","Error messages are generic; no ticker-specific suggestions (e.g., 'did you mean AAPL?')","Network errors from Yahoo Finance are not retried; agents must implement retry logic","No rate-limit detection; agents may hit Yahoo Finance limits without warning"],"requires":["MCP client","Python 3.8+","yfinance library"],"input_types":["ticker symbol (string)","date range (ISO 8601 or relative)"],"output_types":["MCP error response with error code and message","structured error details for agent error handling"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_6","uri":"capability://data.processing.analysis.ticker.symbol.normalization.and.aliasing","name":"ticker symbol normalization and aliasing","description":"Handles common ticker symbol variations and aliases (e.g., 'Apple' → 'AAPL', 'BRK.A' → 'BRK-A'), normalizing user input before querying yfinance. Implements a mapping layer for common aliases and case-insensitive matching, allowing agents to accept natural language ticker references and convert them to valid yfinance symbols.","intents":["I want my agent to accept 'Apple' or 'apple' and resolve it to 'AAPL'","I need to handle Berkshire Hathaway's multiple ticker formats (BRK.A, BRK-A)","I want agents to accept company names and resolve them to ticker symbols"],"best_for":["Conversational financial agents accepting natural language input","Agents handling user-provided ticker references","Multi-region applications supporting different ticker formats"],"limitations":["Alias mapping is static; new tickers or aliases require code updates","Company name resolution is limited to hardcoded mappings; no fuzzy matching","Ambiguous aliases (e.g., 'BA' could be Boeing or Banco Azteca) are not disambiguated","International tickers with region suffixes (e.g., 'ASML.AS') may not be normalized"],"requires":["MCP client","Python 3.8+","yfinance library"],"input_types":["ticker symbol or company name (string, case-insensitive)"],"output_types":["normalized ticker symbol (uppercase, yfinance-compatible format)"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"smithery_anchoragents-yfinance-mcp-server2__cap_7","uri":"capability://automation.workflow.mcp.server.lifecycle.management.and.deployment","name":"mcp server lifecycle management and deployment","description":"Provides a runnable MCP server implementation with standard lifecycle hooks (startup, shutdown, error recovery). Implements stdio-based MCP transport for local execution or can be deployed as a subprocess managed by MCP clients (Claude Desktop, custom hosts). Handles graceful shutdown, resource cleanup, and connection state management for reliable agent integration.","intents":["I want to run yfinance as an MCP server locally for Claude Desktop","I need to deploy yfinance-mcp as a managed subprocess in my AI framework","I want reliable connection handling and graceful error recovery"],"best_for":["Claude Desktop users integrating yfinance","Teams deploying MCP servers in containerized environments","Developers building custom MCP hosts"],"limitations":["Stdio transport is single-connection; no multi-client support","No built-in process monitoring or auto-restart; relies on parent process management","Startup time includes yfinance module import (~1-2 seconds); not suitable for serverless","No persistent state; each connection is stateless"],"requires":["Python 3.8+","mcp library","yfinance library","MCP client with subprocess support (Claude Desktop, custom host)"],"input_types":["MCP initialization request"],"output_types":["MCP initialization response with capability advertisement"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":27,"verified":false,"data_access_risk":"high","permissions":["MCP client implementation (Claude Desktop, custom MCP host, or compatible framework)","Python 3.8+","yfinance library (installed as dependency)","Network access to Yahoo Finance endpoints","MCP client with support for parameterized tool calls","yfinance library","Network access to Yahoo Finance","MCP client","MCP-compatible client (Claude Desktop, custom MCP host, etc.)","mcp library (Python SDK for MCP)"],"failure_modes":["yfinance relies on Yahoo Finance scraping, which can be rate-limited or blocked without notice","No built-in caching — repeated queries for the same ticker incur network latency","Historical data accuracy depends on Yahoo Finance data quality; gaps or delays may occur","Real-time data is delayed by 15-20 minutes for free tier; no intraday tick-level granularity","Batch size may be constrained by Yahoo Finance rate limits; large portfolios (100+ tickers) risk throttling","No built-in deduplication — repeated tickers in a batch are fetched separately","Latency scales linearly with ticker count; no async/parallel optimization documented","Aggregation schema is fixed; custom field selection or filtering not exposed","Data granularity limited to daily, weekly, monthly; no intraday tick data (1m, 5m, 1h)","Historical data availability varies by ticker; delisted stocks may have incomplete history","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.26,"ecosystem":0.48999999999999994,"match_graph":0.25,"freshness":0.5,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:25.635Z","last_scraped_at":"2026-05-03T15:19:25.721Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=anchoragents-yfinance-mcp-server2","compare_url":"https://unfragile.ai/compare?artifact=anchoragents-yfinance-mcp-server2"}},"signature":"30KH4YN7OIxiDS4eL0v5SDt8ZSMUTjoHqgtwCqh65YcikZlzZ+C4RWH8FyEZl6QtoZRJaV2kkY2DCbIwuBWcBg==","signedAt":"2026-06-20T08:25:00.476Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/anchoragents-yfinance-mcp-server2","artifact":"https://unfragile.ai/anchoragents-yfinance-mcp-server2","verify":"https://unfragile.ai/api/v1/verify?slug=anchoragents-yfinance-mcp-server2","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}