Skip to main content
Glama

Биомарт МКП

значок кузнеца

Сервер MCP для взаимодействия с Biomart

Model Context Protocol (MCP) — открытый протокол, который стандартизирует, как приложения предоставляют контекст LLM, разработанный Anthropic . Здесь мы используем MCP python-sdk для создания сервера MCP, который взаимодействует с Biomart через пакет pybiomart .

Демонстрация, демонстрирующая biomart-mcp в действии

Имеется короткое демонстрационное видео, демонстрирующее работу сервера MCP на Claude Desktop.

Установка

Установка через Smithery

Чтобы автоматически установить Biomart MCP для Claude Desktop через Smithery :

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 другие модели также могут использовать преимущества серверов MCP, например, от OpenAI или DeepSeek. Щелкните шестеренку настройки курсора и перейдите в 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:

  • Поиск витрин и наборов данных : список доступных витрин и наборов данных для изучения структуры базы данных Biomart.

  • Исследование атрибутов и фильтров : просмотр общих или всех доступных атрибутов и фильтров для определенных наборов данных.

  • Извлечение данных : запросите Biomart с определенными атрибутами и фильтрами для получения биологических данных

  • Перевод идентификаторов : преобразование между различными биологическими идентификаторами (например, символы генов в идентификаторы ансамбля)

Внося вклад

Pull requests приветствуются! Несколько небольших заметок по разработке:

  • Мы намеренно используем здесь только @mcp.tool() , чтобы обеспечить максимальную совместимость с клиентами, поддерживающими MCP, как показано в документации .

  • Мы используем @lru_cache для кэширования результатов функций, требующих больших вычислительных затрат или выполняющих внешние вызовы API.

  • Нам нужно быть внимательными, чтобы не раздуть контекстное окно модели, например, вы увидите df.to_csv(index=False).replace("\r", "") во многих местах. Этот возврат в стиле csv гораздо более эффективен с точки зрения токенов, чем что-то вроде df.to_string() , где большинство токенов — это пробелы. Также помните о том, что извлечение всех генов из хромосомы или подобный большой запрос также будет слишком большим для контекстного окна.

Потенциальные будущие возможности

Конечно, есть еще много функций, которые можно добавить, некоторые из них, возможно, выходят за рамки имени biomart-mcp . Вот несколько идей:

  • Добавьте веб-скрапинг для сайтов ресурсов с bs4 , например, мы получили идентификатор гена Ensembl для NOTCH1, тогда, возможно, в некоторых случаях будет полезно извлечь сопоставленные Comments and Description Text from UniProtKB с его страницы на UCSC.

  • $...$

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