Oh My Kegg MCP
2.5ポイント
4.2K

インストール

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

🚀 Oh My KEGG MCP

これはKEGG (Kyoto Encyclopedia of Genes and Genomes) データベースにアクセスするためのModel Context Protocol (MCP) サーバーです。(非公式)

✨ 主な機能

  • 30のKEGGツール:代謝経路、遺伝子、化合物、反応、酵素、疾患、薬物など、様々な生物学的データの検索と分析が可能です。
  • Streamable HTTP Transport:Web環境で使用可能なHTTPベースの通信方式を採用しています。
  • LangChain統合:LangChain Agentと完全に統合されており、LLMがKEGGデータを活用できます。
  • Ollamaサポート:ローカルのLLMモデルと一緒に使用することができます。

📦 インストール

1. 必要なパッケージのインストール

pip install -r requirements.txt

2. 環境変数の設定

.env.example ファイルを参考に .env ファイルを作成します:

cp .env.example .env

.env ファイルを編集して必要な値を設定します:

# OpenAI APIキー (OpenAIモデルを使用する場合に必要)
# Ollamaを使用する場合は設定する必要はありません
OPENAI_API_KEY=your_openai_api_key

# MCPサーバーのURL (クライアントで使用)
# サーバーが別のホスト/ポートで実行されている場合は変更してください
KEGG_MCP_SERVER_URL=http://localhost:3000/mcp

# MCPサーバーの設定 (サーバーを実行する際に使用、オプション)
# デフォルト値が設定されているので、変更する必要はありません
MCP_HOST=localhost
MCP_PORT=3000
MCP_PATH=/mcp

# Ollamaの設定 (オプション)
# Ollamaが別のホスト/ポートで実行されている場合は変更してください
# OLLAMA_HOST=http://localhost:11434

⚠️ 重要提示

  • Ollamaを使用する場合OPENAI_API_KEY は設定する必要はありません。現在のコードではOllamaをデフォルトモデルとして使用しています。
  • OpenAIを使用する場合OPENAI_API_KEY に実際のAPIキーを設定し、langchain_integration.pyChatOpenAI を使用するように変更する必要があります。
  • サーバーの設定MCP_HOSTMCP_PORTMCP_PATH はサーバーを実行する際に使用され、デフォルト値が設定されているので、変更する必要はありません。
  • Ollamaのホスト:Ollamaがデフォルトポート(11434)以外のポートで実行されている場合、OLLAMA_HOST を設定することができます。

💻 使用例

1. サーバーの起動

# デフォルト設定で起動 (localhost:3000/mcp)
python kegg_mcp_server.py

# または環境変数で設定
MCP_HOST=localhost MCP_PORT=3000 MCP_PATH=/mcp python kegg_mcp_server.py

サーバーが起動すると、次のようなメッセージが表示されます:

Starting KEGG MCP Server on http://localhost:3000/mcp
Transport: Streamable HTTP

2. クライアントの起動

# デフォルトの起動 (Streamable HTTPを使用)
python langchain_integration.py

# Ollamaの接続テストのみを実行
python langchain_integration.py --test

# stdioを使用 (オプション、別途TypeScriptサーバーが必要)
# langchain_integration.pyでuse_http=Falseに変更
# 注意: 現在はStreamable HTTP方式のみ提供されています

利用可能なツール

Database Information & Statistics (2つ)

  • get_database_info - データベースの情報と統計を取得します。
  • list_organisms - すべてのKEGG生物のリストを取得します。

Pathway Analysis (3つ)

  • search_pathways - 代謝経路を検索します。
  • get_pathway_info - 代謝経路の詳細情報を取得します。
  • get_pathway_genes - 代謝経路の遺伝子リストを取得します。

Gene Analysis (2つ)

  • search_genes - 遺伝子を検索します。
  • get_gene_info - 遺伝子の詳細情報(配列を含むオプション)を取得します。

Compound Analysis (2つ)

  • search_compounds - 化合物を検索します。
  • get_compound_info - 化合物の詳細情報を取得します。

Reaction & Enzyme Analysis (4つ)

  • search_reactions - 反応を検索します。
  • get_reaction_info - 反応の詳細情報を取得します。
  • search_enzymes - 酵素を検索します。
  • get_enzyme_info - 酵素の詳細情報を取得します。

Disease & Drug Analysis (5つ)

  • search_diseases - 疾患を検索します。
  • get_disease_info - 疾患の詳細情報を取得します。
  • search_drugs - 薬物を検索します。
  • get_drug_info - 薬物の詳細情報を取得します。
  • get_drug_interactions - 薬物の相互作用を取得します。

Module & Orthology Analysis (4つ)

  • search_modules - モジュールを検索します。
  • get_module_info - モジュールの詳細情報を取得します。
  • search_ko_entries - KOエントリを検索します。
  • get_ko_info - KOの詳細情報を取得します。

Glycan Analysis (2つ)

  • search_glycans - 糖鎖を検索します。
  • get_glycan_info - 糖鎖の詳細情報を取得します。

BRITE Hierarchy Analysis (2つ)

  • search_brite - BRITE階層を検索します。
  • get_brite_info - BRITEの詳細情報を取得します。

Advanced Analysis Tools (5つ)

  • get_pathway_compounds - 代謝経路の化合物リストを取得します。
  • get_pathway_reactions - 代謝経路の反応リストを取得します。
  • get_compound_reactions - 化合物の反応リストを取得します。
  • get_gene_orthologs - 遺伝子の直列相同体を検索します。
  • batch_entry_lookup - バッチエントリを検索します。

Cross-References & Integration (2つ)

  • convert_identifiers - データベース間の識別子を変換します。
  • find_related_entries - 関連するエントリを検索します。

基本的な使用法

import asyncio
from langchain_integration import create_kegg_client, load_and_display_tools, create_default_model, run_agent_query
from langchain.agents import create_agent

async def main():
    # クライアントを作成 (Streamable HTTP)
    client = create_kegg_client()
    
    try:
        # ツールをロード
        tools = await load_and_display_tools(client)
        
        # モデルとエージェントを作成
        model = create_default_model()
        agent = create_agent(model=model, tools=tools)
        
        # クエリを実行
        await run_agent_query(
            agent,
            "ヒトの解糖系(glycolysis)経路を探してください。",
            "解糖系経路の検索"
        )
    finally:
        if hasattr(client, 'close'):
            try:
                await client.close()
            except:
                pass

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

📚 ドキュメント

プロジェクト構造

kegg-mcp-test/
├── kegg_mcp_server.py          # Python MCPサーバー (Streamable HTTP)
├── langchain_integration.py    # LangChain統合クライアント
├── requirements.txt             # Pythonパッケージの依存関係
├── .env.example                # 環境変数のサンプルファイル
├── .gitignore                  # Gitで無視するファイルのリスト
├── LICENSE                     # MITライセンス
└── README.md                    # プロジェクトのドキュメント (このファイル)

通信方式

Streamable HTTP (推奨)

  • 利点:Web環境をサポートし、拡張性が高く、標準のHTTPプロトコルを使用しています。
  • 使用方法:Pythonサーバー (kegg_mcp_server.py) を使用します。
  • ポート:デフォルトは3000 (環境変数で変更可能)

stdio (ローカル専用、オプション)

  • 利点:最高のセキュリティ、低いオーバーヘッド、簡単な設定です。
  • 使用方法langchain_integration.pyuse_http=False に設定することで使用できます。
  • 制限:ローカルでの実行のみ可能で、別途TypeScriptサーバーが必要です。

トラブルシューティング

サーバーが起動しない場合

  1. ポートが既に使用されているか確認します:lsof -i :3000
  2. 必要なパッケージがインストールされているか確認します:pip install -r requirements.txt
  3. Pythonのバージョンを確認します:Python 3.11以上が必要です。

クライアントの接続に失敗した場合

  1. サーバーが実行中であることを確認します。
  2. サーバーのURLが正しいことを確認します:KEGG_MCP_SERVER_URL 環境変数を確認してください。
  3. ファイアウォールの設定を確認します。

Ollamaの接続に失敗した場合

  1. Ollamaが実行中であることを確認します:ollama serve
  2. モデルがインストールされていることを確認します:ollama list
  3. モデルをダウンロードします:ollama pull gemma3:4b (または使用するモデル)

📄 ライセンス

MIT License

参考資料

代替品

P
Paperbanana
Python
6.8K
5ポイント
F
Finlab Ai
FinLab AIは金融定量分析プラットフォームで、AI技術を通じてユーザーが投資戦略の超過収益(アルファ)を発見するのを支援します。豊富なデータセット、バックテストフレームワーク、および戦略サンプルを提供し、自動化されたインストールと主流のAIプログラミングアシスタントへの統合をサポートします。
6.2K
4ポイント
A
Apify MCP Server
Apify MCPサーバーは、モデルコンテキストプロトコル(MCP)に基づくツールで、AIアシスタントが数千の既成のクローラー、スクレイパー、自動化ツール(Apifyアクター)を通じて、ソーシャルメディア、検索エンジン、電子商取引などのウェブサイトからデータを抽出できるようにします。OAuthとSkyfireプロキシ支払いをサポートしており、HTTPSエンドポイントまたはローカルのstdio方式でClaude、VS CodeなどのMCPクライアントに統合できます。
TypeScript
6.6K
5ポイント
R
Runno
Runnoは、JavaScriptツールキットのセットで、ブラウザやNode.jsなどの環境で複数のプログラミング言語のコードを安全に実行するためのものです。WebAssemblyとWASIを通じてサンドボックス化された実行を実現し、Python、Ruby、JavaScript、SQLite、C/C++などの言語をサポートし、Webコンポーネント、MCPサーバーなどの統合方法を提供します。
TypeScript
9.3K
5ポイント
P
Praisonai
PraisonAIは、自動反省機能を備えた本番環境で使用可能な多AIエージェントフレームワークです。簡単なタスクから複雑な課題まで、様々な問題を自動的に解決するAIエージェントを作成することを目的としています。PraisonAIエージェント、AG2、CrewAIを低コードソリューションに統合することで、多エージェントLLMシステムの構築と管理を簡素化し、簡単さ、カスタマイズ性、および効果的な人間との協働を重視しています。
Python
10.4K
5ポイント
M
Maverick MCP
MaverickMCPはFastMCP 2.0に基づく個人株式分析サーバーであり、Claude DesktopなどのMCPクライアントに専門レベルの金融データ分析、技術指標計算、ポートフォリオ最適化ツールを提供する。これは520株のスタンダード500株データを事前に設定し、複雑な認証なしでローカルに実行できるように、さまざまな技術分析戦略と並列処理をサポートしています。
Python
11.2K
4ポイント
K
Klavis
Klavis AIはオープンソースプロジェクトで、Slack、Discord、Webプラットフォームで簡単に使えるMCP(モデルコンテキストプロトコル)サービスを提供します。レポート生成、YouTubeツール、ドキュメント変換などのさまざまな機能があり、非技術ユーザーと開発者がAIワークフローを使用するのをサポートします。
TypeScript
21.1K
5ポイント
S
Scrapling
Scraplingは適応型ウェブページのスクレイピングライブラリで、ウェブサイトの変化を自動的に学習し、要素を再配置します。複数のスクレイピング方法とAI統合をサポートし、高性能な解析と開発者に優しい体験を提供します。
Python
15.7K
5ポイント
E
Edgeone Pages MCP Server
EdgeOne Pages MCPは、MCPプロトコルを通じてHTMLコンテンツをEdgeOne Pagesに迅速にデプロイし、公開URLを取得するサービスです。
TypeScript
24.0K
4.8ポイント
G
Gmail MCP Server
Claude Desktop用に設計されたGmail自動認証MCPサーバーで、自然言語でのやり取りによるGmailの管理をサポートし、メール送信、ラベル管理、一括操作などの完全な機能を備えています。
TypeScript
17.6K
4.5ポイント
C
Context7
Context7 MCPは、AIプログラミングアシスタントにリアルタイムのバージョン固有のドキュメントとコード例を提供するサービスで、Model Context Protocolを通じてプロンプトに直接統合され、LLMが古い情報を使用する問題を解決します。
TypeScript
78.2K
4.7ポイント
B
Baidu Map
認証済み
百度マップMCPサーバーは国内初のMCPプロトコルに対応した地図サービスで、地理コーディング、ルート計画など10個の標準化されたAPIインターフェースを提供し、PythonとTypescriptでの迅速な接続をサポートし、エージェントに地図関連の機能を実現させます。
Python
35.1K
4.5ポイント
G
Gitlab MCP Server
認証済み
GitLab MCPサーバーは、Model Context Protocolに基づくプロジェクトで、GitLabアカウントとのやり取りに必要な包括的なツールセットを提供します。コードレビュー、マージリクエスト管理、CI/CD設定などの機能が含まれます。
TypeScript
21.4K
4.3ポイント
U
Unity
認証済み
UnityMCPはUnityエディターのプラグインで、モデルコンテキストプロトコル (MCP) を実装し、UnityとAIアシスタントのシームレスな統合を提供します。リアルタイムの状態監視、リモートコマンドの実行、ログ機能が含まれます。
C#
27.4K
5ポイント
M
Magic MCP
Magic Component Platform (MCP) はAI駆動のUIコンポーネント生成ツールで、自然言語での記述を通じて、開発者が迅速に現代的なUIコンポーネントを作成するのを支援し、複数のIDEとの統合をサポートします。
JavaScript
19.5K
5ポイント
S
Sequential Thinking MCP Server
MCPプロトコルに基づく構造化思考サーバーで、思考段階を定義することで複雑な問題を分解し要約を生成するのに役立ちます。
Python
30.9K
4.5ポイント
AIBase
智啓未来、あなたの人工知能ソリューションシンクタンク
© 2026AIBase