mcpField
D
DuckDuckGo Search with MCP Agent

DuckDuckGo Search with MCP Agent

ローカル
github.com/alihassanml検索179 週間前に更新

DuckDuckGo Search with MCP Agent について

DuckDuckGo Search with MCP Agentは、DuckDuckGo検索とLangChain Groq LLMエージェントを組み合わせるPythonサンプルです。MCP経由の非同期接続で検索結果を返します。

主な機能

  1. 01DuckDuckGo MCPサーバー連携
  2. 02Groq LLMによる推論
  3. 03非同期Python実行
  4. 04モジュール式のサンプル構成

活用シーン

  1. 01エージェントによるDuckDuckGo検索
  2. 02MCPクライアントとサーバーの連携学習

MCP 対応

MCPクライアントを起動し、DuckDuckGo検索を提供するduckduckgo-mcp-serverに接続します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"Duckduckgo-with-MCP": {
"command": "uvx",
"args": [
"duckduckgo-mcp-server"
]
}
}
}
起動コマンドuvx duckduckgo-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiduckduckgo-mcp-server

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP エージェントによる DuckDuckGo 検索

このプロジェクトでは、DuckDuckGo MCP Server と LangChain Groq LLM エージェントを使い、MCP(Micro Component Protocol)経由で高度な検索タスクを実行する方法を紹介します。


機能

  • MCP サーバーの統合(DuckDuckGo 検索)
  • 推論に Groq LLM(deepseek-r1-distill-llama-70b)を使用
  • 非同期 Python 実行
  • シンプルでモジュール化された設計

インストール

  1. リポジトリをクローンします:
git clone https://github.com/alihassanml/Duckduckgo-with-MCP.git
cd Duckduckgo-with-MCP
  1. 依存関係をインストールします:
pip install -r requirements.txt

(requirements.txt に langchain_groq、python-dotenv などのライブラリを含めてください。)

  1. .env ファイルを設定します:
GROQ_API_KEY=your_groq_api_key_here
  1. MCP サーバーをインストールします:
uvx -y duckduckgo-mcp-server

(uvx がインストールされていることを確認してください。インストールされていない場合は、インストールしてください。)


使用方法

メインスクリプトを実行します:

python main.py

これにより、次の処理が行われます:

  • MCP クライアントを起動します
  • duckduckgo-mcp-server に接続します
  • Groq LLM を使ってスマート検索を実行します
  • 結果を出力します

コード例

import asyncio
import os
from dotenv import load_dotenv
from langchain_groq import ChatGroq  
from mcp_use import MCPAgent, MCPClient

async def main():
    load_dotenv()
    config = {
        "mcpServers": {
            "ddg-search": {
                "command": "uvx",
                "args": ["-y", "duckduckgo-mcp-server"]
            }
        }
    }
    client = MCPClient.from_dict(config)
    llm = ChatGroq(model="deepseek-r1-distill-llama-70b")
    agent = MCPAgent(llm=llm, client=client, max_steps=30)
    result = await agent.run("Find the best restaurant in San Francisco")
    print(f"\nResult: {result}")

if __name__ == "__main__":
    asyncio.run(main())

リソース


ライセンス

このプロジェクトは MIT ライセンスの下でライセンスされています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。