mcpField
M
MCP Node DuckDuckGo Server

MCP Node DuckDuckGo Server

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

MCP Node DuckDuckGo Server について

HTTPエンドポイント経由でDuckDuckGo検索とウェブページのテキスト取得を行う、開発者向けのNode.js製MCPサーバーです。基本的なレート制限とモジュール式のツール構成を備えています。

主な機能

  1. 01DuckDuckGo検索
  2. 02ウェブページテキストの取得と解析
  3. 03基本的なリクエスト制限
  4. 04モジュール式のツール構成

活用シーン

  1. 01整形済み検索結果の取得
  2. 02指定ページからのテキスト抽出
  3. 03検索リクエスト頻度の管理

MCP 対応

MCPクライアント向けにsearchとfetchContentのツールを公開し、HTTPエンドポイントから一覧表示と実行ができます。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

MCP Node DuckDuckGo サーバー

DuckDuckGo を検索し、書式設定された検索結果を取得する 2 つの主要なツールを提供する MCP サーバーとして動作する Node.js アプリケーションです。

  • 検索:DuckDuckGo にクエリを送信し、書式設定された検索結果を取得します。
  • コンテンツの取得:任意の Web ページの URL からテキストコンテンツを取得し、解析します。

目次

概要

MCP Node DuckDuckGo Server は、DuckDuckGo の検索と Web ページコンテンツの取得を行うためのモジュール式インターフェース(HTTP エンドポイント経由)を提供する Node.js サーバーです。このプロジェクトでは、次の内容を紹介します。

  • サーバーの作成に Express を使用します。
  • HTTP リクエストの送信に Axios を使用します。
  • HTML の解析に Cheerio を使用します。

機能

  • DuckDuckGo 検索:POST API を使用して検索クエリを実行し、後続の処理に適した形式で DuckDuckGo の検索結果を返します。
  • Web コンテンツの取得:指定された URL からテキストコンテンツを取得し、解析します。
  • レート制限:リクエスト頻度を管理するための基本的なレート制限を提供します。
  • 拡張可能な MCP サーバー:ツールはモジュールとして整理されているため、機能を簡単に追加または変更できます。

要件

  • Node.js(v12 以降)
  • npm

インストール

  1. リポジトリをクローンする
    GitHub からリポジトリをクローンします。

    git clone <repository-url>
    
  2. プロジェクトフォルダーに移動する

    cd mcp-node-duckduckgo-server
    
  3. 依存関係をインストールする
    npm を使用して必要なパッケージをインストールします。

    npm install express axios cheerio
    

使い方

サーバーの起動

次のコマンドを実行してサーバーを起動します。

node mcp-node-duckduckgo-server.js

次のようなログメッセージが表示されます。

MCP Server "ddg-search" running on port 3000
利用可能なエンドポイント
ツール一覧

利用可能なすべてのツールを一覧表示するには、新しいターミナルウィンドウを開き、次のコマンドを実行します。

curl http://localhost:3000/tools

登録済みのツール(例:「search」と「fetchContent」)の JSON リストが出力されます。

検索ツール

検索ツールを使って検索クエリを実行します。

curl -X POST http://localhost:3000/run-tool -H "Content-Type: application/json" -d "{\"toolName\":\"search\",\"params\":{\"query\":\"test query\",\"maxResults\":5}}"

レスポンスには、書式設定された DuckDuckGo の検索結果が含まれます。

コンテンツ取得ツール

特定の Web ページからコンテンツを取得します。

curl -X POST http://localhost:3000/run-tool -H "Content-Type: application/json" -d "{\"toolName\":\"fetchContent\",\"params\":{\"url\":\"https://www.channelnewsasia.com/singapore/ge2025-general-election-may-3-parliament-dissolved-5064316\"}}"

サーバーは、取得した Web ページからテキストの抜粋を返します。

ログとデバッグ

  • サーバーは、情報メッセージとエラーメッセージをターミナルに記録します。
  • タイムアウト、HTTP エラー、レスポンスの予期しない動作などの問題をデバッグする際に、これらのログを使用してください。

コントリビューション

コントリビューションを歓迎します。貢献する場合は、次の手順に従ってください。

  1. リポジトリをフォークします。
  2. 機能ブランチを作成します(git checkout -b feature/YourFeature)。
  3. 変更をコミットします(git commit -m 'Add some feature')。
  4. ブランチにプッシュします(git push origin feature/YourFeature)。
  5. プルリクエストを作成します。

ライセンス

このプロジェクトは MIT License の下でライセンスされています。詳細については、LICENSE ファイルを参照してください。

コメント

MCP は初めてですか?

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

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