ð Slackã¹ã©ãã·ã¥ã³ãã³ãããMCPåŒã¹ãããã«ãããæªæ¥ã ã£ã
ãã®èšäºã§ã¯ãSlack ã®ã¹ã©ãã·ã¥ã³ãã³ããæŽ»çšããŠãããã³ããäžã€ã§è€æ°ã® MCP (Model Context Protocol) ãæã AI ãšãŒãžã§ã³ããåŒã³åºãæ¹æ³ãå ·äœçã«ã玹ä»ããŸãããŸãã§æªæ¥ã®ã¯ãŒã¯ãããŒãå åããããããªäœéšããã²äžç·ã«èŠãŠãããŸãããïŒâš
ð ãã®èšäºãèªããšäœãã§ããããã«ãªãïŒ
- â Slack ã®ã¹ã©ãã·ã¥ã³ãã³ããã MCP ãèªåšã«æäœã§ããããã«ãªããŸãã
- â è€æ°ã® MCP ãçµã¿åããã AI ãšãŒãžã§ã³ãã Slack ããåããæ¹æ³ãåãããŸãã
- â Express ã䜿ã£ãŠ Slack API ãšé£æºããããã¯ãšã³ãã®æ§ç¯æé ãç¿åŸã§ããŸãã
- â Ngrok ã䜿ã£ãŠããŒã«ã«ã® Express ã¢ããªãå€éšã«å ¬éããæé ãåŠã¹ãŸãã
ãã®èšäºã®å 容ãå®è£ ããã°ãSlack ã®ã¹ã©ãã·ã¥ã³ãã³ãããã以äžã®ãããªè€éãªæç€ºã AI ãšãŒãžã§ã³ãã«åºããããã«ãªããŸãã
/askai https://www.kinokuniya.co.jp/
ãã¯ã¬ãšã³ããã¡ãããã§æ€çŽ¢
ããŒãžã®æ¬ã®ã¿ã€ãã«ã 10 ã¿ã€ãã«ã»ã©æãåºã
Perplexity ã§è©³çްã調ã¹ãŠä»¥äžã®ãªã¹ãã§è¡šç€º
⢠ã¿ã€ãã«
⢠èè
⢠åºç瀟
⢠ãµããªãŒ (300 æåçšåºŠ)
â¢ äŸ¡æ Œ
ã§ãããªã¹ãã #askai_test ã«æçš¿ããŠãã ãã
ãã®ããã³ããã«å¯ŸããŠä»¥äžã®ãããªå 容㧠#askai_test ã«æçš¿ãããŸãã
ãã¯ã¬ãšã³ããã¡ãããã«é¢ããæžç±æ
å ±ã以äžã«ãŸãšããŸããã
1. **ã¯ã¬ãšã³ããã¡ããïŒã³ããã¯ã¹ïŒ**
- èè
ïŒèŒäºå人
- åºç瀟ïŒåè瀟
- ãµããªãŒïŒãã€ããŒã¹ãª5æ³ã®å¹Œçšåå
ã»éåããã®ããã䞻人å
¬ã«ã䞡芪ãã¯ããåšå²ã®å€§äººãã¡ãã䞻人å
¬ã®å·»ãèµ·ããéšåã«æ¯ãåãããæ¥åžžãæããã®ã£ã°æŒ«ç»äœåã§ãã1990幎ã«é£èŒãéå§ãããã³ããã¯ã¹ã¯å
š50å·»ã§æ§æãããŠããŸããåã©ããããç¡éªæ°ããšå€§äººé¡è² ãã®æ¯èã§åšå²ãç¿»åŒããããã®ããã®å§¿ãæãããŠããŸãã
- äŸ¡æ ŒïŒæ
å ±ãªã
2. **æ°ã¯ã¬ãšã³ããã¡ãã**
- èè
ïŒèŒäºå人ïŒåäœïŒ
- åºç瀟ïŒåè瀟
- ãµããªãŒïŒåäœè
ã»èŒäºå人æ°ã®éºå¿ãç¶ãã§å¶äœãããŠããç¶ç·šã·ãªãŒãºã§ãã2015幎12ææç¹ã§4å·»ãŸã§åè¡ãããåäœã®äžç芳ããã£ã©ã¯ã¿ãŒã®é
åãå¿ å®ã«åçŸããªãããæ°ããªãšããœãŒããå±éãããŠããŸãã
- äŸ¡æ ŒïŒæ
å ±ãªã
ð¯ ã©ããªãšã³ãžãã¢ã«ããããã®èšäºïŒ
- ð¡ Slack ã¢ããªããããéçºã«èå³ãããæ¹
- ð» JavaScript ãŸã㯠TypeScript ã®éçºçµéšããããªãã«ããæ¹
- ð€ MCP ã Mastra ãæŽ»çšããŠãæ¥ã ã®æ¥åãå¹çåããããšèããŠããæ¹
ð» ä»åæ±ã MCP
MCP (Model Context Protocol) ã¯ãWeb ã¢ããªã±ãŒã·ã§ã³ããæäœãã ChatGPT ãªã©ã® LLM ãçŽæ¥æ±ããªãå€éšãµãŒãã¹ããªãœãŒã¹ããå®å šãã€æè»ã«æäœã§ããä»çµã¿ã§ãã
ä»åã®å®è£ ã§ã¯ã以äžã® 3 çš®é¡ã® MCP ãçµã¿åãããŠäœ¿çšããŠããŸãã
ð Playwright MCP
Playwright MCP ã¯ããã©ãŠã¶èªåæäœããŒã« Playwright ã MCP åãããã®ã§ãæå®ããã Web ããŒãžãéããæ€çŽ¢ã»ã¯ãªãã¯ã»ã¹ã¯ã¬ã€ãã³ã°ãšãã£ããã©ãŠã¶äžã®ã¢ã¯ã·ã§ã³ãå®è¡å¯èœã«ããŸããæ§é åãããŠããªã Web æ å ±ã®åéãããŒãžé·ç§»ã®ãã¹ãã«ãé©ããŠããŸãã
ð Perplexity MCP
Perplexity MCP ã¯ãPerplexity.ai ã®ãããªå€éšæ€çŽ¢ãšã³ãžã³ã掻çšããŠãç¹å®ã®ããŒã¯ãŒãã«åºã¥ãã調æ»ãèŠçŽãèªåã§è¡ã MCP ã§ããChatGPT ã«äžè¶³ããã¡ãªãææ°æ å ±ãããä¿¡é Œæ§ã®ãããœãŒã¹ããã®æ å ±ååŸãã«åªããŠããŸãã
ð§© Slack MCP
Slack MCP ã¯ãSlack äžã®æäœïŒãã£ã³ãã«ãžã®æçš¿ãDM éä¿¡ãã¡ãã»ãŒãžã®ååŸã»è§£æãªã©ïŒã AI ãšãŒãžã§ã³ãããå¶åŸ¡ã§ãã MCP ã§ããããšãã°ãAI ã«èŠçŽãäœãããäžã§ãæå®ãã Slack ãã£ã³ãã«ã«æçš¿ããããšãã£ã飿ºãå¯èœã«ãªããŸãã
ð ïž Express ã§åãããã¯ãšã³ãã®è©³çް
ãŸãã¯ããã¯ãšã³ãã®æºåã§ãã以äžã®ãªããžããªã«å®éã«åäœããã³ãŒãããããŸãã®ã§ããæå ã« clone ããŠãããŠãã ããã
ð https://github.com/moksahero/mcp-demos/tree/main/slack
src/server.ts
ã®è©³çްãèŠãŠã¿ãã
ã©ã€ãã©ãªã«ã¯ãMCP ã®é£æºãå©ããŠããã Mastra ã䜿çšããŠããŸãã
const mcp = new MCPClient({
servers: {
slack: {
command: "npx",
args: ["-y", "@modelcontextprotocol/server-slack"],
env: {
SLACK_BOT_TOKEN: process.env.SLACK_BOT_TOKEN,
SLACK_TEAM_ID: process.env.SLACK_TEAM_ID,
},
},
"perplexity-ask": {
command: "npx",
args: ["-y", "server-perplexity-ask"],
env: {
PERPLEXITY_API_KEY: process.env.PERPLEXITY_API_KEY,
},
},
playwright: {
command: "npx",
args: ["@playwright/mcp"],
},
},
});
ããã§ã¯ãä»å䜿ãå
šãŠã® MCP ãå«ã MCPClient
ã®ã€ã³ã¹ã¿ã³ã¹ãäœæããŠããŸãã
ç¶ããŠããããã® MCP ãããŒã«ãšããŠå©çšãã Agent ãèšå®ããããã³ãããéä¿¡ããŸãã
const agent = new Agent({
name: "Slack Agent",
tools: wrappedTools,
instructions: `
Playwrightã䜿ã£ãŠæå®ã®URLãè§£æã§ããŸã
Perplexityã§èª¿ã¹ãã®ãã§ããŸã
Perplexityã«ãªã¯ãšã¹ããéããšãã¯ä»¥äžã®ãšã©ãŒãåºãªãããã«ã¡ãã»ãŒãžã®æ§é ããããã«ããŠãã ãã
'{"error":{"message":"Last message must have role \`user\`.","type":"invalid_message","code":400}}'
'{"error":{"message":"After the (optional) system message(s), user and assistant roles should be alternating.","type":"invalid_message","code":400}}'
Markdownãã©ãŒãããã¯äœ¿ãããSlackã®\`\`\`ã«ãããã«å
¥ããã©ããããã¹ãã§åºããŠãã ããã
æåŸã®åºåã¯ãã®ããã³ããã§äœãéã£ãã詳现ãéã£ãŠãã ãã
å
šé𿥿¬èªã§åºåããŠãã ãã
`,
model: openai("gpt-4o-mini"),
});
const response = await agent.generate(prompt);
Agent ã® instructions
ã§ã¯ãå©çšå¯èœãªããŒã«ïŒMCPïŒã®èª¬æã«å ããPerplexity MCP å©çšæã®ãšã©ãŒåé¿çããSlack ã§è¡šç€ºããããããã« Markdown ã䜿çšãããã©ããããã¹ãã§åºåããããã«ãé¡ãããŠããŸãã
Agent ããã®å¿çã¯æéããããå ŽåããããããSlack ãžã®å³æå¿çãšã㊠res.status(200).send()
ãå
ã«è¿ãã€ã€ãAgent ã®åŠçãå®äºãããæ¹ã㊠POST ãªã¯ãšã¹ãã§ã¡ãã»ãŒãžãéä¿¡ããŸãã
await fetch(response_url, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
response_type: "in_channel", // in_channelã§ãã£ã³ãã«å
šäœã«è¡šç€º
text: resultText,
}),
});
response_type: "ephemeral"
ã«ãããšèªåã ãã«ã¡ãã»ãŒãžãå±ããŸãããä»åã¯ãã£ã³ãã«ã«åå ããŠããå
šå¡ã«èŠãããã®ã§ response_type: "in_channel"
ãæå®ããŠããŸãã
âïž Express ã¢ããªã®ç°å¢èšå®
.env.example
ãã¡ã€ã«ãåèã«ãå¿
èŠãª API ããŒãªã©ã®ç°å¢å€æ°ã .env
ãã¡ã€ã«ã«èšå®ããŸãããã
ãŸãã¯æäœéã以äžã® 2 ã€ãèšå®ããŸãã
OPENAI_API_KEY=sk-
PERPLEXITY_API_KEY=pplx-
èšå®ãå®äºãããã以äžã®ã³ãã³ãã§ Express ã¢ããªãèµ·åããŸãã
$ npx tsx src/server.ts
â
Express API server is running on http://localhost:4000
ããã§ãããŒã«ã«ç°å¢ã§ããã¯ãšã³ããµãŒããŒãåãåºããŸããïŒ
ð Ngrok ã§ããŒã«ã«ãµãŒããŒãå ¬é
Slack ããããŒã«ã«ã§åããŠãã Express ãµãŒããŒã«ã¢ã¯ã»ã¹ã§ããããã«ãNgrok ã䜿ã£ãŠã€ã³ã¿ãŒãããã«å ¬éããŸãã
https://ngrok.com/ ã«ã¢ã¯ã»ã¹ããã¢ã«ãŠã³ããäœæããŠãã°ã€ã³åŸãauth token ãååŸããŠãã ããããããŠã以äžã®ã³ãã³ãã§èªèšŒãè¡ããŸãã
$ ngrok config add-authtoken 2x9iEvTLZytVS... # ååŸããããŒã¯ã³ã«çœ®ãæããŠãã ãã
èªèšŒåŸãNgrok ã䜿ããããã«ãªããŸãããã¡ã€ã³åãã«ã¹ã¿ã ãããå Žåã¯ãNgrok ã®ããã·ã¥ããŒããã " + New Domain " ãã¯ãªãã¯ããŠäœæããŠãããšäŸ¿å©ã§ãã
äœæãããã¡ã€ã³ããŸãã¯å²ãåœãŠããããã¡ã€ã³ã䜿ã£ãŠãport 4000 ã§èµ·åããŠãã Express ãµãŒããŒãå ¬éããŸãã
$ ngrok http --url=your-custom-domain.ngrok-free.app 4000 # your-custom-domain.ngrok-free.app ã¯å®éã®ãã¡ã€ã³ã«çœ®ãæããŠãã ãã
ã³ãã³ãå®è¡åŸã以äžã®ãããªç»é¢ã衚瀺ãããã°æåã§ãã
ð«¶ Using ngrok for OSS? Request a community license: https://ngrok.com/r/oss
Session Status online
Account someemail@gmail.com (Plan: Free)
Version 3.22.1
Region Japan (jp)
Web Interface http://127.0.0.1:4040
Forwarding https://repeatedly-amazing-cod.ngrok-free.app -> http://localhost:4000 # ãã®URLã䜿ããŸã
Connections ttl opn rt1 rt5 p50 p90
0 0 0.00 0.00 0.00 0.00
ããã§ãããŒã«ã«ã§åããŠãã Express ãµãŒããŒãã€ã³ã¿ãŒãããçµç±ã§ã¢ã¯ã»ã¹å¯èœã«ãªããŸãããæ¬æ Œéçšæã«ã¯ãåžžæçšŒåããŠãããµãŒããŒãžã®ãããã€ãæ€èšããŠãã ãããã
ð€ Slack ã¢ããªã±ãŒã·ã§ã³ã®èšå®
次㯠Slack åŽã®èšå®ã§ãã
Slack Slash Command ã¢ããªãäœæãã
https://api.slack.com/apps ã«ã¢ã¯ã»ã¹ãã"Create New App" ãã "From scratch" ãéžæããŠæ°ããã¢ããªãäœæããŸãã
ã¢ããªåãå ¥åãã飿ºãããã¯ãŒã¯ã¹ããŒã¹ãéžãã§ "Create App" ãã¯ãªãã¯ããŸãã
次ã«ãå¿ èŠãªæš©éãèšå®ããŸãããOAuth & Permissionsãã®ã¡ãã¥ãŒãããAdd an OAuth Scopeããã¯ãªãã¯ãããã®ç»é¢ã«ãããã㪠Scope ã远å ããŠãã ããã
èšå®åŸããInstall Appãã¡ãã¥ãŒãããInstall to (ããªãã®äŒç€Ÿå)ããã¯ãªãã¯ããŠã¢ããªãã¯ãŒã¯ã¹ããŒã¹ã«ã€ã³ã¹ããŒã«ããŸãã
ã€ã³ã¹ããŒã«ãå®äºãããšããBot User OAuth Tokenãã衚瀺ãããã®ã§ããããã¡ã¢ããŠãããŠãã ããã
æåŸã«ãã¹ã©ãã·ã¥ã³ãã³ããäœæããŸãããSlash Commandsãã¡ãã¥ãŒãããCreate New Commandããã¯ãªãã¯ãã以äžã®æ å ±ãèšå®ããŸãã
- Command:
/askai
ïŒã奜ããªã³ãã³ãåã«èšå®ããŠãã ããïŒ - Request URL: å
çš Ngrok ã§ååŸããå
¬é URL ã«
/api/ask
ãä»ãå ãããã® (äŸ:https://repeatedly-amazing-cod.ngrok-free.app/api/ask
) - Short Description: Ask Anything to AI ïŒã³ãã³ãã®èª¬æïŒ
ãSaveããã¯ãªãã¯ããã°ãSlack åŽã®èšå®ã¯å®äºã§ãïŒð
ð Slack 飿ºã®ããã®ç°å¢å€æ°ãèšå®
Express ã¢ããªã® .env
ãã¡ã€ã«ã«ãSlack 飿ºã«å¿
èŠãªç°å¢å€æ°ã远å ããŸãã
-
SLACK_BOT_TOKEN
: å çšååŸãã Bot User OAuth Token ãèšå®ããŸãã -
SLACK_TEAM_ID
: 飿ºãã Slack ã¯ãŒã¯ã¹ããŒã¹ã® Team ID ãèšå®ããŸããTeam ID 㯠Slack ã® URL (äŸ:https://app.slack.com/client/TXXXXXXXX/CXXXXXXXX
) ã«å«ãŸããT
ããå§ãŸãæååã§ãã
SLACK_BOT_TOKEN=xoxb-... # ååŸãã Bot User OAuth Token
SLACK_TEAM_ID=TXXXXXXXX # ã¯ãŒã¯ã¹ããŒã¹ã® Team ID
ãããã®ç°å¢å€æ°ã .env
ãã¡ã€ã«ã«è¿œå ããããããŒã«ã«ã§åããŠãã Express ãµãŒããŒãäžåºŠ Ctrl-C
ã§åæ¢ããå床以äžã®ã³ãã³ãã§èµ·åããŠãã ããã
$ npx tsx src/server.ts
â
Express API server is running on http://localhost:4000
ããã§ããã¹ãŠã®èšå®ãæŽããŸããïŒ
âš ãã£ãã Slack ããã³ãã³ãã詊ããŠã¿ããïŒ
ããã§ãSlack ãš Perplexity MCPãPlaywright MCP ã飿ºãã AI ãšãŒãžã§ã³ãã䜿ããããã«ãªããŸããïŒ/askai
ã³ãã³ãã䜿ã£ãŠãSlack ã®æäœã Perplexity ãæŽ»çšãããªãµãŒããªã©ã詊ããŠã¿ãŸãããã
ãŸãã¯ãä»ã®ã¡ã³ããŒã«åœ±é¿ãäžããªãããã«ãèªåå®ãŠã® DM ã§è©Šãã®ãããããã§ãããã¡ãããä»ã®ã¡ã³ããŒãšã® DM ããã£ã³ãã«ã§ãå©çšå¯èœã§ãã
äŸãã°ã以äžã®ãããªããã³ãããå ¥åããŠã¿ãŸãããã
/askai AIã«é¢é£ãã仿¥ã®ãã¥ãŒã¹ããªã¹ãã¢ããããŠãã ãããïŒïŒä»¶ã»ã©ãé¡ãããŸãã
ãªã¹ãã«ã¯ä»¥äžãå«ããŠãã ãã
⢠ã¿ã€ãã«
⢠æ¥ä»
⢠ãµããªãŒ
⢠å€éšãªã³ã¯
åºãŠãããªã¹ãã #news ã«æçš¿ããŠãã ããã
ã³ãã³ããå®è¡ãããšãæ°ååŸã«æå®ãã #news
ãã£ã³ãã«ã«ä»¥äžã®ãããªãã¥ãŒã¹ãªã¹ããæçš¿ãããã¯ãã§ãã
以äžã¯ãAIãMCPãåå°äœãããŒã¿ã»ã³ã¿ãŒã«é¢é£ãã仿¥ã®ãã¥ãŒã¹ãªã¹ãã§ãã
1. **AIåå°äœèŒžåºã«ç±³åœãèŠæ**
  - **æ¥ä»**: 2025幎5æ18æ¥
  - **ãµããªãŒ**: ç±³åœãäžæ±çµç±ã§ã®äžåœãžã®AIåå°äœç§»è»¢ã«æžå¿µã瀺ããŠããŸããç±³äžéã®æè¡èŠæš©ç«¶äºãæ¿åããæ§å³ãæµ®ã圫ãã«ãªã£ãŠããŸãã
  - **å€éšãªã³ã¯**: [ãªã³ã¯](https://www.youtube.com/watch?v=Qf2K67h2OiA)
2. **ãœãããã³ã¯ãAIããŒã¿ã»ã³ã¿ãŒåãæ¬¡äžä»£ã¡ã¢ãªãŒéçºã«çæ**
  - **æ¥ä»**: 2025幎5æ11æ¥
  - **ãµããªãŒ**: ãœãããã³ã¯ãæ¥æ¬åœå
ã§AIããŒã¿ã»ã³ã¿ãŒåãã®ã次äžä»£ã¡ã¢ãªãŒãéçºãçºè¡šããŸããã2幎éã§çŽ30ååãæè³ããç¥ç財ç£åŒ·åãç®æããŸãããã®é«éã»çé»åã¡ã¢ãªãŒæè¡ã¯ãããŒã¿ã»ã³ã¿ãŒã®ãšãã«ã®ãŒå¹çãšåŠçé床åäžã«è²¢ç®ããå¯èœæ§ããããŸãã
  - **å€éšãªã³ã¯**: [ãªã³ã¯](https://plus-web3.com/media/softbankaidatecenterzisedaimemory202250509/)
...ïŒåŸç¶ã®ãã¥ãŒã¹èšäºïŒ
ç¹å®ã®ãã£ã³ãã«å
ã§ AI ãšãŒãžã§ã³ãã«æ
å ±ã調ã¹ããããããã£ã³ãã«ã«æçš¿ããããããå Žåã¯ãäºåã«ãã®ãã£ã³ãã«å
ã§ /invite @askai
ã³ãã³ããå®è¡ããBOT ãã¡ã³ããŒã«è¿œå ããŠããå¿
èŠããããŸãã
BOT ããã£ã³ãã«ã«è¿œå ããã°ããããªããã³ãããå¯èœã§ãïŒ
/askai #general ã§æè¿è©±é¡ã«ãªã£ãŠããããšã®ãµããªãŒãéã£ãŠãã ãã
ãããšãAgent ã #general
ãã£ã³ãã«ã®äŒè©±å
容ãè§£æãããµããªãŒãäœæããŠãããŸãã
æè¿ã® #general ãã£ã³ãã«ã§ã®è©±é¡ããŸãšããŸããã
1. **ã©ã³ãã¹ãããã®ç޹ä»**:
  - ç¯å°ã®è¿ãã§çŸå³ããã©ã³ãã¹ãããã玹ä»ãããŸããã
   - 寿åžå€§: æ°é®®ãªå¯¿åžã楜ããã人æ°åºã
   - ç¯å°ç寿åž: äŒçµ±çãªæ±æžå寿åžãå³ãããã
   - 海鮮䞌å±: æ°é®®ãªæµ·ã®å¹žã䜿ã£ã海鮮䞌ãçµ¶åã
   - ç¯å°åžå Žé£å : æ§ã
ãªæµ·é®®æçãæ¥œãããé£å ã
2. **QA å¶æ¥ã«é¢ããæ
å ±**:
  - æ±äº¬ã§ QA ã®å¶æ¥ãããããã®äŒç€Ÿãæ¥çã«ã€ããŠã®æ
å ±ãå
±æãããŸããã
   - IT äŒæ¥ãã¹ã¿ãŒãã¢ãããè£œé æ¥ãã³ã³ãµã«ãã£ã³ã°äŒç€Ÿãåè£ãšããŠæããããŸããã
   - æ±äººæ
å ±ãæ¥åå
容ã«ã€ããŠã詳ãã説æãããŸããã
ãããŸã§ ChatGPT ãªã©ãã§ããªãã£ãããã£ã³ãã«å ã®æ å ±åéãèŠçŽãŸã§ AI ã«ãé¡ãã§ããããã«ãªããŸããã
ð ä»åŸã®å¯èœæ§ã¯ç¡é倧ïŒ
ð¬ ãã£ãã«å ã DM å ãã AI ãçŽæ¥åŒã¹ãããã«ãªã£ã
ãä»é±ã®å£²äžããŒã¿èŠãããã ãã©ãAI ã«èããŠã¿ãããïŒããšããããã®ã³ãŒãã¬ãã¥ãŒãé¡ããAI ã«ãèŠãŠããããïŒããšãã£ãäŒè©±ã®æµãã§ãSlack ããã·ãŒã ã¬ã¹ã« AI ãæŽ»çšã§ããããã«ãªããŸãããChatGPT ã®ç»é¢ãéããŠã³ããããå¿ èŠã¯ãããããŸããã
ð§© ãã£ãšè²ã 㪠MCP ã远å ã§ãã
ä»åã® Express ã¢ããªã«ããã«ä»ã®çš®é¡ã® MCP ã远å ããã°ãAI ãšãŒãžã§ã³ãã®èœåãããã«æ¡åŒµã§ããŸãã
- Google ã«ã¬ã³ã㌠MCP: ããã® MTG ã®äºå®ã
xxxyyy@gmail.com
ããã®ã«ã¬ã³ããŒã«è¿œå ããŠãããŠã - ããŒã¿å¯èŠå MCP: ããã®ããŒã¿ãã°ã©ãåããŠè¡šç€ºããŠã
ãªã©ãæ§ã ãªã¿ã¹ã¯ã Slack ã³ãã³ãããå®è¡ã§ããããã«ãªããŸãã
ð ãã©ã€ããŒããªããŒã¿ãå®å šã«æ±ããããã«ãªã
ããã MCP ã®ç¹ã«åŒ·åãªç¹ã§ããäŸãã° Postgres MCP ãå©çšããã°ãå€éšã«å ¬éãããŠããªã瀟å ããŒã¿ããŒã¹ã«å®å šã«æ¥ç¶ã§ããŸãã
/askaiãéå»ïŒå¹Žéã®äžçªå£²äžã®è¯ãã£ã顧客ã®ãããïŒïŒã売äžé¡ãšåãããŠãªã¹ãã¢ããããŠãã°ã©ãã§åºããŠã
ãã®ãããªããã³ãããå¶æ¥ããŒã ã®ãã£ã³ãã«ã§å®è¡ããã°ããªã¢ã«ã¿ã€ã ã§å¿ èŠãªããŒã¿ãååŸããã°ã©ãã§å¯èŠåããŠè¡šç€ºã§ããŸãããã¯ããããŒã¿ãå ±æããããã ãã«ããã·ã¥ããŒããéçºããå¿ èŠã¯ãªããªããããããŸããã
ð ãŸãšã
Slack ã®ã¹ã©ãã·ã¥ã³ãã³ããš MCP ãçµã¿åãããããšã§ããã£ããã¯ãŒã¯ãããŒã®äžã§èªç¶ã« AI ãžæç€ºãåºããããæ§ã ãªå€éšãµãŒãã¹ãšé£æºãããããæªæ¥ã®ãããªäœéšãå®çŸã§ããŸããã
MCP ã远å ããã°ããã»ã©ãAI ãšãŒãžã§ã³ããã§ããããšã®å¹ ãåºããã瀟å ããŒã¿ãžã®ã¢ã¯ã»ã¹ãåçš®ããŒã«é£æºãã·ãŒã ã¬ã¹ã«è¡ããããã«ãªããŸãã
ChatGPT ãç¹å®ã®ããŒã«ã«éãããæ®æ®µå©çšããŠããã³ãã¥ãã±ãŒã·ã§ã³ããŒã«ã§ãã Slack ãããèªç¶èšèªã§æ¥åã«å¿ èŠãªããããæäœãã§ããæªæ¥ã¯ããããããããŸã§æ¥ãŠããŸãã
ð é¢é£ãªã³ã¯é
- Slack API â Slash Commands
- Render â Node App Deploy Guide
- Slack message visibility (response_type)
- Model Context Protocol (MCP)
ðšâð» èè ã«ã€ããŠ
æ±äº¬ãšãã«ãªã³ãæ ç¹ã«æŽ»åããŠããŸãã
æ±æ¬§ã»ããã¹ã¿ã³ã»ãã£ãªãã³ã®åªç§ãªãšã³ãžãã¢ããŒã ãšé£æºããAI é¢é£éçºãQA ã³ã³ãµã«ãã£ã³ã°ããã¹ãèªååããã«ã¹ã¿ãã¯éçºããããã¯ããããžã¡ã³ããªã©ãå¹
åºãåéãæãããŠããŸãã
ç¹ã« CucumberãPlaywrightãLLMãMCP ãæŽ»çšããéçºã»ãã¹ãããã»ã¹ã®å¹çåã«ãé¢å¿ãããã°ããã²ãæ°è»œã«ãçžè«ãã ããããé£çµ¡ãåŸ ã¡ããŠãããŸãã
Discussion