|
|
3 недель назад | |
|---|---|---|
| src | 3 недель назад | |
| .env.example | 1 месяц назад | |
| .gitignore | 1 месяц назад | |
| Dockerfile | 1 месяц назад | |
| PROJECT.md | 3 недель назад | |
| README.md | 3 недель назад | |
| discover_swissquote_api.py | 1 месяц назад | |
| docker-compose.yml | 3 недель назад | |
| killserver.sh | 1 месяц назад | |
| main.py | 1 месяц назад | |
| metals-mcp_first_idea.md | 1 месяц назад | |
| requirements.txt | 1 месяц назад | |
| restart.sh | 1 месяц назад | |
| run.sh | 1 месяц назад | |
| swissquote_pairs.json | 1 месяц назад | |
| test_metals.py | 3 недель назад | |
| test_swissquote_api.py | 1 месяц назад | |
| tests.sh | 1 месяц назад |
FastMCP-based metals market data server backed by a Swissquote poller and local candle store.
/mcp/mcp/sse/mcp/messages//rpc compatibility pathsource .venv/bin/activate
pip install -r requirements.txt
./run.sh
Default URL base: http://127.0.0.1:8515
docker compose up -d --build
The compose file persists data/ and logs/ into the project directory and keeps the candle DB bounded.
GET / → health + tool listGET /health → health + cache/store statsget_priceget_ohlcvget_last_candleget_market_snapshotget_indicatorget_top_moversget_capabilitiesget_regimecrypto-mcp tool names, with get_last_candle kept as a small metals-specific convenience.get_price fetches live Swissquote quotes for metals like XAU.XAU/USD, XAG/USD, XPT/USD, and XPD/USD by default.get_market_snapshot and get_regime now provide the useful metals context in crypto-style naming.METALS_CANDLE_RETENTION_DAYS (default 30), with periodic pruning to keep the DB bounded.get_indicator, get_market_snapshot, get_top_movers, and get_regime as more metals behavior becomes useful to Argus.crypto-mcp where practical.8515../tests.sh
./run.sh
./killserver.sh stops stale listeners on the configured port./restart.sh chains kill and run