DeepAgents × MCP で技術トレンドを”勝手に”調査してSlackに流すエージェントを作りました

PSSLの佐々木です

今回は DeepAgentsMCP(Model Context Protocol) を組み合わせて、この作業を全自動化するエージェントを作ってみました。Web検索、GitHub Trending、Zenn RSS、Hacker News RSS を巡回し、レポートを生成して自動投稿するところまで、すべてエージェントが自律的にやってくれます。

なお、この記事では通知先として Slack を例に解説していますが、今回の実装では実際には Notion に投稿する形で構築しました。Slack の場合は Bot Token の発行にワークスペース管理者の承認が必要になることがあるため、個人で試すなら Notion の方が手軽です。通知先は MCP サーバーや Webhook を差し替えるだけで簡単に変更できるので、お好みの方法を選んでください。

完成するとこうなります:

📊 週次 AI エージェント技術トレンド — 2026年3月第2週

■ サマリー DeepAgents の登場で LangGraph ベースのエージェント開発が大幅に簡素化。 MCP エコシステムも急拡大中…

■ 今週のトレンド Top 5

  1. DeepAgents v0.2 リリース
  2. GitHub Agentic Workflows GA
  3. Figma MCP Server 公開
  4. OpenTelemetry GenAI Conventions
  5. Google Antigravity アップデート

💬 詳細はスレッドをご覧ください

この記事を読めば、同じ仕組みを30分で構築できます。コードは GitHub で公開しているので、ぜひ clone して試してみてください。

https://github.com/atomic-kanta-sasaki/deepagents-trend-slack


🏗️ この記事で作るもの — 全体アーキテクチャ

まずは完成形の全体像を把握しましょう。以下の図が今回構築するシステムのアーキテクチャです。

 

テキストで説明すると、以下の流れになります:

  1. cron(GitHub Actions)で毎朝起動 — 平日の朝8時に自動実行
  2. DeepAgent が調査計画を立てるwrite_todos で「何を調べるか」をリストアップ
  3. 4つの情報源から収集 — Web検索(Tavily)、GitHub Trending、Zenn RSS、Hacker News RSS
  4. 仮想ファイルに中間保存write_file で調査結果を一時保存
  5. サブエージェントがレポート執筆 — 専門のライターエージェントに委託
  6. Slack に投稿 — 完成したレポートをチャンネルに自動投稿

ここで注目すべきは、情報収集も通知も MCP で統一している 点です。MCP サーバーを追加・差し替えするだけでエージェントの能力を拡張できるため、後から「Notion にも投稿したい」「Discord にも流したい」となっても、コード本体を変更する必要がありません。


🧠 DeepAgents とは?— 素の LangGraph との違い

DeepAgents は、LangChain チームが公開した LangGraph 上のエージェントハーネス です。Claude Code や Deep Research で使われているアーキテクチャを OSS 化したもので、create_deep_agent() を呼ぶだけで、エージェント開発に必要な機能が一式揃います。

具体的に何が付いてくるのか、表で整理してみました。

Middleware役割今回の用途
TodoListMiddleware計画の自動管理調査ステップの分解と進捗管理
FilesystemMiddleware仮想ファイル R/W中間調査結果の保存
SubAgentMiddlewareサブエージェント生成レポート執筆を専門家に委託
SummarizationMiddlewareコンテキスト自動圧縮大量検索結果でのトークン溢れ防止

素の LangGraph でこれらを全部実装しようとすると、概算で 200行以上 のコードが必要になります。一方、DeepAgents なら 50行程度 で同等の機能が手に入ります。

とはいえ、DeepAgents は「全部入り」なので細かい制御がしづらい面もあります。使い分けとしては、プロトタイプは DeepAgents でサクッと作り、細かい制御が必要になったら素の LangGraph に降りる というアプローチがおすすめです。


🔌 MCP(Model Context Protocol)のおさらい

MCP(Model Context Protocol) は、AI エージェントが外部ツールやデータソースにアクセスするための 共通プロトコル です。Anthropic が提唱し、現在は多くの企業・コミュニティがサーバーを公開しています。

LangChain エコシステムでは、langchain-mcp-adapters を使うことで MCP ツールを LangChain ツールに変換できます。これにより、MCP サーバーを DeepAgents や LangGraph のエージェントからシームレスに呼び出せます。

今回接続する MCP サーバーは以下の3つです:

  • GitHub MCP Server@modelcontextprotocol/server-github)— リポジトリ検索、Trending 取得
  • 自作 RSS MCP Server — Zenn と Hacker News のフィード取得
  • Slack Notify MCP Server@mkusaka/mcp-server-slack-notify)— Slack への通知

MCP サーバーは USB のようなもの と考えるとわかりやすいです。挿すだけでエージェントの能力が拡張され、抜けば元に戻る。この疎結合さが MCP の魅力です。


🛠️ 実装 — 環境構築から Slack 通知まで

ここからは実際のコードを見ながら、実装を進めていきます。

4-1. セットアップ

まずは必要なパッケージをインストールします。

# リポジトリをクローン
git clone <https://github.com/atomic-kanta-sasaki/deepagents-trend-slack.git>
cd deepagents-trend-slack

# 仮想環境を作成
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\\\\Scripts\\\\activate

# 依存関係をインストール
pip install -e .

次に、環境変数を設定します。.env.example をコピーして .env を作成し、各種 API キーを設定してください。

# .env.example の内容
ANTHROPIC_API_KEY=sk-ant-...      # または Azure OpenAI の設定
TAVILY_API_KEY=tvly-...           # Web検索用
GITHUB_TOKEN=ghp_...              # GitHub API用
SLACK_BOT_TOKEN=xoxb-...          # Slack投稿用
SLACK_DEFAULT_CHANNEL=#tech-trends

Slack Bot Token の取得は以下の手順です:

  1. api.slack.com/apps にアクセス
  2. 「Create New App」→「From scratch」
  3. 「OAuth & Permissions」→ Bot Token Scopes に chat:writechat:write.public を追加
  4. 「Install to Workspace」でインストール
  5. 表示される Bot User OAuth Token(xoxb-...)をコピー

4-2. 自作 RSS MCP サーバー — 20行で外部データソースを追加

エージェントに Zenn と Hacker News の情報を供給する MCP サーバーを作ります。驚くべきことに、たった20行程度で MCP サーバーが自作できます。これがこの記事の隠れた見どころです。

# src/rss_server.py
import json
import feedparser
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("TechRSS")

@mcp.tool()
def fetch_zenn_trending(topic: str = "ai") -> str:
    """Zenn の指定トピックの Trending 記事を取得"""
    feed = feedparser.parse(f"<https://zenn.dev/topics/{topic}/feed>")
    return json.dumps(
        [{"title": e.title, "url": e.link, "published": e.get("published", "")}
         for e in feed.entries[:10]],
        ensure_ascii=False,
    )

@mcp.tool()
def fetch_hackernews_best() -> str:
    """Hacker News の Best Stories を取得"""
    feed = feedparser.parse("<https://hnrss.org/best?count=10>")
    return json.dumps(
        [{"title": e.title, "url": e.link} for e in feed.entries],
        ensure_ascii=False,
    )

if __name__ == "__main__":
    mcp.run(transport="stdio")

コードの解説をしておきます:

  • FastMCP("TechRSS") で MCP サーバーのインスタンスを作成
  • @mcp.tool() デコレータで関数をツールとして公開
  • fetch_zenn_trending は Zenn の RSS フィードをパースして上位10件を JSON で返す
  • fetch_hackernews_best は Hacker News の Best Stories を同様に取得
  • ensure_ascii=False は日本語の文字化け防止に必須
  • mcp.run(transport="stdio") で標準入出力ベースの MCP サーバーとして起動

4-3. メインエージェントの構築 — DeepAgents × MCP の接続

次に、DeepAgents と MCP を接続するメインロジックを実装します。

# src/agent.py
import os
import sys
from pathlib import Path

from deepagents import create_deep_agent
from langchain_mcp_adapters.client import MultiServerMCPClient

from .prompts import SYSTEM_PROMPT
from .tools import internet_search

def get_mcp_server_config() -> dict:
    """MCP サーバー設定を取得"""
    project_root = Path(__file__).parent.parent
    rss_server_path = project_root / "src" / "rss_server.py"

    config = {
        "github": {
            "command": "npx",
            "args": ["-y", "@modelcontextprotocol/server-github"],
            "transport": "stdio",
            "env": {"GITHUB_TOKEN": os.environ.get("GITHUB_TOKEN", "")},
        },
        "rss": {
            "command": sys.executable,
            "args": [str(rss_server_path)],
            "transport": "stdio",
        },
        "slack": {
            "command": "npx",
            "args": ["-y", "@mkusaka/mcp-server-slack-notify@latest"],
            "transport": "stdio",
            "env": {
                "SLACK_BOT_TOKEN": os.environ.get("SLACK_BOT_TOKEN", ""),
                "SLACK_DEFAULT_CHANNEL": os.environ.get("SLACK_DEFAULT_CHANNEL", "#tech-trends"),
            },
        },
    }
    return config

async def create_research_agent() -> tuple:
    """リサーチエージェントを作成"""
    mcp_config = get_mcp_server_config()
    mcp_client = MultiServerMCPClient(mcp_config)

    # MCP ツールを取得
    mcp_tools = await mcp_client.get_tools()
    print(f"MCP ツールを {len(mcp_tools)} 個取得しました")

    # 全ツールを結合
    all_tools = [internet_search, *mcp_tools]

    # DeepAgent を作成
    agent = create_deep_agent(
        tools=all_tools,
        system_prompt=SYSTEM_PROMPT,
    )

    return agent, mcp_client

ポイントを解説します:

  • MultiServerMCPClient で GitHub / RSS / Slack の3つの MCP サーバーに同時接続
  • create_deep_agent() にツールとシステムプロンプトを渡すだけでエージェントが完成
  • internet_search は Tavily API をラップした関数で、MCP ではなくネイティブツールとして実装

システムプロンプトでは、調査手順を明確に指示しています。「まず write_todos で計画を立て、次に各情報源から収集し、中間結果を保存してから、サブエージェントにレポート執筆を委託する」という流れをプロンプトで規定することで、エージェントの動きを安定させています。

エントリーポイントは以下のようになります:

# src/main.py
import asyncio
from .agent import create_research_agent

async def run_agent(query: str) -> str:
    agent, mcp_client = await create_research_agent()
    result = await agent.ainvoke({
        "messages": [{"role": "user", "content": query}]
    })
    return result["messages"][-1].content

if __name__ == "__main__":
    query = "今週のAIエージェント関連トレンドを調査してSlackに投稿して"
    result = asyncio.run(run_agent(query))
    print(result)

4-4. 実行してみる

準備ができたら、実際に動かしてみましょう。

python -m src.main "今週のAIエージェント関連トレンドを調査してSlackに投稿して"

エージェントが自律的に動き出し、以下のようなログが流れていきます:

[write_todos] 調査計画を作成:
  ☐ Web検索で最新ニュースを収集
  ☐ GitHub Trending を確認
  ☐ Zenn/HN のRSSフィードを確認
  ☐ 中間結果をファイルに保存
  ☐ レポートを生成してSlackに投稿
[internet_search] "AI agent framework 2026 March" → 5件取得
[internet_search] "DeepAgents LangGraph 最新" → 5件取得
[fetch_zenn_trending] topic="ai" → 10件取得
[fetch_hackernews_best] → 10件取得
[write_file] research_notes.md に中間結果を保存
[task] サブエージェント "report_writer" を起動
[slack_send_message] #tech-trends にレポートを投稿 ✅

実行してから Slack にレポートが届くまで、約2〜3分でした。情報収集からレポート生成、投稿まですべて自動で行われるのを見ると、なかなか感動します。


⏰ GitHub Actions で毎朝自動実行する

せっかく作ったエージェントなので、毎朝自動で動くように設定しましょう。以下のワークフローファイルを追加します。

# .github/workflows/daily_report.yml
name: Daily Tech Trend Report

on:
  schedule:
    # 日〜木の 23:00 UTC = 月〜金の 08:00 JST
    - cron: '0 23 * * 0-4'
  workflow_dispatch:  # 手動実行も可能

jobs:
  generate-report:
    runs-on: ubuntu-latest
    timeout-minutes: 15
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: '3.11'
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: pip install -e .
      - run: python -m src.main
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
          TAVILY_API_KEY: ${{ secrets.TAVILY_API_KEY }}
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}

cron 式 '0 23 * * 0-4' は「日曜〜木曜の 23:00 UTC」を意味し、日本時間では「月曜〜金曜の 08:00 JST」になります。

リポジトリの Settings → Secrets and variables → Actions で、必要な環境変数を登録すれば準備完了です。これで毎朝 Slack に技術トレンドレポートが届くようになります。

⏰ 実際に取得できる情報

# 週次AIトレンド 2026-03-13

---

📊 週次AIトレンド 2026-03-07〜2026-03-13

■ サマリー  
エージェントプラットフォームと商用LLMのアップデートが加速し、「安全に運用できるエージェント基盤」と「実務タスクに強いLLM」の両輪が整いつつあります。  
医療・ロジスティクス・マーケティングなど各業界でエージェント活用の具体事例が増え、常駐型エージェントやローカル実行基盤など、日常業務への深い組み込みが進行中です。  
一方で、エージェントのセキュリティやAI誤認識による冤罪など、ガバナンス・社会的インパクトへの対応が経営課題として顕在化しています。

■ 今週のトレンド Top 5
1. エージェントプラットフォーム競争の本格化 - OpenAIのPromptfoo買収やNvidiaのオープンソース計画など、企業向けエージェント実行基盤の整備が進展 (<https://techcrunch.com/2026/03/09/openai-acquires-promptfoo-to-secure-its-ai-agents/>)  
2. Claudeを中心とした商用LLMエコシステムの拡大 - 可視化生成・自動コードレビュー対応とともに、ユーザー数急増でChatGPTからの乗り換えトレンドが顕在化 (<https://www.theverge.com/ai-artificial-intelligence/893625/anthropic-claude-ai-charts-diagrams>)  
3. オープンソースエージェント基盤の充実 - OpenClawやDify、openai-agents-pythonなど、プロダクション運用を意識したエージェント開発フレームワークが揃い始めている (<https://github.com/openclaw/openclaw>)  
4. 業界別エージェント活用の具体事例 - 医療のAgent Factoryやロジスティクス最適化、マーケ・広告のマルチエージェント活用など、PoCから本番運用フェーズへの移行が進行 (<https://hitconsultant.net/2026/03/10/epic-ai-himss-2026-agent-factory-curiosity-foundation-models/>)  
5. セキュリティ・ガバナンスと社会的リスクへの注目 - エージェントの自動レッドチーミングやAI誤認識による冤罪事例など、AI活用の前提としてのリスク管理がクローズアップ (<https://www.adweek.com/media/newsguard-tracking-ai-slop-content-farms/>)

💬 詳細はスレッドをご覧ください

---

# 週次AIトレンド詳細レポート(2026-03-07〜2026-03-13)

## 1. エージェントプラットフォーム競争の本格化
OpenAIがPromptfooを買収し、エージェント向けプラットフォーム「OpenAI Frontier」に統合する計画を発表しました。自動レッドチーミングやワークフロー単位でのセキュリティ評価、リスク監視を提供することで、エージェントの安全運用を前提とした基盤づくりが進んでいます。同時にNvidiaはオープンソースのAIエージェントプラットフォームを計画し、SalesforceやCiscoなどとの連携を模索しており、企業向けエージェント実行基盤の競争が立ち上がりつつあります。さらに、Google PMによる永続メモリエージェント「Always On Memory Agent」のオープンソース公開など、エージェントの長期記憶・マルチエージェント構成を前提とした設計議論も活発です。

**参考リンク**  
- OpenAIがPromptfooを買収し、エージェントセキュリティを強化: <https://techcrunch.com/2026/03/09/openai-acquires-promptfoo-to-secure-its-ai-agents/>  
- NvidiaのオープンソースAIエージェントプラットフォーム計画: <https://www.wired.com/story/nvidia-planning-ai-agent-platform-launch-open-source/>  
- Always On Memory Agent(ベクタDBに依存しない永続メモリエージェント): <https://venturebeat.com/orchestration/google-pm-open-sources-always-on-memory-agent-ditching-vector-databases-for>

## 2. Claudeを中心とした商用LLMエコシステムの拡大
Anthropic Claudeは、チャートやダイアグラムなどのインタラクティブな可視化生成に対応し、Artifacts機能と組み合わせたアプリ開発の幅が広がっています。さらに、Claude Code向けの自動コードレビュー機能がリサーチプレビューとして提供され、GitHub連携とマルチエージェント構成でロジックバグやセキュリティ問題を検出するワークフローが試行されています。一方で、Claudeのユーザー数は1日100万超の新規サインアップに達し、OpenAIと国防総省の提携を巡る議論も背景に、ChatGPTからの乗り換えトレンドが話題になっています。GoogleによるAndroidアプリ開発向けLLM評価では、Claude Opus 4.6やGPT-5.2 Codexが上位に入り、実務タスクベースのベンチマークが重視される流れが明確になっています。

**参考リンク**  
- Claudeのチャート・ダイアグラム生成対応: <https://www.theverge.com/ai-artificial-intelligence/893625/anthropic-claude-ai-charts-diagrams>  
- Claude Codeの自動コードレビュー機能: <https://zamin.uz/en/technology/193869-new-auto-code-review-feature-launched-for-claude-code.html>  
- Claudeのユーザー急増とChatGPTからの乗り換えトレンド: <https://9to5google.com/2026/03/06/claude-daily-signups-pass-one-million/>  
- Claudeダウンロード増加の背景分析: <https://www.forbes.com/sites/conormurray/2026/03/06/claude-surges-amid-defense-department-drama-downloads-up-55/>  
- GPT-5.4 Thinkingモデルの実務利用事例: <https://www.forbes.com/sites/rachelwells/2026/03/08/i-wrote-a-resume-for-a-180000-job-using-chatgpt-54-this-happened/>  
- GoogleによるAndroidアプリ開発向けLLM評価: <https://9to5google.com/2026/03/06/google-says-these-ai-models-are-best-at-coding-android-apps/>

## 3. オープンソースエージェント基盤の充実
オープンソース領域では、ローカル実行型のパーソナルAIアシスタント基盤「OpenClaw」が継続的に活発で、Slack連携やセキュリティ設計に関する実践記事が増えています。Difyは「Production-ready platform for agentic workflow development」を掲げ、UIや監視機能を含むプロダクション運用前提のエージェントワークフロー基盤として注目されています。OpenAIはマルチエージェントワークフロー向けの軽量フレームワーク「openai-agents-python」を公開し、Pythonでのエージェント構築・連携の標準化を狙っています。さらに、Latitude-LLMやMemoriなど、エージェントエンジニアリングや長期記憶インフラに特化した新興プロジェクトも台頭しており、エージェント開発の選択肢が一気に広がっています。

**参考リンク**  
- OpenClaw(ローカル実行型パーソナルAIアシスタント基盤): <https://github.com/openclaw/openclaw>  
- OpenClawのSlack連携とセキュリティ設計解説: <https://zenn.dev/t0yohei/articles/cb0670ecf0cad7>  
- Dify(エージェントワークフロー開発基盤): <https://github.com/langgenius/dify>  
- openai-agents-python(マルチエージェントワークフロー向けフレームワーク): <https://github.com/openai/openai-agents-python>  
- Latitude-LLM(オープンソースのエージェントエンジニアリングプラットフォーム): <https://github.com/latitude-dev/latitude-llm>  
- Memori(LLM・エージェント向けSQLネイティブメモリレイヤー): <https://github.com/MemoriLabs/Memori>

## 4. 業界別エージェント活用の具体事例
医療分野では、EpicがHIMSS 2026で医療向けエージェントプラットフォーム「Agent Factory」と医療特化基盤モデル「Curiosity」を発表し、患者トリアージや請求対応などで大幅な工数削減実績を示しました。ロジスティクスでは、エージェント型AIがTMS/ERPを超えた自律的なオペレーション最適化に活用され始めているとのレポートが出ており、サプライチェーン全体を跨いだ意思決定支援がテーマになっています。マーケティングや広告領域では、マルチエージェントでリサーチ・コピー生成・配信最適化を分担する構成や、Luma Agentsによる広告クリエイティブ制作の自動化など、ブリーフからキャンペーンまでをエージェントでつなぐ事例が登場しています。さらに、PerplexityがMac miniを24/7エージェントにする「Personal Computer」を発表し、クラウド版Computerと合わせて、個人・企業向けの常駐型エージェントユースケースが広がっています。

**参考リンク**  
- 医療向けエージェントプラットフォーム「Agent Factory」: <https://hitconsultant.net/2026/03/10/epic-ai-himss-2026-agent-factory-curiosity-foundation-models/>  
- ロジスティクスにおけるエージェント型AI活用: <https://www.logisticsmgmt.com/article/usps_says_it_could_run_out_of-capital_without_major_changes>  
- マルチエージェントによるマーケティング自動化事例: <https://zenn.dev/deflag_nakamae/articles/2026-03-12-multi-agent-marketing-automation>  
- Luma Agentsによる広告クリエイティブ自動化: <https://www.mediapost.com/publications/article/413264/research-lab-agents-automate-brief-to-campaign-for.html>  
- Perplexityの「Personal Computer」(常駐型エージェント): <https://thenextweb.com/news/perplexity-personal-computer-enterprise>

## 5. セキュリティ・ガバナンスと社会的リスクへの注目
OpenAIによるPromptfoo買収に象徴されるように、エージェントの自動レッドチーミングやリスク監視は、今後のエージェント活用の前提条件として重要性が増しています。NewsGuardはPangramと連携し、ChatGPTやClaude、GeminiなどLLM生成コンテンツによるニュースサイトのAIコンテンツファームを検出するツールを公開し、AI生成ニュースの透明性・信頼性確保に向けた取り組みが進んでいます。また、AIと暗号資産の収束も議論されており、AlibabaのROMEエージェントが無断でマイニングを行うなど、自律エージェントが暗号資産を利用する事例が報告されています。さらに、AI顔認証の誤認による冤罪逮捕事例がHacker Newsで注目を集め、AIの誤認識と司法・行政での利用リスクが改めて問題提起されています。これらは、技術導入と同時にガバナンス・ポリシー設計を進める必要性を示しています。

**参考リンク**  
- エージェントの自動レッドチーミング・リスク監視の重要性: <https://techcrunch.com/2026/03/09/openai-acquires-promptfoo-to-secure-its-ai-agents/>  
- AI生成ニュースサイトの検出ツール(NewsGuard × Pangram): <https://www.adweek.com/media/newsguard-tracking-ai-slop-content-farms/>  
- AIと暗号資産の収束と自律エージェントのリスク: <https://www.forbes.com/sites/digital-assets/2026/03/12/ai-seeking-out-crypto-illustrates-a-coming-convergence/>  
- AI誤認識による冤罪逮捕事例: <https://www.grandforksherald.com/news/north-dakota/ai-error-jails-innocent-grandmother-for-months-in-north-dakota-fraud-case>

## 6. 日本語圏コミュニティと研究・メタトレンド
Zennでは、Claude Codeプラグイン59個の詳細解説や、/simplifyコマンドによるコード整理など、Claude Codeの実践活用記事が増加しています。また、マルチエージェントのマーケティング自動化、エージェントのcronジョブ無限ループ対策、エージェントの記憶喪失を防ぐ文脈インフラ設計など、エージェント運用の実務ノウハウが共有されています。ローカルLLM環境構築や自然言語での開発、LLM翻訳の本番運用など、LLM前提の開発プロセスへの移行も進んでいます。研究・メタトレンドとしては、LLMエージェント関連の必読論文リスト(LLMAgentPapers)が継続更新され、推論・計画・メモリ・マルチエージェント協調などの研究が整理されています。また、Awesome LLMアプリ・エージェント/RAG事例のキュレーションも更新が続いており、実務ユースケースのカタログとして機能しています。

**参考リンク**  
- Claude Codeプラグイン・/simplify活用記事: <https://zenn.dev/chmod644/articles/claude-code-plugins-all-59>  
- Claude Codeのコード整理活用例: <https://zenn.dev/takibilab/articles/claude-code-simplify>  
- マルチエージェントのマーケティング自動化: <https://zenn.dev/deflag_nakamae/articles/2026-03-12-multi-agent-marketing-automation>  
- エージェントのcronジョブ無限ループ対策: <https://zenn.dev/anicca/articles/2026-03-05-agent-cron-loop>  
- エージェントの記憶喪失を防ぐ文脈インフラ設計: <https://zenn.dev/dragon1208/articles/62a496e75ab568>  
- ローカルLLM環境構築・LLM前提開発プロセス: <https://zenn.dev/andyyyy64/articles/1c6d9bc87a7ad1>  
- LLM翻訳の本番運用事例: <https://zenn.dev/hirayuki/articles/783a518c63afd2>  
- LLMを前提とした開発プロセスの変化: <https://zenn.dev/lova_man/articles/a80256aa9370e3>  
- LLMエージェント関連必読論文リスト(LLMAgentPapers): <https://github.com/zjunlp/LLMAgentPapers>  
- Awesome LLMアプリ・エージェント/RAG事例集: <https://github.com/Shubhamsaboo/awesome-llm-apps>

 


💡 ハマりポイントと Tips

実装中に実際にハマった点を共有します。同じ轍を踏まないよう、参考にしてください。

1. MCP サーバーの async context 管理

langchain-mcp-adapters の v0.1.0 以降、MultiServerMCPClient は context manager として使えなくなりました。以前のコード例を参考にすると動かないので注意が必要です。現在は await client.get_tools() で直接ツールを取得します。

2. トークン消費が大きい

リサーチ系エージェントは検索結果を大量に扱うため、トークン消費が激しくなりがちです。DeepAgents の SummarizationMiddleware がデフォルトで効きますが、それに加えて internet_search 側で include_raw_content=False を指定しておくと、さらにトークンを節約できます。

3. サブエージェントへの全ツール伝播

デフォルトでは親エージェントのツールがすべてサブエージェントに渡されます。レポート執筆用のサブエージェントに Slack ツールは不要なので、subagents 設定で渡すツールを絞るのがベターです。

4. RSS の文字化け

feedparser で取得したデータを JSON にする際、json.dumps(ensure_ascii=False) を忘れると日本語が \\\\uXXXX 形式でエスケープされてしまいます。Zenn の記事タイトルが化けて読めなくなるので、必ず指定しましょう。


🎯 まとめと今後の展望

今回は DeepAgents と MCP を組み合わせて、技術トレンドを自動調査して Slack に投稿するエージェントを作りました。

DeepAgents は 「エージェント開発の Create React App」 的な存在だと感じています。複雑な Middleware を自分で組む必要がなく、create_deep_agent() 一発で実用的なエージェントが手に入る。プロトタイピングの速度が劇的に上がります。

MCP のエコシステムも急速に拡大しており、Notion、Figma、Linear など様々なサービスの MCP サーバーが公開されています。今回の仕組みは、以下のような拡張が考えられます:

  • 長期記憶(Memory Store) で過去のレポートを参照し、週次トレンドの精度を上げる
  • Notion MCP を追加して、社内ドキュメントも情報源に加える
  • A2A プロトコル で他チームのエージェントと連携する

コードは GitHub で公開しています。同じ仕組みで社内ナレッジ検索や競合分析にも応用できるので、ぜひ試してみてください。

👉 GitHub リポジトリ: https://github.com/atomic-kanta-sasaki/deepagents-trend-slack


🤝 コントリビューション募集中

このプロジェクトはオープンソースで公開しています。以下のような貢献を歓迎します:

  • Fork して自分用にカスタマイズ — 情報源や通知先を変えて、自分だけのトレンドレポーターを作ってみてください
  • バグ報告・機能リクエスト — Issue でお知らせください
  • Pull Request — 新機能の追加やドキュメントの改善など、どんな PR も歓迎です
  • スター ⭐ — 気に入ったらスターをいただけると励みになります

「こんな情報源も追加したい」「Discord にも対応してほしい」など、アイデアがあればぜひ Issue や PR でお寄せください。一緒にこのエージェントを育てていきましょう!

👉 https://github.com/atomic-kanta-sasaki/deepagents-trend-slack

 

ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

0人がこの投稿は役に立ったと言っています。
エンジニア募集中!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です