Skip to main content
Glama

UniProt MCP Server

by TakumiY235

UniProt MCP サーバー

UniProtタンパク質情報へのアクセスを提供するモデルコンテキストプロトコル(MCP)サーバー。このサーバーにより、AIアシスタントはUniProtからタンパク質の機能と配列情報を直接取得できます。

特徴

  • UniProtアクセッション番号でタンパク質情報を取得する
  • 複数のタンパク質のバッチ検索
  • パフォーマンス向上のためのキャッシュ(24時間TTL)
  • エラー処理とログ記録
  • 情報には以下が含まれます:
    • タンパク質名
    • 機能の説明
    • フルシーケンス
    • シーケンスの長さ
    • 生物

クイックスタート

  1. Python 3.10以降がインストールされていることを確認してください
  2. このリポジトリをクローンします:
    git clone https://github.com/TakumiY235/uniprot-mcp-server.git cd uniprot-mcp-server
  3. 依存関係をインストールします:
    # Using uv (recommended) uv pip install -r requirements.txt # Or using pip pip install -r requirements.txt

構成

Claude Desktop 構成ファイルに以下を追加します:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{ "mcpServers": { "uniprot": { "command": "uv", "args": ["--directory", "path/to/uniprot-mcp-server", "run", "uniprot-mcp-server"] } } }

使用例

Claude Desktop でサーバーを構成した後、次のような質問をすることができます。

Can you get the protein information for UniProt accession number P98160?

バッチクエリの場合:

Can you get and compare the protein information for both P04637 and P02747?

APIリファレンス

ツール

  1. get_protein_info
    • 単一のタンパク質の情報を取得する
    • 必須パラメータ: accession (UniProt アクセッション番号)
    • 応答例:
      { "accession": "P12345", "protein_name": "Example protein", "function": ["Description of protein function"], "sequence": "MLTVX...", "length": 123, "organism": "Homo sapiens" }
  2. get_batch_protein_info
    • 複数のタンパク質の情報を取得する
    • 必須パラメータ: accessions (UniProt アクセッション番号の配列)
    • タンパク質情報オブジェクトの配列を返します

発達

開発環境の設定

  1. リポジトリをクローンする
  2. 仮想環境を作成します。
    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. 開発依存関係をインストールします。
    pip install -e ".[dev]"

テストの実行

pytest

コードスタイル

このプロジェクトでは以下を使用します:

  • コードフォーマット用の黒
  • インポートソート用のisort
  • 糸くず除去用flake8
  • 型チェックのためのmypy
  • セキュリティチェックの盗賊
  • 依存関係の脆弱性チェックの安全性

すべてのチェックを実行します:

black . isort . flake8 . mypy . bandit -r src/ safety check

技術的な詳細

  • MCP Python SDKを使用して構築
  • 非同期HTTPリクエストにhttpxを使用する
  • OrderedDictベースのキャッシュを使用して24時間TTLのキャッシュを実装します
  • レート制限と再試行を処理する
  • 詳細なエラーメッセージを提供する

エラー処理

サーバーはさまざまなエラー シナリオを処理します。

  • 無効なアクセス番号(404 応答)
  • API接続の問題(ネットワークエラー)
  • レート制限(429件の回答)
  • 不正な応答(JSON 解析エラー)
  • キャッシュ管理(TTLとサイズ制限)

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。貢献方法は以下の通りです。

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

必要に応じてテストを更新し、既存のコーディング スタイルに準拠するようにしてください。

ライセンス

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

謝辞

  • タンパク質データAPIを提供するUniProt
  • モデルコンテキストプロトコル仕様のAnthropic
  • このプロジェクトの改善に協力してくれた貢献者
Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

AI アシスタントが UniProt から直接タンパク質情報にアクセスできるようにし、アクセス番号でタンパク質名、機能、配列、生物データを取得できるようにします。

  1. 特徴
    1. クイックスタート
      1. 構成
        1. 使用例
          1. APIリファレンス
            1. ツール
          2. 発達
            1. 開発環境の設定
            2. テストの実行
            3. コードスタイル
          3. 技術的な詳細
            1. エラー処理
          4. 貢献
            1. ライセンス
              1. 謝辞

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  AI assistants to query and analyze Azure Data Explorer databases through standardized interfaces.
                  Last updated -
                  4
                  45
                  Python
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  An MCP server that enables language models to fetch protein information from the UniProt database, including protein details, sequences, functions, and structures.
                  Last updated -
                  Python
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  Enables searching for AI agents by keywords or categories, allowing users to discover tools like coding agents, GUI agents, or industry-specific assistants across marketplaces.
                  Last updated -
                  34
                  Python
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Model Context Protocol server that enables AI models to programmatically search and interact with proteomics datasets from the PRIDE Archive repository through structured function calling.
                  Last updated -
                  2
                  Python

                View all related MCP servers

                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/TakumiY235/uniprot-mcp-server'

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