Search Engine With Rag And MCP
S

Search Engine With Rag And MCP

2ポイント
5.4K

インストール

以下のコマンドをクライアントにコピーして設定
注意:あなたのキーは機密情報です。誰とも共有しないでください。

🚀 RAGとMCPを搭載した検索エンジン

強力な検索エンジンです。LangChain、モデルコンテキストプロトコル(MCP)、検索強化生成(RAG)、Ollamaを組み合わせて、エージェント型AIシステムを構築しています。このシステムは、ウェブ検索、情報検索を行い、関連する回答を提供することができます。

✨ 主な機能

  • Exa APIを使用したウェブ検索機能
  • FireCrawlを使用したウェブページの内容取得
  • より関連性の高い情報抽出のためのRAG(検索強化生成)
  • ツール呼び出しを標準化するためのMCP(モデルコンテキストプロトコル)サーバー
  • Ollamaを通じたローカルLLMとOpenAIを通じたクラウドベースのLLMのサポート
  • 直接検索、エージェント型検索、またはサーバーモードをサポートする柔軟なアーキテクチャ
  • 全面的なエラー処理とエレガントなフォールバック
  • 型ヒント付きのPython 3.13+
  • ネットワーク操作を効率的に実行するための非同期処理

🔧 技術詳細

このプロジェクトはいくつかの重要なコンポーネントを統合しています。

  1. 検索モジュール:Exa APIを使用してウェブ検索を行い、FireCrawlを使用して内容を取得します。
  2. RAGモジュール:ドキュメントを埋め込み、チャンク化してFAISSベクトルライブラリに格納します。
  3. MCPサーバー:ツール呼び出しのための標準化されたプロトコルを提供します。
  4. エージェント:LangChainに基づくエージェントで、検索とRAG機能を利用します。

📦 インストール

  1. リポジトリをクローンします。
git clone https://github.com/your-username/search-engine-with-rag-and-mcp.git
cd search-engine-with-rag-and-mcp
  1. 依存関係をインストールします。
pip install -r requirements.txt

💻 使用例

基本的な使用法

1. 直接検索モード

検索エンジンのサーバーを起動します。

python src/main.py serve --mode direct

検索エンジンを使用してクエリを実行します。

python src/main.py search --query "your-query-here"

2. エージェント型検索モード

エージェントのサーバーを起動します。

python src/main.py serve --mode agent

APIを介してエージェントに検索を依頼します。

curl -X POST http://localhost:8000/agent/search -d '{"query": "your-query-here"}'

3. MCPサーバーモード

MCPサーバーを起動します。

python src/main.py serve --mode mcp

HTTPプロトコルを使用してMCPサービスを呼び出します。

curl -X POST http://localhost:8001/mcp/execute -d '{"tool": "search", "input": "your-query-here"}'

📚 ドキュメント

開発におけるベストプラクティス

  • コードフォーマットblackを使用して自動的にコードをフォーマットし、コーディングスタイルを統一します。
  • 型チェックmypyを利用して静的型チェックを行い、実行時エラーを回避します。
  • Lintingflake8pylintを適用してコード品質を管理します。
  • 単体テストpytestを使用して単体テストを作成して実行し、機能の正しさを確保します。

プロジェクト構造

search-engine-with-rag-and-mcp/
├── LICENSE              # MITライセンス
├── README.md            # プロジェクトドキュメント
├── data/                # データディレクトリ
├── docs/                # ドキュメント
│   └── env_template.md  # 環境変数ドキュメントテンプレート
├── logs/                # ログファイルディレクトリ(自動作成)
├── src/                 # メインパッケージ(ソースコード)
│   ├── __init__.py      
│   ├── core/            # コア機能
│   │   ├── __init__.py
│   │   ├── main.py      # エントリーポイント
│   │   ├── search.py    # ウェブ検索モジュール
│   │   ├── rag.py       # RAGの実装
│   │   ├── agent.py     # LangChainエージェント
│   │   └── mcp_server.py # MCPサーバーの実装
│   └── utils/           # ユーティリティパッケージ
        └── __init__.py
└── requirements.txt      # 依存関係管理

📄 ライセンス

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

謝辞

以下のプロジェクトの貢献に感謝します。

代替品

K
Klavis
Klavis AIはオープンソースプロジェクトで、Slack、Discord、Webプラットフォームで簡単に使えるMCP(モデルコンテキストプロトコル)サービスを提供します。レポート生成、YouTubeツール、ドキュメント変換などのさまざまな機能があり、非技術ユーザーと開発者がAIワークフローを使用するのをサポートします。
TypeScript
8.8K
5ポイント
M
MCP
Microsoft公式のMCPサーバーで、AIアシスタントに最新のMicrosoft技術ドキュメントの検索と取得機能を提供します。
9.3K
5ポイント
D
Devtools Debugger MCP
Node.jsデバッガーMCPサーバーは、Chrome DevToolsプロトコルに基づく完全なデバッグ機能を提供します。ブレークポイントの設定、ステップ実行、変数のチェック、式の評価などが含まれます。
TypeScript
5.5K
4ポイント
M
Mcpjungle
MCPJungleは自ホスト型のMCPゲートウェイで、複数のMCPサーバーを集中的に管理および代理し、AIエージェントに統一されたツールアクセスインターフェースを提供します。
Go
0
4.5ポイント
N
Nexus
NexusはAIツール集約ゲートウェイで、複数のMCPサーバーとLLMプロバイダーの接続をサポートし、統一されたエンドポイントを通じてツール検索、実行、およびモデルルーティング機能を提供し、セキュリティ認証とレート制限をサポートします。
Rust
0
4ポイント
Z
Zen MCP Server
Zen MCPは多モデルAI協調開発サーバーで、ClaudeやGemini CLIなどのAIコーディングアシスタントに強化されたワークフローツールとモデル間のコンテキスト管理を提供します。これは複数のAIモデルのシームレスな協調をサポートし、コードレビュー、デバッグ、リファクタリングなどの開発タスクを実現し、異なるワークフロー間で会話のコンテキストを維持することができます。
Python
12.4K
5ポイント
O
Opendia
OpenDiaはオープンソースのブラウザ拡張ツールで、AIモデルが直接ユーザーのブラウザを制御でき、既存のログイン状態、ブックマークなどのデータを利用して自動化操作を行います。複数のブラウザとAIモデルをサポートし、プライバシー保護に配慮しています。
JavaScript
10.1K
5ポイント
A
Annas MCP
Anna's ArchiveのMCPサーバーとCLIツールは、このプラットフォームのドキュメントを検索およびダウンロードするためのもので、APIキーを使用したアクセスをサポートしています。
Go
6.0K
4.5ポイント
E
Edgeone Pages MCP Server
EdgeOne Pages MCPは、MCPプロトコルを通じてHTMLコンテンツをEdgeOne Pagesに迅速にデプロイし、公開URLを取得するサービスです。
TypeScript
16.4K
4.8ポイント
G
Gmail MCP Server
Claude Desktop用に設計されたGmail自動認証MCPサーバーで、自然言語でのやり取りによるGmailの管理をサポートし、メール送信、ラベル管理、一括操作などの完全な機能を備えています。
TypeScript
13.4K
4.5ポイント
C
Context7
Context7 MCPは、AIプログラミングアシスタントにリアルタイムのバージョン固有のドキュメントとコード例を提供するサービスで、Model Context Protocolを通じてプロンプトに直接統合され、LLMが古い情報を使用する問題を解決します。
TypeScript
45.2K
4.7ポイント
B
Baidu Map
認証済み
百度マップMCPサーバーは国内初のMCPプロトコルに対応した地図サービスで、地理コーディング、ルート計画など10個の標準化されたAPIインターフェースを提供し、PythonとTypescriptでの迅速な接続をサポートし、エージェントに地図関連の機能を実現させます。
Python
23.9K
4.5ポイント
G
Gitlab MCP Server
認証済み
GitLab MCPサーバーは、Model Context Protocolに基づくプロジェクトで、GitLabアカウントとのやり取りに必要な包括的なツールセットを提供します。コードレビュー、マージリクエスト管理、CI/CD設定などの機能が含まれます。
TypeScript
13.2K
4.3ポイント
U
Unity
認証済み
UnityMCPはUnityエディターのプラグインで、モデルコンテキストプロトコル (MCP) を実装し、UnityとAIアシスタントのシームレスな統合を提供します。リアルタイムの状態監視、リモートコマンドの実行、ログ機能が含まれます。
C#
16.0K
5ポイント
M
Magic MCP
Magic Component Platform (MCP) はAI駆動のUIコンポーネント生成ツールで、自然言語での記述を通じて、開発者が迅速に現代的なUIコンポーネントを作成するのを支援し、複数のIDEとの統合をサポートします。
JavaScript
15.7K
5ポイント
S
Sequential Thinking MCP Server
MCPプロトコルに基づく構造化思考サーバーで、思考段階を定義することで複雑な問題を分解し要約を生成するのに役立ちます。
Python
20.6K
4.5ポイント
AIBase
智啓未来、あなたの人工知能ソリューションシンクタンク
© 2025AIBase