MCPAgentAI ð
ããŒã«ã«MCPAgentAI ð ã«ã€ããŠ
MCPAgentAIã¯ãããŒã«ããŒã¹ã®ãšãŒãžã§ã³ããæ§ç¯ããéçºè åãã®Python SDKã§ããMCPã«ããå ±éã®ã©ãããŒãšãTwitterã倩æ°ãªã©ã®ããŒã«ãåããElizaOSã«ã察å¿ããŸãã
äž»ãªæ©èœ
- 01MCPã«ããããŒã«ã®ã©ãã
- 02å¿ èŠã«å¿ããããŒã«ã®è¿œå ã»åé€
- 03åçš®ãŠãŒãã£ãªãã£ããŒã«
- 04ElizaOSãšã®é£æº
掻çšã·ãŒã³
- 01è€æ°ã®ããŒã«ãçµã¿åããããšãŒãžã§ã³ãæ§ç¯
- 02Twitterã®ããåãã®èªåå
- 03倩æ°ã»æå»ã»çºæ¿ã®æ€çŽ¢
- 04ElizaOSãšãŒãžã§ã³ããšã®æ¥ç¶
MCP 察å¿
MCPã䜿ã£ãŠããŒã«ãã©ããã管çããŸããMCPãµãŒããŒãšããŠå®è¡ã§ããClaude Desktopãªã©ã®ã¯ã©ã€ã¢ã³ããšæ¥ç¶ã§ããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
MCPAgentAI ð
MCPAgentAI ã¯ãããŸããŸãªããŒã«ãçµ±äžçãªæ¹æ³ã§å®è£ ããã³ç®¡çããããã®ãæšæºåãããããŒã«ã©ããã³ã°ãã¬ãŒã ã¯ãŒã¯ã§ããéçºè ãããŒã«ããŒã¹ã®ãŠãŒã¹ã±ãŒã¹ããã°ããçµ±åããèµ·åã§ããããæ¯æŽããããšãç®çãšããŠããŸãã
äž»ãªæ©èœ
- ð§ æšæºåãããã©ããã³ã°ïŒMCP ãããã³ã«ã䜿çšããŠããŒã«ãæ§ç¯ããããã®æœè±¡åã¬ã€ã€ãŒãæäŸããŸãã
- ð æè»ãªãŠãŒã¹ã±ãŒã¹ïŒç¹å®ã®èŠä»¶ã«åãããŠãããŒã«ãç°¡åã«è¿œå ãŸãã¯åé€ã§ããŸãã
- âš ããã«äœ¿ããããŒã«ïŒäžè¬çãªã·ããªãªåãã«ãäºåæ§ç¯æžã¿ã®ããŒã«ãå«ãŸããŠããŸãã
- ðŠ Twitter 管çïŒãã€ãŒããè¿ä¿¡ãTwitter ã§ã®ããåãã®ç®¡çãèªååããŸãã
- ðž æå·è³ç£ïŒææ°ã®æå·è³ç£äŸ¡æ ŒãååŸããŸãã
- ð€ ElizaOS 飿ºïŒElizaOS ã«ã·ãŒã ã¬ã¹ã«æ¥ç¶ããŠæäœããèªååã匷åããŸãã
- ð æå»ãŠãŒãã£ãªãã£
- âïž å€©æ°æ å ±ïŒAPIïŒ
- ð èŸæžæ€çŽ¢
- ð§® æ°åŒèšç®ããŒã«
- ðµ çºæ¿ïŒAPIïŒ
- ð æ ªåŒããŒã¿ïŒãªã¢ã«ã¿ã€ã ããã³éå»ã®æ ªåŒåžå Žæ å ±ã«ã¢ã¯ã»ã¹ã§ããŸãã
- [WIP] ð° ãã¥ãŒã¹ïŒææ°ã®ãã¥ãŒã¹èŠåºããååŸããŸãã
æè¡ã¹ã¿ã㯠ð ïž
- PythonïŒã³ã¢ããã°ã©ãã³ã°èšèª
- MCP ãã¬ãŒã ã¯ãŒã¯ïŒéä¿¡ãããã³ã«
- DockerïŒã³ã³ããå
ð€ MCP ãšã¯ïŒ
Model Context ProtocolïŒMCPïŒã¯ãAI ã¢ãã«ãã·ã¹ãã éã§ã³ã³ããã¹ããå ±æã»ç®¡çããããã®æå ç«¯ã®æšæºã§ããAI ãšãŒãžã§ã³ããã·ãŒã ã¬ã¹ã«ããåãããããã«äœ¿ãèšèªãšèããŠãã ãããð§ âš
MCP ãéèŠãªçç±ã¯æ¬¡ã®ãšããã§ãã
- ð§© æšæºåïŒMCP ã¯ã¢ãã«éã§ã³ã³ããã¹ããå ±æããæ¹æ³ãå®ããçžäºéçšæ§ãå®çŸããŸãã
- â¡ ã¹ã±ãŒã©ããªãã£ïŒé«ãã¹ã«ãŒããããæ±ããããå€§èŠæš¡ãª AI ã·ã¹ãã ã«å¯Ÿå¿ã§ããããèšèšãããŠããŸãã
- ð ã»ãã¥ãªãã£ïŒå ç¢ãªèªèšŒãšãã现ããªã¢ã¯ã»ã¹å¶åŸ¡ãæäŸããŸãã
- ð æè»æ§ïŒããŸããŸãªã·ã¹ãã ã AI ã¢ãŒããã¯ãã£ã§åäœããŸãã
åºå
ž
ã€ã³ã¹ããŒã« ðŠ
PyPI çµç±ã§ã€ã³ã¹ããŒã«
pip install mcpagentai
äœ¿ãæ¹ ð»
ããŒã«ã«ã§å®è¡
mcpagentai --local-timezone "America/New_York"
Docker ã§å®è¡
-
Docker ã€ã¡ãŒãžããã«ãããŸãïŒ
docker build -t mcpagentai . -
ã³ã³ãããå®è¡ããŸãïŒ
docker run -i --rm mcpagentai
Twitter 飿º ðŠ
MCPAgentAI ã¯åŒ·å㪠Twitter 飿ºæ©èœãæäŸãããã€ãŒããè¿ä¿¡ãTwitter ã§ã®ããåãã®ç®¡çãèªååã§ããŸãããã®ã»ã¯ã·ã§ã³ã§ã¯ãDocker ãš .env + scripts/run_agent.sh ã®äž¡æ¹ã䜿ã£ã Twitter 飿ºã®èšå®æ¹æ³ãšäœ¿ç𿹿³ã詳ãã説æããŸãã
Twitter 飿ºçš Docker ç°å¢å€æ°
MCPAgentAI ã Docker å ã§å®è¡ããå Žåã¯ãTwitter 飿ºçšã®ç°å¢å€æ°ãèšå®ããããšãéèŠã§ãããããã®å€æ°ã¯ã次㮠2 ã€ã®ã«ããŽãªã«åãããŠããŸãã
1. ãšãŒãžã§ã³ãããŒãã¯ã©ã€ã¢ã³ãã®èªèšŒæ å ±
ãããã®èªèšŒæ å ±ã¯ããšãŒãžã§ã³ãå ã® Node.js ã¯ã©ã€ã¢ã³ãã Twitter ã§ã®ããåãã管çããããã«äœ¿çšããŸãã
ENV TWITTER_USERNAME=
ENV TWITTER_PASSWORD=
ENV TWITTER_EMAIL=
2. TweepyïŒTwitter API v2ïŒã®èªèšŒæ å ±
ãããã®èªèšŒæ å ±ã¯ãTweepy ã Twitter API v2 ãšé£æºããããã«äœ¿çšããŸãã
ENV TWITTER_API_KEY=
ENV TWITTER_API_SECRET=
ENV TWITTER_ACCESS_TOKEN=
ENV TWITTER_ACCESS_SECRET=
ENV TWITTER_CLIENT_ID=
ENV TWITTER_CLIENT_SECRET=
ENV TWITTER_BEARER_TOKEN=
Docker ã§ MCPAgentAI ãå®è¡ãã
-
Docker ã€ã¡ãŒãžããã«ãããŸãïŒ
docker build -t mcpagentai . -
ã³ã³ãããå®è¡ããŸãïŒ
docker run -i --rm mcpagentai
.env + scripts/run_agent.sh ã§ MCPAgentAI ãå®è¡ãã
ç°å¢å€æ°ã®èšå®
ãããžã§ã¯ãã®ã«ãŒããã£ã¬ã¯ããªã« .env ãã¡ã€ã«ãäœæããæ¬¡ã®ç°å¢å€æ°ã远å ããŸãã
ANTHROPIC_API_KEY=your_anthropic_api_key
ELIZA_PATH=/path/to/eliza
TWITTER_USERNAME=your_twitter_username
TWITTER_EMAIL=your_twitter_email
TWITTER_PASSWORD=your_twitter_password
PERSONALITY_CONFIG=/path/to/personality_config.json
RUN_AGENT=True
# Tweepy (Twitter API v2) Credentials
TWITTER_API_KEY=your_twitter_api_key
TWITTER_API_SECRET=your_twitter_api_secret
TWITTER_ACCESS_TOKEN=your_twitter_access_token
TWITTER_ACCESS_SECRET=your_twitter_access_secret
TWITTER_CLIENT_ID=your_twitter_client_id
TWITTER_CLIENT_SECRET=your_twitter_client_secret
TWITTER_BEARER_TOKEN=your_twitter_bearer_token
ãšãŒãžã§ã³ãã®å®è¡
-
ã¹ã¯ãªãããå®è¡å¯èœã«ããŸãïŒ
chmod +x scripts/run_agent.sh -
ãšãŒãžã§ã³ããå®è¡ããŸãïŒ
bash scripts/run_agent.sh
ãŸãšã
Docker ã䜿çšãããã.env ãã¡ã€ã«ã«ç°å¢å€æ°ãèšå®ã㊠scripts/run_agent.sh ã¹ã¯ãªãããå®è¡ããããšã§ãMCPAgentAI ã Twitter ãšé£æºããŠå®è¡ã§ããŸãã
ãã®æè»æ§ã«ããããããã€ç°å¢ã«æé©ãªæ¹æ³ãéžæã§ããŸãã
ElizaOS ãšã®é£æº ð€
MCPAgentAI 㯠ElizaOS ãšã·ãŒã ã¬ã¹ã«é£æºããEliza ãšãŒãžã§ã³ããéããŠèªååæ©èœã匷åããŸããEliza ãšãŒãžã§ã³ãã飿ºããæ¹æ³ã¯äž»ã« 2 ã€ãããŸãã
1. mcpagentai ãã Eliza ãšãŒãžã§ã³ããçŽæ¥äœ¿çšãã
ãã®æ¹æ³ã§ã¯ãEliza ãã¬ãŒã ã¯ãŒã¯ãããã¯ã°ã©ãŠã³ãã§å®è¡ããã« Eliza ãšãŒãžã§ã³ãã䜿çšã§ããŸããEliza ã®æ©èœã MCPAgentAI ã«çŽæ¥çµã¿èŸŒãããšã§ãã»ããã¢ãããç°¡çŽ åããŸãã
æé ïŒ
- Eliza MCP ãšãŒãžã§ã³ãã䜿çšããããã« MCPAgentAI ãèšå®ããŸãïŒ
Python ã³ãŒãã§ãEliza MCP ãšãŒãžã§ã³ãã
MultiToolAgentã«è¿œå ããŸããfrom mcpagentai.core.multi_tool_agent import MultiToolAgent from mcpagentai.tools.eliza_mcp_agent import eliza_mcp_agent multi_tool_agent = MultiToolAgent([ # ... other agents eliza_mcp_agent ])
Advantages:
- Simplified Setup: No need to manage separate background processes.
- Easier Monitoring: All functionalities are encapsulated within MCPAgentAI.
- Highlight Feature: Emphasizes the flexibility of MCPAgentAI in integrating various tools seamlessly.
2. Run Eliza Framework from mcpagentai
This method involves running the Eliza Framework as a separate background process alongside MCPAgentAI.
Steps:
-
Start Eliza Framework:
bash src/mcpagentai/tools/eliza/scripts/run.sh -
Monitor Eliza Processes:
bash src/mcpagentai/tools/eliza/scripts/monitor.sh -
Configure MCPAgentAI to Use Eliza Agent: In your Python code, add Eliza Agent to the
MultiToolAgent:from mcpagentai.core.multi_tool_agent import MultiToolAgent from mcpagentai.tools.eliza_agent import eliza_agent multi_tool_agent = MultiToolAgent([ # ... other agents eliza_agent ])
ãã¥ãŒããªã¢ã«ïŒç¹å®ã®ããŒã«ãéžæãã
ãµãŒããŒã®ãšãŒãžã§ã³ãèšå®ã倿Žããããserver.py ãã¡ã€ã«ãæŽæ°ããŠå¿
èŠãªãšãŒãžã§ã³ãã ããèªã¿èŸŒãããšã§ãç¹å®ã®ããŒã«ã®ã¿ãå®è¡ãããã MCPAgentAI ãèšå®ã§ããŸããäŸïŒ
from mcpagentai.tools.time_agent import TimeAgent
from mcpagentai.tools.weather_agent import WeatherAgent
from mcpagentai.core.multi_tool_agent import MultiToolAgent
multi_tool_agent = MultiToolAgent([
TimeAgent(),
WeatherAgent()
])
This setup will only enable **Time** and **Weather** tools.
飿ºäŸïŒClaude Desktop ã®èšå®
以äžã®èšå®ïŒclaude_desktop_config.jsonïŒã䜿çšã㊠MCPAgentAI ã Claude Desktop ãšé£æºã§ããŸãããªããããŒã«ã«ã® ElizaOS ãªããžããªåŒæ°ã¯ä»»æã§ãïŒ
{
"mcpServers": {
"mcpagentai": {
"command": "docker",
"args": ["run", "-i", "-v", "/path/to/local/eliza:/app/eliza", "--rm", "mcpagentai"]
}
}
}
éçº ð ïž
-
ãã®ãªããžããªãã¯ããŒã³ããŸãïŒ
git clone https://github.com/mcpagents-ai/mcpagentai.git cd mcpagentai -
ïŒä»»æïŒä»®æ³ç°å¢ãäœæããŸãïŒ
python3 -m venv .venv source .venv/bin/activate -
äŸåé¢ä¿ãã€ã³ã¹ããŒã«ããŸãïŒ
pip install -e . -
ããã±ãŒãžããã«ãããŸãïŒ
python -m build
ã³ã³ããªãã¥ãŒã·ã§ã³ ð€
ã³ã³ããªãã¥ãŒã·ã§ã³ãæè¿ããŸãïŒissue ãŸã㯠ãã«ãªã¯ãšã¹ã ãäœæããŠãã ããã
ã©ã€ã»ã³ã¹ïŒMIT
ãæ¥œãã¿ãã ããïŒ ð
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã