Skip to main content
Glama

バイオマートMCP

鍛冶屋のバッジ

BiomartとインターフェースするMCPサーバー

モデルコンテキストプロトコル(MCP)は、 Anthropicが開発したLLMにアプリケーションがコンテキストを提供する方法を標準化するオープンプロトコルです。ここでは、MCP Python SDKを使用して、 pybiomartパッケージを介してBiomartとインターフェースするMCPサーバーを作成します。

biomart-mcp の動作デモ

Claude Desktop 上で動作している MCP サーバーを示す短いデモ ビデオがあります。

インストール

Smithery経由でインストール

Smithery経由で Biomart MCP for Claude Desktop を自動的にインストールするには:

npx -y @smithery/cli install @jzinno/biomart-mcp --client claude

リポジトリをクローンする

git clone https://github.com/jzinno/biomart-mcp.git
cd biomart-mcp

クロードデスクトップ

uv run --with mcp[cli] mcp install --with pybiomart biomart-mcp.py

カーソル

Cusrorのエージェントモードを使用すると、OpenAIやDeepSeekなどのMCPサーバーを他のモデルでも利用できます。カーソル設定の歯車をクリックしてMCPに移動し、MCPサーバーをグローバル設定に追加するか、 .cursor/mcp.jsonプロジェクトに追加してプロジェクトスコープに追加してください。

.cursor/mcp.json :

{
    "mcpServers": {
        "Biomart": {
            "command": "uv",
            "args": [
                "run",
                "--with",
                "mcp[cli]",
                "--with",
                "pybiomart",
                "mcp",
                "run",
                "/your/path/to/biomart-mcp.py"
            ]
        }
    }
}

グラマ

発達

# Create a virtual environment
uv venv

# MacOS/Linux
source .venv/bin/activate

# Windows
.venv\Scripts\activate

uv sync #or uv add mcp[cli] pybiomart

# Run the server in dev mode
mcp dev biomart-mcp.py

Related MCP server: MCP TapData Server

特徴

Biomart-MCP は、Biomart データベースと対話するためのいくつかのツールを提供します。

  • Mart とデータセットの検出: Biomart データベース構造を探索するために利用可能な mart とデータセットを一覧表示します

  • 属性とフィルターの探索: 特定のデータセットの共通または利用可能なすべての属性とフィルターを表示します。

  • データ取得: 特定の属性とフィルターを使用して Biomart をクエリし、生物学的データを取得します。

  • ID 変換: 異なる生物学的識別子 (例: 遺伝子シンボルから Ensembl ID) 間の変換

貢献

プルリクエストは大歓迎です!開発に関するちょっとしたメモ:

  • ここでは意図的に@mcp.tool()のみを使用しています。これは、ドキュメントに記載されているように、MCP をサポートするクライアントとの互換性を最大化するためです。

  • 計算コストが高い関数や外部 API 呼び出しを行う関数の結果をキャッシュするために、 @lru_cacheを使用しています。

  • モデルのコンテキストウィンドウを拡張しないように注意する必要があります。例えば、多くの場所でdf.to_csv(index=False).replace("\r", "")見られます。このcsv形式の戻り値は、トークンの大部分が空白であるdf.to_string()のような関数よりもトークン効率がはるかに高くなります。また、染色体からすべての遺伝子を取得するなど、大規模なリクエストはコンテキストウィンドウに対して大きすぎることにも注意してください。

将来の潜在的な機能

もちろん、他にも追加できる機能はたくさんあり、中にはbiomart-mcpという名前の範囲を超えるものもあるかもしれません。いくつかアイデアをご紹介します。

  • bs4を使ってリソース サイトの Web スクレイピングを追加します。たとえば、NOTCH1 の Ensembl 遺伝子 ID を取得した場合、場合によっては、 UCSC のページからComments and Description Text from UniProtKBを取得することが役に立つ可能性があります。

  • $...$

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jzinno/biomart-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server