🦀 Rust MCP server for stock prices from stooq.com | 株価取得MCPサーバー
stooq-mcp
A Model Context Protocol (MCP) server written in Rust that fetches stock price data from stooq.com.
Demo
https://github.com/user-attachments/assets/63b55175-80c3-42aa-a28a-bdb21c66169e
Features
- Latest stock prices - Get real-time stock price data
- Historical data - Retrieve historical stock data with custom date ranges
- Multi-market support - Access stocks from 5 major markets
Supported Markets
| Market Code | Country |
|-------------|---------|
| jp | Japan |
| us | United States |
| uk | United Kingdom |
| hk | Hong Kong |
| de | Germany |
Installation
Prerequisites
- Rust 1.75+
- Cargo
One-liner Install
curl -fsSL https://raw.githubusercontent.com/hoqqun/stooq-mcp/main/install.sh | bash
This will install to ~/.stooq-mcp/. To customize:
STOOQ_MCP_DIR=/your/path curl -fsSL https://raw.githubusercontent.com/hoqqun/stooq-mcp/main/install.sh | bash
Quick Install
git clone https://github.com/hoqqun/stooq-mcp.git
cd stooq-mcp
./install.sh
The install script will:
- Build the project
- Register with Claude Code and/or Claude Desktop
Manual Build
cargo build --release
The binary will be located at ./target/release/stooq-mcp.
Usage
Claude Code
Register the MCP server with Claude Code:
claude mcp add stooq-mcp /path/to/stooq-mcp/target/release/stooq-mcp
Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"stooq-mcp": {
"command": "/path/to/stooq-mcp/target/release/stooq-mcp"
}
}
}
Tools
get_stock_price
Fetches stock price data from stooq.com.
Parameters
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| ticker | string | ✅ | Stock ticker symbol (e.g., "7203", "AAPL") |
| market | string | ✅ | Market code: jp, us, uk, hk, de |
| start_date | string | ❌ | Start date in YYYYMMDD format (e.g., "20240101") |
| end_date | string | ❌ | End date in YYYYMMDD format (e.g., "20241231") |
Examples
Get latest stock price
Toyota Motor (Japan):
Get the current stock price for Toyota (7203) in Japan market.
Apple (US):
Get the latest AAPL stock price from US market.
Get historical data
Sony (Japan) - 2024 full year:
Get Sony (6758) stock price history from January 1, 2024 to December 31, 2024.
Response format
Latest data:
Symbol,Date,Time,Open,High,Low,Close,Volume
7203.JP,2024-12-27,16:00:00,2500,2520,2480,2510,1000000
Historical data:
Date,Open,High,Low,Close,Volume
2024-01-04,2450,2480,2440,2470,800000
2024-01-05,2470,2490,2460,2485,750000
...
Tech Stack
- Rust - Systems programming language
- rmcp - MCP server implementation
- reqwest - HTTP client
- tokio - Async runtime
Limitations
⚠️ Important Notice
- stooq.com is an unofficial API and may change without notice
- Daily rate limits apply - excessive requests may be blocked
- Intended for personal use and learning purposes only
- Data accuracy is not guaranteed
License
MIT License - see LICENSE for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.