asian-etf-mcp
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
asian-etf-mcp
An MCP server that exposes thematic ETF data across 5 Asian markets + the US (Hong Kong, China A-Share, Taiwan, South Korea, US) as tools an LLM agent — or Claude Code / Claude Desktop — can call.
It fetches public OHLCV data from Yahoo Finance, computes industry returns /
momentum / rankings, and serves them through a small set of well-described tools.
Every result carries its source files and as_of date, so answers built on it
are auditable.
Tools
tool | args | returns |
| — | every market → industries → ETFs (call first to discover) |
|
| each ETF's total return vs the benchmark |
|
| per-industry 5d / 21d / 63d / YTD return, absolute + relative |
|
| industries ranked by return |
|
| raw daily OHLCV bars |
market accepts hk / cn / tw / sk / us (or full names). Dates are ISO
strings like 2025-06-01.
Related MCP server: eastmoney-skills2mcp
Quick start
git clone https://github.com/ivyyy0601/etf-mcp.git
cd etf-mcp # (or the asian-etf-mcp directory)
python3.10+ -m venv .venv
./.venv/bin/pip install -r requirements.txt
# Build the data cache once (fetches ~55 symbols from Yahoo Finance, ~2-3 min)
./.venv/bin/python build_cache.pyThat's it — the server is self-contained. The market/industry/ETF definitions
ship in configs/, and the data comes from public Yahoo Finance, so you don't
need any account, API key, or access to anyone's server.
Use with Claude Code
claude mcp add asian-etf -- /abs/path/to/.venv/bin/python /abs/path/to/src/server.pyThen ask, e.g. “use asian-etf to show which US sector has the strongest momentum.”
How it works
Two layers, kept separate on purpose:
src/server.py the "menu": thin FastMCP wrapper, one @mcp.tool() per function
│ calls
src/data_access.py the "kitchen": reads CSVs, computes returns/momentum/rankingsdata_access.py has no MCP dependency — it returns plain Python objects and
can be imported by anything (tests, a notebook, a LangGraph agent). server.py
only adds the protocol + tool descriptions.
Caching (fast reads). build_cache.py precomputes every standard view into
cache.json once. Default-parameter tool calls are served from that cache
(instant); only custom date ranges are computed on the fly.
Refresh-on-use (always current, zero babysitting). When a tool is called and the cache is older than the latest trading day, the server rebuilds it first (fetches the latest data), then answers. So you never have to run a cron or open anything — it self-maintains.
Configuration
env var | default | meaning |
|
| where OHLCV CSVs are stored (generated) |
|
| market/industry/ETF definitions (shipped) |
To add a market or ETF, edit the JSON files in configs/ — no code changes.
Keeping it fresh
Anyone: nothing to do — refresh-on-use fetches the latest from Yahoo Finance when needed. Or run
python build_cache.pywhenever you want.Maintainer fast-path (optional): if you run the companion data collector on a server,
sync_data.shcan pull its daily CSVs andbuild_cache.py --no-liverecomputes from them in seconds. Requires SSH access to that server; everyone else simply uses the live Yahoo Finance path.
Project layout
src/server.py MCP server (5 tools)
src/data_access.py Streamlit-free data + cache layer
build_cache.py refresh job: fetch + precompute → cache.json
configs/ market definitions (committed)
sync_data.sh maintainer fast-path (optional)
test_data_access.py smoke test for the data layer (no MCP needed)Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
China A-share data for AI agents: 57 read-only tools plus 6 tools for your own watchlist.
China A-share screening, filings, holdings, flows and calendars as agent tools.
Independent US ETF data for research agents: 33 tools, holdings to risk checks, each dated.
Live crypto + IDX stock market intelligence for AI agents — 19 tools, no API key.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with real-time and historical Chinese stock, ETF, index, and futures data via Tushare Pro API, enabling natural language queries for financial analysis and market monitoring.5MIT
- AlicenseNot gradedqualityDmaintenanceProvides 11 MCP tools for querying A-share market data, financial reports, stock screening, hot topics, self-selected stocks, and LOF arbitrage using natural language, powered by East Money / Miaoxiang APIs.MIT
- AlicenseAqualityCmaintenanceProvides 46 financial data tools for AI assistants covering A-share, HK, US markets, macroeconomics, funds, and derivatives, powered by AKShare.5425 PyPIMIT
- AlicenseAqualityAmaintenanceWraps Taiwan Stock Exchange OpenAPI into MCP tools for searching datasets, fetching stock data, and obtaining ETF snapshots, enabling AI models to access TWSE market information.521 npm3MIT