Skip to main content
Glama
marckwei

MCP Yahoo Finance

by marckwei
README.md
# MCP Yahoo Finance

A [Model Context Protocol](https://modelcontextprotocol.io) (MCP) server for Yahoo Finance interaction. This server provides tools to get pricing, company information and more.

> Please note that `mcp-yahoo-finance` is currently in early development. The functionality and available tools are subject to change and expansion as I continue to develop and improve the server.

## Installation

You don't need to manually install `mcp-yahoo-finance` if you use [`uv`](https://docs.astral.sh/uv/). We'll use [`uvx`](https://docs.astral.sh/uv/guides/tools/) to directly run `mcp-yahoo-finance`.

I would recommend using this method if you simply want to use the MCP server.

### Using pip

Using `pip`.

```sh
pip install mcp-yahoo-finance
```

### Using Git

You can also install the package after cloning the repository to your machine.

```sh
git clone git@github.com:maxscheijen/mcp-yahoo-finance.git
cd mcp-yahoo-finance
uv sync
```

## Configuration

### Claude Desktop

Add this to your `claude_desktop_config.json`:

```json
{
    "mcpServers": {
        "yahoo-finance": {
            "command": "uvx",
            "args": ["mcp-yahoo-finance"]
        }
    }
}
```
You can also use docker:

```json
{
    "mcpServers": {
        "yahoo-finance": {
            "command": "docker",
            "args": ["run", "-i", "--rm", "IMAGE"]
        }
    }
}
```

### VSCode

Add this to your `.vscode/mcp.json`:

```json
{
    "servers": {
        "yahoo-finance": {
            "command": "uvx",
            "args": ["mcp-yahoo-finance"]
        }
    }
}
```

## Examples of Questions

1. "What is the stock price of Apple?"
2. "What is the difference in stock price between Apple and Google?"
3. "How much did the stock price of Apple change between 2024-01-01 and 2025-01-01?"

## Build

Docker:

```sh
docker build -t [IMAGE] .
```

## Test with MCP Inspector

```sh
npx @modelcontextprotocol/inspector uv run mcp-yahoo-finance
```
## Acknowledgements

- Original project by [Max Scheijen](https://github.com/maxscheijen)

TDQS

C2.8/5.0

Scored across 11 tools

Disambiguation3/5

Most tools are clearly distinct for financial data retrieval (e.g., cashflow, dividends, news), but there is notable overlap between get_current_stock_price, get_stock_price_by_date, and get_stock_price_date_range, which could cause confusion about which to use for price queries. The cmd_run tool is completely unrelated to the finance domain, creating a significant outlier.

Naming Consistency4/5

Ten of the eleven tools follow a consistent get_* verb_noun pattern, making them predictable and readable. However, cmd_run breaks this pattern with a different verb style and no clear relation to the finance theme, slightly reducing overall consistency.

Tool Count4/5

With 11 tools, the count is reasonable for a financial data server, covering key aspects like prices, financial statements, and news. It's slightly high due to redundant price tools, but still well-scoped for the domain without being overwhelming.

Completeness4/5

The toolset provides solid coverage for retrieving financial data (e.g., prices, statements, news, recommendations), but there are minor gaps such as missing company profile info or market summary tools. The unrelated cmd_run tool does not contribute to domain completeness and feels out of place.