
Сервер UniProt MCP
Комплексный сервер Model Context Protocol (MCP), обеспечивающий расширенный доступ к базе данных белков UniProt. Этот сервер предлагает 26 специализированных инструментов биоинформатики, позволяющих помощникам ИИ и клиентам MCP выполнять сложные исследования белков, сравнительную геномику, структурный биологический анализ и системные биологические исследования непосредственно через REST API UniProt.
Разработано компанией
Функции
Анализ основного белка (5 инструментов)
Поиск белка : поиск в базе данных UniProt по названию белка, ключевым словам или организму.
Подробная информация о белке : получение полной информации о белке, включая функцию, структуру и аннотации.
Поиск на основе генов : поиск белков по названию гена или символу
Извлечение последовательности : получение аминокислотных последовательностей в формате FASTA или JSON.
Анализ характеристик : доступ к функциональным доменам, активным сайтам, сайтам связывания и другим характеристикам белка.
Сравнительный и эволюционный анализ (4 инструмента)
Сравнение белков : параллельное сравнение нескольких белков с анализом последовательностей и характеристик
Обнаружение гомологов : поиск гомологичных белков у разных видов
Идентификация ортологов : определение ортологичных белков для эволюционных исследований.
Филогенетический анализ : получение эволюционных связей и филогенетических данных.
Анализ структуры и функций (4 инструмента)
Информация о 3D-структуре : доступ к ссылкам PDB и структурным данным
Расширенный анализ домена : расширенный анализ домена с аннотациями InterPro, Pfam и SMART
Анализ вариантов : варианты и мутации, связанные с заболеваниями
Состав последовательности : аминокислотный состав, гидрофобность и другие свойства последовательности.
Анализ биологического контекста (4 инструмента)
Интеграция путей : связанные биологические пути из KEGG и Reactome
Взаимодействие белков : сети взаимодействия белок-белок
Функциональная классификация : поиск по терминам GO или функциональным аннотациям
Субклеточная локализация : поиск белков по субклеточной локализации.
Пакетная обработка и расширенный поиск (3 инструмента)
Пакетная обработка : эффективная обработка нескольких образцов белка
Расширенный поиск : сложные запросы с несколькими фильтрами (длина, масса, организм, функция)
Таксономическая классификация : Поиск по подробной таксономической классификации
Литература и перекрестные ссылки (3 инструмента)
Ссылки на внешние базы данных : ссылки на PDB, EMBL, RefSeq, Ensembl и другие базы данных.
Ссылки на литературу : связанные публикации и цитаты
Качество аннотаций : показатели качества и уровни достоверности для различных аннотаций.
Экспорт данных и утилиты (3 инструмента)
Специализированный экспорт : экспорт данных в форматах GFF, GenBank, EMBL и XML.
Проверка доступа : проверка действительности номера доступа UniProt
Таксономическая информация : подробная таксономическая классификация и данные о происхождении.
Шаблоны ресурсов
Прямой доступ к данным о белках через шаблоны URI для бесшовной интеграции
Related MCP server: MISP-MCP-SERVER
Установка
Предпосылки
Node.js (v16 или выше)
нпм или пряжа
Настраивать
Клонируйте репозиторий:
git clone <repository-url>
cd uniprot-serverУстановить зависимости:
npm installСоздайте проект:
npm run buildДокер
Создание образа Docker
Создайте образ Docker:
docker build -t uniprot-mcp-server .Работа с Docker
Запустите контейнер:
docker run -i uniprot-mcp-serverДля интеграции клиента MCP вы можете использовать контейнер напрямую:
{
"mcpServers": {
"uniprot": {
"command": "docker",
"args": ["run", "-i", "uniprot-mcp-server"],
"env": {}
}
}
}Docker Compose (необязательно)
Создайте docker-compose.yml для более удобного управления:
version: "3.8"
services:
uniprot-mcp:
build: .
image: uniprot-mcp-server
stdin_open: true
tty: trueЗапустить с:
docker-compose upИспользование
Как сервер MCP
Сервер предназначен для работы в качестве сервера MCP, который взаимодействует через stdio:
npm startДобавление в конфигурацию клиента MCP
Добавьте сервер в конфигурацию вашего клиента MCP (например, Claude Desktop):
{
"mcpServers": {
"uniprot": {
"command": "node",
"args": ["/path/to/uniprot-server/build/index.js"],
"env": {}
}
}
}Доступные инструменты
1. поиск_белков
Поиск белков в базе данных UniProt по названию, ключевому слову или организму.
Параметры:
query(обязательно): Поисковый запрос (название белка, ключевое слово или сложный поиск)organism(необязательно): название организма или идентификатор таксономии для фильтрации результатовsize(необязательно): Количество возвращаемых результатов (1-500, по умолчанию: 25)format(необязательно): Формат вывода - json, tsv, fasta, xml (по умолчанию: json)
Пример:
{
"query": "insulin",
"organism": "human",
"size": 5
}2. получить_информацию_о_белке
Получите подробную информацию о конкретном белке с помощью доступа UniProt.
Параметры:
accession(обязательно): номер доступа UniProt (например, P04637)format(необязательно): Формат вывода - json, tsv, fasta, xml (по умолчанию: json)
Пример:
{
"accession": "P01308",
"format": "json"
}3. поиск_по_гену
Поиск белков по названию гена или символу.
Параметры:
gene(обязательно): название или символ гена (например, BRCA1, INS)organism(необязательно): название организма или идентификатор таксономии для фильтрации результатовsize(необязательно): Количество возвращаемых результатов (1-500, по умолчанию: 25)
Пример:
{
"gene": "BRCA1",
"organism": "human"
}4. получить_белковую_последовательность
Получите аминокислотную последовательность белка.
Параметры:
accession(обязательно): номер присоединения UniProtformat(необязательно): Формат вывода - fasta, json (по умолчанию: fasta)
Пример:
{
"accession": "P01308",
"format": "fasta"
}5. получить_белковые_характеристики
Получите функциональные характеристики и домены для белка.
Параметры:
accession(обязательно): номер присоединения UniProt
Пример:
{
"accession": "P01308"
}Шаблоны ресурсов
Сервер обеспечивает прямой доступ к данным UniProt через шаблоны URI:
1. Информация о белках
URI :
uniprot://protein/{accession}Описание : Полная информация о белках для набора UniProt
Пример :
uniprot://protein/P01308
2. Последовательность белка
URI :
uniprot://sequence/{accession}Описание : Последовательность белка в формате FASTA
Пример :
uniprot://sequence/P01308
3. Результаты поиска
URI :
uniprot://search/{query}Описание : Результаты поиска белков, соответствующих запросу
Пример :
uniprot://search/insulin
Примеры
Базовый поиск белка
Поиск белков инсулина у людей:
// Tool call
{
"tool": "search_proteins",
"arguments": {
"query": "insulin",
"organism": "human",
"size": 10
}
}Получите подробную информацию о белке
Получите исчерпывающую информацию о человеческом инсулине:
// Tool call
{
"tool": "get_protein_info",
"arguments": {
"accession": "P01308"
}
}Поиск на основе генов
Найдите белки, связанные с геном BRCA1:
// Tool call
{
"tool": "search_by_gene",
"arguments": {
"gene": "BRCA1",
"organism": "human"
}
}Получить последовательность белка
Получите аминокислотную последовательность человеческого инсулина:
// Tool call
{
"tool": "get_protein_sequence",
"arguments": {
"accession": "P01308",
"format": "fasta"
}
}Анализ свойств белка
Получите функциональные домены и характеристики человеческого инсулина:
// Tool call
{
"tool": "get_protein_features",
"arguments": {
"accession": "P01308"
}
}API-интеграция
Этот сервер интегрируется с UniProt REST API для программного доступа к данным о белках. Для получения дополнительной информации о UniProt:
Веб-сайт UniProt : https://www.uniprot.org/
Документация API : https://www.uniprot.org/help/api
Руководство по REST API : https://www.uniprot.org/help/api\_queries
Все запросы API включают в себя:
User-Agent :
UniProt-MCP-Server/1.0.0Тайм-аут : 30 секунд
Базовый URL :
https://rest.uniprot.org(только программный доступ)
Обработка ошибок
Сервер включает в себя комплексную обработку ошибок:
Проверка входных данных : все параметры проверяются с использованием защиты типов.
Ошибки API : ошибки сети и API обнаруживаются и возвращаются с описательными сообщениями.
Обработка тайм-аута : запрашивает тайм-аут через 30 секунд
Постепенная деградация : частичные отказы обрабатываются соответствующим образом.
Разработка
Построить проект
npm run buildРежим разработки
Запустите компилятор TypeScript в режиме наблюдения:
npm run devСтруктура проекта
uniprot-server/
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript output
├── package.json # Node.js dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This fileЗависимости
@modelcontextprotocol/sdk : Core MCP SDK для реализации сервера
axios : HTTP-клиент для запросов API UniProt
typescript : Компилятор TypeScript для разработки
Лицензия
Лицензия Массачусетского технологического института
Внося вклад
Форк репозитория
Создать ветку функций
Внесите изменения
Добавьте тесты, если применимо
Отправить запрос на извлечение
Поддерживать
По вопросам и проблемам:
Проверьте документацию API UniProt
Ознакомьтесь со спецификацией протокола контекста модели.
Открыть вопрос в репозитории
О дополненной природе
Этот комплексный сервер UniProt MCP разработан компанией Augmented Nature , ведущим новатором в области решений для биоинформатики и вычислительной биологии на базе ИИ. Augmented Nature специализируется на создании передовых инструментов, которые заполняют пробел между искусственным интеллектом и биологическими исследованиями, позволяя исследователям извлекать более глубокие идеи из биологических данных.
Полный справочник инструментов
Инструменты анализа основных белков
search_proteins— поиск в базе данных UniProt по имени, ключевому слову или организмуget_protein_info- Получить подробную информацию о белке по принадлежностиsearch_by_gene- Поиск белков по названию гена или символуget_protein_sequence- Извлечение аминокислотных последовательностейget_protein_features— доступ к функциональным функциям и доменам
Инструменты сравнительного и эволюционного анализа
compare_proteins- Сравнение нескольких белков бок о бокget_protein_homologs— поиск гомологичных белков у разных видовget_protein_orthologs- Определить ортологичные белкиget_phylogenetic_info- Получить эволюционные связи
Инструменты анализа структуры и функций
get_protein_structure— доступ к информации о трехмерной структуре из PDBget_protein_domains_detailed— расширенный анализ домена (InterPro, Pfam, SMART)get_protein_variants- Варианты и мутации, связанные с заболеваниямиanalyze_sequence_composition- Анализ аминокислотного состава
Биологические контекстные инструменты
get_protein_pathways- Ассоциированные биологические пути (KEGG, Reactome)get_protein_interactions- Сети белок-белкового взаимодействияsearch_by_function— поиск по терминам GO или функциональным аннотациямsearch_by_localization- Поиск белков по субклеточной локализации
Пакетная обработка и расширенные инструменты поиска
batch_protein_lookup— эффективная обработка множественных присоединенийadvanced_search- Сложные запросы с несколькими фильтрамиsearch_by_taxonomy- Поиск по таксономической классификации
Литература и инструменты перекрестных ссылок
get_external_references— Ссылки на другие базы данных (PDB, EMBL, RefSeq и т. д.)get_literature_references- Связанные публикации и цитатыget_annotation_confidence— показатели качества аннотаций
Экспорт данных и утилиты
export_protein_data- Экспорт в специализированные форматы (GFF, GenBank, EMBL, XML)validate_accession- Проверка действительности инвентарного номераget_taxonomy_info- Подробная таксономическая информация
Журнал изменений
v1.0.0 — комплексная биоинформатическая платформа
Значительное расширение : добавлено 21 новый специализированный инструмент (всего: 26 инструментов)
Сравнительный анализ : сравнение белков, идентификация гомологов/ортологов, филогенетический анализ
Структурная биология : интеграция трехмерных структур, подробный анализ доменов, анализ вариантов
Системная биология : интеграция путей, взаимодействие белков, функциональная классификация
Расширенный поиск : пакетная обработка, сложная фильтрация, таксономический поиск
Интеграция литературы : внешние ссылки на базы данных, цитаты, достоверность аннотаций
Экспорт данных : несколько специализированных форматов (GFF, GenBank, EMBL, XML)
Расширенная поддержка Docker : многоэтапные сборки с лучшими практиками безопасности
Подробная документация : полный справочник инструментов и примеры
Разработано Augmented Nature : Профессиональная биоинформатическая платформа