ð Secure and Simplify Your MCP Server with ARC
ããŒã«ã«ð Secure and Simplify Your MCP Server with ARC ã«ã€ããŠ
ARCïŒAcuvity Runtime ContainerïŒã¯ãMCP ãµãŒããŒã®ãã¹ãã£ã³ã°åãã«èšèšãããã»ãã¥ã¢ãª Docker ã©ã³ã¿ã€ã ã§ãåé¢å®è¡ãèªã¿åãå°çšãã¡ã€ã«ã·ã¹ãã ããªã¢ãŒãã¢ã¯ã»ã¹ãæäŸããŸããMinibridge ãšçµã¿åããããšããšãŒãžã§ã³ããš MCP ãµãŒããŒéã®éä¿¡ã«ã©ã³ã¿ã€ã æ€æ»ãå ããããäŒæ¥ç°å¢ã§ã®å©çšãæ³å®ããŠããŸãã
äž»ãªæ©èœ
- 01ã³ã³ããã«ãã MCP ãµãŒããŒã®åé¢å®è¡
- 02é root å®è¡ãšèªã¿åãå°çšãã¡ã€ã«ã·ã¹ãã
- 03Docker Scout ã«ããããŒãžã§ã³åºå®ãš CVE ã¹ãã£ã³
- 04SBOM æ€èšŒãšãã«ãã®æ¥æŽç¢ºèª
- 05Minibridge ã«ãã Rego ããªã·ãŒãšæ©å¯æ å ±ã®ç§å¿å
掻çšã·ãŒã³
- 01äŒæ¥ç°å¢ã§ã® MCP ãµãŒããŒã®å®å šãªãã¹ãã£ã³ã°
- 02ã«ã¹ã¿ã ãããã³ã«ãªãã§ã® MCP ãµãŒããŒã®ãªã¢ãŒãå ¬é
- 03Helm ãã£ãŒãã䜿ã£ã Kubernetes ãžã® MCP ãµãŒããŒã®ãããã€
MCP 察å¿
ARC 㯠MCP ãµãŒããŒã®ãã¹ãã£ã³ã°ãšãªã¢ãŒãå ¬éãæ ããMinibridge ã¯ãšãŒãžã§ã³ããš MCP ãµãŒããŒã®éã§ããŒã«ã®èª¬æãšåŒã³åºãåŒæ°ãæ€æ»ã»ãã£ã«ã¿ãªã³ã°ããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
ð ARC ã§ MCP ãµãŒããŒãä¿è·ããã·ã³ãã«ã«éçš
Acuvity ã§ã¯ãã»ãã¥ãªãã£ãäžå¯æ¬ ã§ããç¹ã«ãéèŠãªãšãŒãžã§ã³ãåã·ã¹ãã ãæ¯ãã MCP ãµãŒããŒã§ã¯ãªãããã§ããããã§ç§ãã¡ã¯ ARC (Acuvity Runtime Container) ãéçºããŸãããããã¯ãMCP ãµãŒããŒå°çšã«èšèšããããå®å šã§å¹çç㪠Docker ã©ã³ã¿ã€ã ã§ãã
ARC ã¯ãéé¢ãããå ç¢ãªç°å¢ãæäŸãã匷åºãªã»ãã¥ãªãã£å¯Ÿçãã·ã³ãã«ãªãããã€ãã·ãŒã ã¬ã¹ãªãªã¢ãŒãã¢ã¯ã»ã¹ãå®çŸããŸããéçšã®è€éãã§ã¯ãªããMCP ãµãŒããŒã®æ©èœã«éäžã§ããŸãã
ð§ ARC ãéžã¶çç±
ARC ã¯ãçµã¿èŸŒã¿ã®ã©ã³ã¿ã€ã ä¿è·ãå®å šãªæ¥ç¶ãæéã®ããããªããããã€ã«ãããMCP ãµãŒããŒãå®å šã«ãã¹ãããŸãã
ð çµã¿èŸŒã¿ã®ã»ãã¥ãªãã£
- éé¢ãããå®è¡ïŒéé¢ã³ã³ããå ã§å®å šã«å®è¡ããæšªæ¹åã®ç§»åãé²ããŸãã
- ããã©ã«ãã§é rootïŒæå°æš©éã培åºãããªã¹ã¯ãæå°éã«æããŸãã
- äžå€ã®ã©ã³ã¿ã€ã ïŒèªã¿åãå°çšãã¡ã€ã«ã·ã¹ãã ã«ãããæ¹ããã鲿¢ããŸãã
- ããŒãžã§ã³ã®åºå®ãš CVE ã¹ãã£ã³ïŒç©æ¥µçãªèåŒ±æ§æ€åºïŒDocker Scout çµç±ïŒã«ãããäžè²«æ§ãšå®å šæ§ã®é«ããããã€ãå®çŸããŸãã
- SBOM ãšæ¥æŽïŒãã¬ãŒãµããªãã£ãåãããã«ãã«ããããµãã©ã€ãã§ãŒã³å šäœã®éææ§ã確ä¿ããŸãã
ð¡ïž Minibridge ã«ããã©ã³ã¿ã€ã ä¿è·
Minibridge 㯠ARC ãšã·ãŒã ã¬ã¹ã«é£æºãããšãŒãžã§ã³ããš MCP ã®ããåããä¿è·ããŠãã©ã³ã¿ã€ã ã®æŽåæ§ãšããªã·ãŒãžã®æºæ ã培åºããŸãã
- æŽåæ§ãã§ãã¯ïŒã©ã³ã¿ã€ã ã³ã³ããŒãã³ãã®ããã·ã¥åã«ãããçæ£æ§ã確ä¿ããŸãã
- çµã¿èŸŒã¿ã® Rego ããªã·ãŒã«ããè
åšã®æ€åºãšé²æ¢ïŒ
- é ããæç€ºã®ã¹ã¯ãªãŒãã³ã°ïŒãdo not tellãããignore previous instructionsããUnicode ã¹ãã¬ãã°ã©ãã£ãªã©ãå¹ åºããé ãããããã³ãããã®è¡šçŸã«äžèŽããããŒã«ã®èª¬æãåŒã³åºãåŒæ°ããããã¯ããŸãã
- ã¹ããŒãããŒã®äžæ£äœ¿çšé²æ¢ïŒnoteãdebugãcontext ãªã©ãå éšæšè«ãã£ãŒã«ããå ¬éããããŒã«ãåŒã³åºãåŒæ°ãæåŠããéå ¬éã®ã¡ã¿ããŒã¿ãåŒãåºãããšãããžã§ã€ã«ãã¬ã€ã¯ãé²ããŸãã
- æ©å¯ãªãœãŒã¹ã®é²åºãã§ãã¯ïŒ.envã/etc/passwdãSSH ããŒãªã©ãéåžžã·ãŒã¯ã¬ããã«é¢é£ä»ãããããã¹ããã¡ã€ã«ããã¿ãŒã³ãåç §ããããŒã«ïŒèª¬æãŸãã¯åŒã³åºãåŒæ°ïŒãæåŠããŸãã
- ããŒã«ã®ãªãããŸãæ€åºïŒãinstead of usingãã®ãããªè¡šçŸãæ€åºããŸãããããã衚çŸã¯ãã¢ã·ã¹ã¿ã³ãã«æ¢åã®ããŒã«ãå¥ã®åäœã«çœ®ãæããããäžæžããããããããæç€ºããå¯èœæ§ããããŸãã
- ããŒã«éã®æ å ±æµåºãã£ã«ã¿ãŒïŒãã®ãµãŒããŒã«å±ããªãå€éšããŒã«ã®åŒã³åºããæç€ºããå 容ããªãããå¿çãšããŒã«ã®èª¬æãã¹ãã£ã³ããŸãã
- èªèšŒæ
å ±ïŒã·ãŒã¯ã¬ããã®ãã¹ãã³ã°åŠçïŒèªèããã圢åŒã®ããŒã¯ã³ããéä¿¡ã³ã³ãã³ãå
ã§èªåçã«
[REDACTED]ã«çœ®ãæããŸãã
ARC ã¯èŠå¡ã§ããMinibridge ã¯å®è¡ã§ãã äž¡è ã飿ºããMCP ãµãŒããŒãå®å šã«æ¥ç¶ããŠä¿è·ããŸãã
ðŠ ARC ãæäŸãããã®
- SBOM æ€èšŒïŒäŸµå®³ããããããã€ãé²ããããèªåçã«æ€èšŒããŸãã
- Rego ããªã·ãŒã®é©çšïŒOpen Policy Agent (OPA) ã«ãããã现ããªã¬ããã³ã¹ãå®çŸããŸãã
- ã·ã³ãã«ãªãªã¢ãŒãæ¥ç¶ïŒã«ã¹ã¿ã ãããã³ã«ã䜿ããã« MCP ãµãŒããŒãç°¡åã«ããªããžã§ããŸããMinibridge ã HTTP/SSEãWebSockets ãªã©ãåŠçããŸãã
- Kubernetes ãšã®çµ±åïŒHelm ãã£ãŒããšé©åãªããã©ã«ãèšå®ã䜿ããKubernetes ã«ãã°ãããããã€ã§ããŸãã
æ©èœã®æ¯èŒ
| ð æ©èœ | ð¹ MCP | ðž Minibridge | ðŠ ARCïŒAcuvity ContainersïŒ | ð ARC + Acuvity Platform |
|---|---|---|---|---|
| ð ãªã¢ãŒãã¢ã¯ã»ã¹ | â ïž HTTP/SSE ã®ã¿ | â ãã«ãã€ã³ | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð TLS ãµããŒã | â | â ãã«ãã€ã³ | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð ããŒã«ã®æŽåæ§ãã§ã㯠| â | â ãã«ãã€ã³ | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð å¯èŠåãšãã¬ãŒã¹ | â | â ãã«ãã€ã³ | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð¡ïž åé¢ | â | â ïž åºæ¬ | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð ã»ãã¥ãªãã£ããªã·ãŒç®¡ç | â | ð€ ã«ã¹ã¿ã å®è£ | â ïž åºæ¬ | â ãã«ãã€ã³ |
| ðµïž ã·ãŒã¯ã¬ããã®ãã¹ãã³ã° | â | ð€ ã«ã¹ã¿ã å®è£ | â ïž åºæ¬ | â ãã«ãã€ã³ |
| ð èªå¯å¶åŸ¡ | â | ð€ ã«ã¹ã¿ã å®è£ | ð€ ã«ã¹ã¿ã å®è£ | â ãã«ãã€ã³ |
| ð§âð» å人è奿 å ±ïŒPIIïŒã®æ€åºãšãã¹ãã³ã° | â | ð€ ã«ã¹ã¿ã å®è£ | ð€ ã«ã¹ã¿ã å®è£ | â ãã«ãã€ã³ |
| ð ããŒãžã§ã³ã®åºå® | â | â | â ãã«ãã€ã³ | â ãã«ãã€ã³ |
| ð é«åºŠãªãã«ãã¢ãŒãã«åæãšãã¹ãã³ã° | â | â | â | â ãã«ãã€ã³ |
â å«ãŸããŠããŸã | â ïž äžéšïŒåºæ¬çãªãµããŒã | ð€ ãŠãŒã¶ãŒã«ããã«ã¹ã¿ã å®è£ | â ãµããŒããããŠããŸãã
âš ARC ã« MCP ãµãŒããŒãæäŸããŸãããïŒ
ãµãŒããŒã ARC ã«è¿œå ããŠãå®å šãª MCP ãšã³ã·ã¹ãã ã«åå ããŸãããã
- GitHub Issue ãäœæããïŒã·ã³ãã«ãª Issue ãã³ãã¬ãŒãã䜿çšããŠãã ããã
- æ¬¡ã®æ
å ±ãæäŸããŠãã ããã
- ð ãœãŒã¹ãªã³ã¯ïŒã¢ããªã®å ŽæïŒGitHubãnpmãPyPI ãªã©ïŒ
- âïž ã©ã³ã¿ã€ã èšå®ïŒç°å¢å€æ°ãŸã㯠CLI åŒæ°
å®å šãªã³ã³ããåãMinibridge ãšã®çµ±åãSBOM ã®æ€èšŒããªã¢ãŒããµããŒããªã©ãããšã¯ãä»»ããã ããã
æäŸããçç±
- èªç¥åºŠã®åäžïŒå®å šãªãšã³ã¿ãŒãã©ã€ãºã°ã¬ãŒãã®ãããã€ç°å¢ã§ããã«å©çšã§ããŸãã
- ã»ãã¥ãªãã£æ©èœãå èµïŒARC ã®å ç¢ãªä¿è·æ©èœã掻çšã§ããŸãã
- ã³ãã¥ããã£ã®åŒ·åïŒå®å šã§ãã©ã°ã¢ã³ããã¬ã€å¯èœãª MCP ãšã³ã·ã¹ãã ãæ¡å€§ã§ããŸãã
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã