FastMCP v2 ð
ããŒã«ã«FastMCP v2 ð ã«ã€ããŠ
FastMCPã¯ãMCPãµãŒããŒãã¯ã©ã€ã¢ã³ããã€ã³ã¿ã©ã¯ãã£ãã¢ããªãæ§ç¯ããPythonãã¬ãŒã ã¯ãŒã¯ã§ããMCPã¢ããªãéçºãã人åãã«ãPython颿°ãããŒã«åããURLçµç±ã®ãµãŒããŒæ¥ç¶ã管çããŸãã
äž»ãªæ©èœ
- 01ããŒã«ã»ãªãœãŒã¹ã»ããã³ããã®å ¬é
- 02颿°ããã¹ããŒããšæ€èšŒãçæ
- 03ããŒã«ã«ããã³ãªã¢ãŒããµãŒããŒãžã®æ¥ç¶
- 04ãã©ã³ã¹ããŒãã»èªèšŒã»ãããã³ã«ã©ã€ããµã€ã¯ã«ã®ç®¡ç
- 05ã€ã³ã¿ã©ã¯ãã£ããªããŒã«UIã®äœæ
掻çšã·ãŒã³
- 01Python颿°ãMCPããŒã«ãšããŠå ¬é
- 02ãªãœãŒã¹ãšããã³ãããåããMCPãµãŒããŒã®æ§ç¯
- 03ã¢ããªã±ãŒã·ã§ã³ããMCPãµãŒããŒãžæ¥ç¶
- 04ããŒã«ã«ã€ã³ã¿ã©ã¯ãã£ãUIã远å
MCP 察å¿
FastMCPã¯ãããŒã«ããªãœãŒã¹ãããã³ãããå ¬éããMCPãµãŒããŒãšããããã³ã«ã«å¯Ÿå¿ããŠMCPãµãŒããŒãžæ¥ç¶ããã¯ã©ã€ã¢ã³ãã®æ§ç¯ã«äœ¿ããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
FastMCP ð
çŽ æ©ãåããŠããã®ãäœããŸãããã
Prefect ã ð ã蟌ããŠäœæ
ã¢ãã«ã³ã³ããã¹ããããã³ã«ïŒMCPïŒã¯ãLLM ãããŒã«ãããŒã¿ã«æ¥ç¶ããŸããFastMCP ã¯ããµãŒããŒãã¯ã©ã€ã¢ã³ãã察話åã¢ããªåãã®å æ¬ç㪠MCP ã¢ããªã±ãŒã·ã§ã³ãã¬ãŒã ã¯ãŒã¯ã§ãããµãŒããŒã¯éåžžã® Python ããå§ããããŸãã
from fastmcp import FastMCP
mcp = FastMCP("Demo ð")
@mcp.tool
def add(a: int, b: int) -> int:
"""Add two numbers"""
return a + b
if __name__ == "__main__":
mcp.run()
FastMCP ãéžã¶çç±
广ç㪠MCP ã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ã¯ãèŠãç®ã»ã©ç°¡åã§ã¯ãããŸãããFastMCP ããã¹ãŠãæ ããŸããPython 颿°ã§ããŒã«ã宣èšããã ãã§ãã¹ããŒããæ€èšŒãããã¥ã¡ã³ããèªåçã«çæãããŸããURL ã§ãµãŒããŒã«æ¥ç¶ããã ãã§ããã©ã³ã¹ããŒãã®ããŽã·ãšãŒã·ã§ã³ãèªèšŒããããã³ã«ã®ã©ã€ããµã€ã¯ã«ãèªåçã«ç®¡çãããŸããããžãã¯ã«éäžããã°ãMCP ã®éšåã¯ãã®ãŸãŸåäœããŸããFastMCP ãªãããã¹ããã©ã¯ãã£ã¹ãçµã¿èŸŒãŸããŠããŸãã
FastMCP ã MCP ãæ±ãããã®æšæºãã¬ãŒã ã¯ãŒã¯ã§ããçç±ã¯ããã«ãããŸãã FastMCP 1.0 ã¯ã2024 幎ã«å ¬åŒ MCP Python SDK ã«çµã¿èŸŒãŸããŸãããçŸåšãç©æ¥µçã«ã¡ã³ããã³ã¹ãããŠããã¹ã¿ã³ãã¢ãã³ãããžã§ã¯ã㯠1 æ¥ã« 100 äžåããŠã³ããŒããããŠãããäœããã®ããŒãžã§ã³ã® FastMCP ãããã¹ãŠã®èšèªã«ããã MCP ãµãŒããŒã® 70ïŒ ãæ¯ããŠããŸãã
FastMCP ã«ã¯ 3 ã€ã®æ±ããããŸãã
ãµãŒã㌠LLM ã«ããŒã«ããªãœãŒã¹ãããã³ãããå ¬éããŸãã |
ã¢ã㪠äŒè©±å ã«çŽæ¥è¡šç€ºããããã€ã³ã¿ã©ã¯ãã£ã㪠UI ãããŒã«ã«æäŸããŸãã |
ã¯ã©ã€ã¢ã³ã ããŒã«ã«ãŸãã¯ãªã¢ãŒããããã°ã©ã çµç±ãŸã㯠CLI çµç±ãåããããããã MCP ãµãŒããŒã«æ¥ç¶ããŸãã |
ãµãŒã㌠ã¯ãPython 颿°ã MCP æºæ ã®ããŒã«ããªãœãŒã¹ãããã³ããã«å€æããŸããã¯ã©ã€ã¢ã³ã ã¯ãå®å šãªãããã³ã«ãµããŒãã§ãããããµãŒããŒã«æ¥ç¶ããŸããããã« ã¢ã㪠ã¯ãäŒè©±å ã«çŽæ¥è¡šç€ºãããã€ã³ã¿ã©ã¯ãã£ã㪠UI ãããŒã«ã«æäŸããŸãã
TypeScript ã§éçºããŠããŸããïŒ FastMCP for TypeScript ã¯ãåãããŒã ãéçºã»ã¡ã³ããã³ã¹ããå
¬åŒã®å¯Ÿå¿è£œåã§ããåãæ±ãåãç念ã§ãnpm install @prefecthq/fastmcp-ts ãå®è¡ããŸãã
éçºãå§ããæºåã¯ã§ããŸãããïŒã€ã³ã¹ããŒã«ã¬ã€ãããå§ããããã¯ã€ãã¯ã¹ã¿ãŒãã«é²ãã§ãã ããã
Horizon ã§ MCP ãæ¡åŒµãã
FastMCP 㯠MCP ã¢ããªã±ãŒã·ã§ã³å±€ãæ ããŸããPrefect Horizon ã¯ãããŒã éã§ãµãŒããŒãããŒã«ãæ¡åŒµããããã®ãšã³ã¿ãŒãã©ã€ãºåã MCP ã²ãŒããŠã§ã€ã§ãããµãŒããŒãããŒã«ã®ãããã€ãæ€åºãä¿è·ãå©ç𿹿³ãäžå çã«ç®¡çã§ããŸãã
FastMCP ãš Horizon ã¯ãPrefect ã®åãããŒã ãéçºããŠããŸãã
ãã©ã³ãã®ãã¬ãã¥ãŒãšå³æããŒã«ããã¯æ©èœã䜿ã£ãŠãGitHub ãã FastMCP ãµãŒããŒããããã€ã§ããŸããäŒç€Ÿã§äœ¿çšãããã¹ãŠã® MCP ã®ãã©ã€ããŒãã¬ãžã¹ããªãäœæã§ããŸããSSO ãšããŒã«ã¬ãã«ã® RBAC ã§ã¢ã¯ã»ã¹ãä¿è·ã§ããŸããMCP ã¹ã¿ãã¯å šäœã®ç£æ»ãã°ãå¯èŠ³æž¬æ§ãã¬ããã³ã¹ãå©çšã§ããŸããæ¿èªæžã¿ã®ããŒã«ãçµã¿åãããŠãããŒã ããšãŒãžã§ã³ãåãã®å°çšãšã³ããã€ã³ããäœæã§ããŸãã
ãŸã㯠FastMCP ããå§ããŸããããHorizon ã§æ¡åŒµãã â
ã€ã³ã¹ããŒã«
uv ã䜿ã£ãŠãFastMCP ããããžã§ã¯ãã«è¿œå ããããšãããããããŸãã
uv add fastmcp
æ€èšŒãã¢ããã°ã¬ãŒããå«ãã€ã³ã¹ããŒã«æé ã®è©³çްã«ã€ããŠã¯ãã€ã³ã¹ããŒã«ã¬ã€ããã芧ãã ããã
ã¢ããã°ã¬ãŒãããæ€èšã§ããïŒ ä»¥äžã®ã¬ã€ãããçšæããŠããŸãã
- FastMCP 3 ããã®ã¢ããã°ã¬ãŒã
- FastMCP 2 ããã®ã¢ããã°ã¬ãŒã
- MCP SDK v1 ãŸã㯠v2 ããã®ã¢ããã°ã¬ãŒã
- äœã¬ãã« SDK v1 ãŸã㯠v2 ããã®ã¢ããã°ã¬ãŒã
ð ããã¥ã¡ã³ã
FastMCP ã®å®å šãªããã¥ã¡ã³ã㯠gofastmcp.com ã§ã芧ããã ããŸãã詳现ãªã¬ã€ããAPI ãªãã¡ã¬ã³ã¹ãé«åºŠãªãã¿ãŒã³ãªã©ãæ²èŒããŠããŸãã
ããã¥ã¡ã³ãã¯ãLLM ãç°¡åã«å©çšã§ããã·ã³ãã«ãª Markdown æšæºã§ãã llms.txt 圢åŒã§ãå©çšã§ããŸãã
llms.txtã¯å®è³ªçã«ãµã€ããããã§ãããã¥ã¡ã³ãå ã®ãã¹ãŠã®ããŒãžãäžèŠ§è¡šç€ºããŸããllms-full.txtã«ã¯ããã¥ã¡ã³ãå šäœãå«ãŸããŠããŸããLLM ã®ã³ã³ããã¹ããŠã£ã³ããŠãè¶ ããå Žåãããããšã«ã泚æãã ããã
ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãã«ã¯ãæåã« llms.txt ãæž¡ããŠãã ãããããŒãžã§ã³ã«å¯Ÿå¿ããããã¥ã¡ã³ããšããªãã·ã§ã³ã®ãµãŒããŒäœæã¹ãã«ã«ã€ããŠã¯ãã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããã芧ãã ããã
ã³ãã¥ããã£ïŒ Discord ãµãŒããŒã«åå ããŠãã»ãã® FastMCP éçºè ãšäº€æµããéçºäžã®ãã®ãå ±æããŸãããã
è²¢ç®
åãå ¥ãå¯èœãªè²¢ç®ãš issue å²ãåœãŠã®ã¯ãŒã¯ãããŒã«ã€ããŠã¯ããŸãCONTRIBUTING.mdãã芧ãã ããããã®åŸãã»ããã¢ãããšæ€èšŒã«ã€ããŠã¯è²¢ç®ã¬ã€ãã«åŸã£ãŠãã ããããšãŒãžã§ã³ãã¯AGENTS.mdãèªãå¿ èŠããããŸãã
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã