ð¹ MCP YFinance Stock Server
ããŒã«ã«ð¹ MCP YFinance Stock Server ã«ã€ããŠ
MCP YFinance Stock Server ã¯ãPythonãFastAPIãYahoo FinanceïŒyfinanceïŒã®ããŒã¿ãçšããæ ªäŸ¡ MCP ãµãŒããŒã§ãAI ãšãŒãžã§ã³ããã¯ã©ã€ã¢ã³ãããå©çšãããããšãæ³å®ããŠããŸãããŠã©ãããªã¹ã管çããã¯ãã«ã«ææšåæãããã·ã¥ããŒãããµã³ãã«æ©èœãšããŠåããåŠç¿ã詊äœã«é©ããŠããŸãã
äž»ãªæ©èœ
- 01ãã£ãã«ãŒã«ããçŸåšæ ªäŸ¡ã®ååŸ
- 02ãŠã©ãããªã¹ãã®ç®¡ç
- 03RSIãMACDãç§»åå¹³åã«ããåæ
- 04éå»ã®ãã©ãã£ãªãã£ãš ATR ã®ç®åº
- 052 éæã®æ ªäŸ¡æ¯èŒ
掻çšã·ãŒã³
- 01AI ã¢ã·ã¹ã¿ã³ãã«ããæ ªäŸ¡ã®ç §äŒãšæ¯èŒ
- 02ãŠã©ãããªã¹ãéæã®çŽè¿ã®å€åãã®ç¢ºèª
- 03æ ªåŒåæåãã®ãšãŒãžã§ã³ããããã·ã¥ããŒããžã®ããŒã¿æäŸ
MCP 察å¿
æ¬ãããžã§ã¯ã㯠MCP ãµãŒããŒïŒuv run main.pyïŒãšããŠåäœããget_stock_priceãadd_to_watchlistãanalyze_stock ãªã©çŽ 18 ã®æ ªåŒé¢é£ããŒã«ã MCP ã¯ã©ã€ã¢ã³ãã«å ¬éããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
ð¹ MCP YFinance æ ªäŸ¡ãµãŒããŒ
ãã®ãããžã§ã¯ãã¯ãYahoo Finance (YFinance) API ãå©çšããMCP (Model Control Protocol) ãšã·ãŒã ã¬ã¹ã«çµ±åã§ããããã«æ§ç¯ãããæ ªäŸ¡ãµãŒããŒãã»ããã¢ããããŸãã
AI ãšãŒãžã§ã³ããã¯ã©ã€ã¢ã³ãã¯ã次ã®ããšãã§ããŸãã
- ãªã¢ã«ã¿ã€ã ã®æ ªäŸ¡ããŒã¿ãååŸãã
- ãŠã©ãããªã¹ãã管çãã
- æ ªåŒã詳现ã«åæãã
- ãã¯ãã«ã«ææšããã¹ãŠå®è¡ãã
- ããã«å€ãã®ããšãè¡ã
ðª ãŸãã¯ã·ã³ãã«ã«ïŒæå·è³ç£äŸ¡æ Œãã©ãã«ãŒãäœã£ãŠã¿ãŸããã
æ¬æ Œçãªæ ªäŸ¡ãµãŒããŒã«åãçµãåã«ãPython + MCP ã§äœãããã·ã³ãã«ãªæå·è³ç£ãã©ãã«ãŒããå§ããããšãããããããŸã ð
ð GitHub ãªããžããªïŒ https://github.com/Adity-star/mcp-crypto-server
次ã®ããšãåŠã¹ãŸãã
- MCP ã䜿ã£ãŠ get_price("BTC") ãªã©ã®æå·è³ç£ããŒã«ãå ¬éãã
- FastAPI ã§ API ãæ§ç¯ãã
- Alpaca API ã䜿ã£ãŠãªã¢ã«ã¿ã€ã äŸ¡æ ŒãååŸãã
ð é¢é£ãããžã§ã¯ã
ç§ã®ã»ãã®ãããžã§ã¯ããã芧ãã ããã
- GenAI-LearningsïŒçæ AI ã®æŠå¿µãããŒã«ããããžã§ã¯ããæ·±ãæãäžããŸãã
- LangChain-MasteryïŒåŒ·å㪠LLM ã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã« LangChain ãç¿åŸããããã®ãã¹ãŠãå«ãŸããŠããŸãã
- Complete Data ScienceïŒããŒã¿ãµã€ãšã³ã¹ãš AI ã®æŠå¿µãããŒã«ããããžã§ã¯ããæ·±ãæãäžããåŠç¿ã颿¥æºåã®ããã®è³æããã¹ãŠæäŸããŸãã
- Reinforcement-LearningïŒåŒ·ååŠç¿ã®å®è·µçãªå®éšãšçè«ã玹ä»ããŸãã
- CompleteRAGïŒæ€çŽ¢æ¡åŒµçæïŒRAGïŒã·ã¹ãã ããšã³ãããŒãšã³ãã§å®è£ ããŸãã
ð æ¬¡ã®ã¹ãããïŒyFinance æ ªäŸ¡ãµãŒããŒãäœããŸããã
äžé£ã®æµãã«æ £ããããããé«åºŠãªæ ªäŸ¡ãã©ãã«ãŒã«é²ã¿ãŸããã ð¹
ð GitHub ãªããžããªïŒ https://github.com/Adity-star/mcp-yfinance-server
ð 詳现ãªããã°ïŒ ð PythonãyFinanceããããŠå°ãã®ãªã¿ã¯çãªæ ç±ã§èªåã ãã®æ ªäŸ¡ãµãŒããŒãäœã£ãæ¹æ³
å«ãŸããæ©èœïŒ
- ãŠã©ãããªã¹ã
- ã»ãŒãªã¢ã«ã¿ã€ã ã®äŸ¡æ ŒæŽæ°
- ãã¯ãã«ã«ãµããªãŒ
- ãã«æ©èœã®ããã·ã¥ããŒã
- ãã¬ã³ãããã³ã¢ã¡ã³ã¿ã ææš
- ãŠã©ãããªã¹ã管ç
ðŠ ã¹ããã 1ïŒç°å¢ãã»ããã¢ããããïŒuv ã䜿çšïŒ
ãããžã§ã¯ãç°å¢ã®ç®¡çã«ã¯ãã¢ãã³ã§éåžžã«é«é㪠Python ããã±ãŒãžãããŒãžã£ãŒã§ãã uv ã䜿çšããŸãã
ð ïž ã€ã³ã¹ããŒã«ãšã»ããã¢ãã
ã¿ãŒããã«ã§æ¬¡ã®ã³ãã³ããå®è¡ããŸãã
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create and navigate to your project directory
mkdir mcp-yfinance-server
cd mcp-yfinance-server
# Initialize a new project
uv init
# Create and activate the virtual environment
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
ð¥ ãããžã§ã¯ããã€ã³ã¹ããŒã«ãã
äŸåé¢ä¿ãèšå®ãã pyproject.toml ã®æºåãã§ããããæ¬¡ãå®è¡ããŸãã
# Run
uv pip install -e .
ð ã¹ããã 2ïŒMCP ãµãŒããŒãèµ·åãã
ç°å¢ã®æºåãã§ããããæ ªäŸ¡ãµãŒããŒãèµ·åããŸãã
uv run main.py
𧪠ãŸãç°¡åã«ãã¹ãããŠã¿ãŸããïŒ æåã«ããŒã«ã確èªããŠã¿ãŸãããã
python run test_server_fun.py
ð ãµãŒããŒå šäœã®ä»çµã¿ãæ°ã«ãªããŸããïŒ
ãœãŒã¹ã³ãŒãã¯ãã¡ãããã芧ãã ããã
ð ïž MCP ããŒã«ãªãã¡ã¬ã³ã¹
ãã®ãµãŒããŒã¯ãAI ãšãŒãžã§ã³ãã CLI ãŠãŒã¶ãŒåãã«å€ãã®ããŒã«ãæäŸããŠããŸãã
éèŠãªããŒã«ãããã€ãã玹ä»ããŸããããŒã«ã®å
šãªã¹ãã¯ãã¡ããã芧ãã ããã
ðŠ ããŒã«äžèЧ
| ããŒã«å | 説æ |
|---|---|
add_to_watchlist | å人çšãŠã©ãããªã¹ãã«æ ªåŒã®ãã£ãã«ãŒã远å ããŸãã |
analyze_stock | 1ãæéã®ãã¯ãã«ã«ãªãã¬ã³ãåæãå®è¡ããŸãïŒRSIãMACDãç§»åå¹³åç·ïŒã |
get_technical_summary | ææšãšã·ã°ãã«ãå«ããå æ¬çãªãã¯ãã«ã«ãµããªãŒãçæããŸãã |
get_watchlist_prices | ãŠã©ãããªã¹ãã«ç»é²ããããã¹ãŠã®ãã£ãã«ãŒã®ææ°äŸ¡æ ŒãååŸããŸãã |
get_trend_analysiss | æè¿ã®ãã¬ã³ãã®å€åããã¿ãŒã³ãä¹é¢ãåæããŸãã |
get_stock_price | æå®ããããã£ãã«ãŒã·ã³ãã«ã®çŸåšäŸ¡æ ŒãååŸããŸãã |
get_volatility_analysis | éå»ã®ãã©ãã£ãªãã£ãšATRææšãèšç®ããŸãã |
compare_stocks | 2éæã®æ ªäŸ¡ãæ¯èŒããŸãïŒçžå¯Ÿããã©ãŒãã³ã¹åæã«äŸ¿å©ã§ãïŒã |
â æ ªåŒã粟å¯ã«åæã»ç£èŠããããã®åŒ·åãªããŒã«ãåèš18çš®é¡ãããŸãã
ð§ 䜿çšäŸ
ãããã®ããŒã«ã¯ã次ã®çšéã«æé©ã§ãã
- ð åçãªãŠã©ãããªã¹ã管ç
- ð ãã¬ã³ããšã¢ã¡ã³ã¿ã ã®æ€åº
- ð æè³å€æã®ããã®è©³çްãªãã¯ãã«ã«åæ
- â ïž ãã©ãã£ãªãã£ã«åºã¥ããªã¹ã¯è©äŸ¡
- ð€ æ ªåŒã«ç¹åããèªåŸåãšãŒãžã§ã³ããããã·ã¥ããŒãã®æ§ç¯
âïž MCP ãµãŒããŒã䜿ã£ãŠã€ã³ããªãžã§ã³ããªéèã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããéã¯ããã®ãªãã¡ã¬ã³ã¹ãæå ã«çœ®ããŠãããŸãããã
ð ã¹ããã 3ïŒMCP ãµãŒããŒã調ã¹ã
MCP Server Inspector ã䜿ã£ãŠãMCP ããŒã«ãç°¡åã«ç¢ºèªã»ãã¹ãã§ããŸãã ã¿ãŒããã«ã§æ¬¡ã®ã³ãã³ããå®è¡ããŸãã
$ mcp dev source/yf_server.py
æ¬¡ã®æäœãã§ããã€ã³ã¿ã©ã¯ãã£ããªUIãèµ·åããŸãã
- ð§° å©çšå¯èœãªãã¹ãŠã®ããŒã«ãšãªãœãŒã¹ã衚瀺ãã
- ð¥ åããŒã«ã®å ¥åïŒåºåããã¹ããã
- ð¡ ãµãŒããŒããã®ãªã¢ã«ã¿ã€ã å¿çãç£èŠãã
âïž ã¹ããã 4ïŒMCP ãµãŒããŒãèšå®ãã
YFinance MCP ãµãŒããŒãçµ±åããã«ã¯ãmcp.config.json ãã¡ã€ã«ã«æ¬¡ã®ãšã³ããªã远å ããŸãã
{
"mcpServers": {
"yfinance-price-tracker": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/YOUR/mcp-yfinance-server",
"run",
"main.py"
]
}
}
}
â ïž /ABSOLUTE/PATH/TO/... ãå®éã®ãã¡ã€ã«ãã¹ã«çœ®ãæããŠãã ããã ð¡ ãã³ãïŒåãããããããããããµãŒããŒåã crypto-price-tracker ãã yfinance-price-tracker ã«å€æŽããŠãã ããã
ð ã¹ããã 5ïŒClaude Desktop ãåèµ·åãã
Claude DesktopïŒãŸãã¯MCPã䜿çšããä»»æã®ã€ã³ã¿ãŒãã§ãŒã¹ïŒãåèµ·åããŠãæ°ããYFinanceããŒã«ãåèªã¿èŸŒã¿ããæå¹åããŸãã
ããã«ãããæŽæ°ãããMCPèšå®ãèªèããããã¹ãŠã®æ ªåŒè¿œè·¡ããŒã«ã ããã«äœ¿çšã§ããããã«ãªããŸãã
â ã¹ããã 6ïŒClaude Desktop ã§ MCP ãµãŒããŒããã¹ããã
- ãã¹ãŠã®ã€ã³ã¹ããŒã«ãšèšå®ãå®äºããããClaude Desktop ã§MCPãµãŒããŒããã¹ãã§ããŸãã
次ã®ã¯ãšãªäŸã䜿ã£ãŠãMCP YFinance Server ã®åäœããã¹ãããŸãã
ãTeslaãšAppleã®æ ªäŸ¡ãæ¯èŒããŠãã ãããã â ð§
compare_stocksã䜿çš
ãéå»1ãæéã®Teslaã®å±¥æŽããŒã¿ãååŸããŠãã ãããã â ð
get_stock_historyã䜿çš
ãAppleãTeslaãRelianceããŠã©ãããªã¹ãã«è¿œå ããŠãã ãããã â ð
add_to_watchlistã䜿çš
ãéå»30æ¥éã®Appleæ ªäŸ¡ãã£ãŒãã衚瀺ããŠãã ãããã â ðŒïž Claudeã¯ãµãŒããŒã䜿ã£ãŠããŒã¿ãååŸããå¯èŠåã§ããŸã
ð· ãã£ãŒãã®äŸïŒ ðŒ ã¹ã¯ãªãŒã³ã·ã§ããã衚瀺
ð Claudeã®ã©ã€ããµã€ãïŒ Claude.siteã§ãã¢ãéã
𧪠ãããã®ãã¹ãã«ãããããŒã¿ååŸãããªã¢ã«ã¿ã€ã åæãå¯èŠåãŸã§ãMCPã®çµ±åããšã³ãããŒãšã³ãã§æ£ããåäœããŠããããšã確èªã§ããŸãã
ð çµæ
âïž æåŸ ã§ããææ
| æ©èœ | ææ |
|---|---|
| â æ ªåŒåæ | æ ªäŸ¡ãOHLCããªã¿ãŒã³ãåºæ¥é«ãã€ã³ãµã€ããããŒã¿ãå«ãæ ªåŒåæãè¡ããŸãã |
| ð ãã¯ãã«ã«åæ | RSIãMACDãMA ãªã©ã®ææšãå©çšããå æ¬çãªãã¯ãã«ã«åæã®æŠèŠã確èªã§ããŸãã |
| ð ãã©ãã£ãªãã£ã¬ããŒã | ATR ãšãã©ãã£ãªãã£ææšã䜿ã£ãŠãæ ªåŒã®ãªã¹ã¯ãåæããŸãã |
| ð ãã¬ã³ãåæ | æ ªäŸ¡ã®åããåæããŠããã¬ã³ãã®å€åããã€ããŒãžã§ã³ã¹ãæ€åºããŸãã |
| ð§ å¯èŠå | 18 çš®é¡ä»¥äžã®ããŒã«ã掻çšããŠãAI ãšãŒãžã§ã³ããããã·ã¥ããŒãã§æ ªåŒããŒã¿ãå¯èŠåã§ããŸãã |
| ð ãã¯ãã«ã«ãã£ãŒã | æ ªåŒã®ãã¯ãã«ã«ææšããªã¢ã«ã¿ã€ã ã§åæã»ç£èŠããŸãã |
| ðŒïž ããžã¥ã¢ã«ã€ã³ãµã€ã | Claude Desktop ã§ãã£ãŒããèŠèŠçãªæŠèŠãçæããŸãã |
ð æ ªäŸ¡è¿œè·¡ããããã€ã³ããªãžã§ã³ããªéèããã·ã¥ããŒããæ§ç¯ããŸãããïŒãã®ãããžã§ã¯ãã«ã¯ãå¿ èŠãªäžæ žæ©èœããã¹ãŠæã£ãŠããŸãã
ð« ãã£ãŒãããã¯ãšè²¢ç®
è²¢ç®ãæè¿ããŸãïŒãã°ã®ä¿®æ£ãæ©èœã®è¿œå ãããã¥ã¡ã³ãã®æ¹åãªã©ãçããŸã®ååããã®ãããžã§ã¯ããããè¯ããã®ã«ããŸãã
ð åé¡ã®å ±å
ãã°ãèŠã€ããå Žåãææ¡ãããå Žåã¯ãIssues ã»ã¯ã·ã§ã³ã§ issue ãäœæããŠãã ãããæ¬¡ã®å 容ãå¿ ãå«ããŠãã ããã
- â åçŸæé ïŒè©²åœããå ŽåïŒ
- ð æåŸ ãããåäœãšå®éã®åäœ
- ð· ã¹ã¯ãªãŒã³ã·ã§ãããŸãã¯ãšã©ãŒãã°ïŒè©²åœããå ŽåïŒ
ð¬ ãã«ãªã¯ãšã¹ãã®éä¿¡
ä¿®æ£ãæ¹åã®ã¢ã€ãã¢ããããŸããïŒPull Requests ã»ã¯ã·ã§ã³ã«ã¢ã¯ã»ã¹ããŠãPR ãéä¿¡ããŠãã ãããã§ããã ãæ©ã確èªããããŒãžããŸãïŒ
ð¬ ãããžã§ã¯ããåºãã
ãã®ãããžã§ã¯ãã®ãããã§ API ã®ã¬ãŒãå¶éãé«é¡ãª SaaS ããŒã«ãé¿ãããããªãâŠâŠ
- ð ãªããžããªã«ã¹ã¿ãŒãä»ãã
- ðŽ ãã©ãŒã¯ããŠãèªåã ãã®æå·è³ç£ïŒæ ªåŒããŒã«ãäœã
- ð² @AdityaAkuskar ã X ã§ã¡ã³ã·ã§ã³ãã â äœãäœã£ãã®ããã²èŠããŠãã ããïŒ
- ð LinkedIn ã§ã€ãªãã
ð ã©ã€ã»ã³ã¹
ð äžç·ã«ãããè¯ãããŒã«ãäœããŸãããã
ãã€ãŒãã¹ã¬ãããã«ã«ãŒã»ã«ããã®ãããžã§ã¯ãã®ããŒã³ãæçš¿ãå¿ èŠãªãããä»»ããã ãã ð
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã
