MCP Science

MCP MCP Servers Open Source v0.2.0 · 01.07.2025 >1 года

Коллекция MCP-серверов для научных исследований: arXiv, PubMed, ChemRxiv, RCSB PDB (белковые структуры), базы данных частиц. AI-агент ищет и анализирует научные статьи, структуры молекул и экспериментальные данные.

v0.2.0
01.07.2025 current
v0.1.0
01.03.2025
Добавлен 06.07.2026 · Обновлён 06.07.2026 · MCP Servers
Установка
# Установка через pip/uvx (все серверы в одном пакете):
pip install mcp-science

# Отдельные серверы (пример — arXiv):
# Claude Desktop — claude_desktop_config.json:
{ "mcpServers": {
    "arxiv": { "command": "uvx", "args": ["mcp-science", "arxiv"] },
    "pubmed": { "command": "uvx", "args": ["mcp-science", "pubmed"] },
    "pdb":    { "command": "uvx", "args": ["mcp-science", "pdb"] }
} }

# Claude Code (CLI):
claude mcp add arxiv -- uvx mcp-science arxiv
claude mcp add pubmed -- uvx mcp-science pubmed

# OpenCode — ~/.config/opencode/opencode.json:
{ "mcp": {
    "arxiv":  { "type": "local", "command": ["uvx", "mcp-science", "arxiv"] },
    "pubmed": { "type": "local", "command": ["uvx", "mcp-science", "pubmed"] }
} }
переведено ИИ

MCP.science: Открытые MCP-серверы для научных исследований 🔍📚

License: MIT

Присоединяйтесь к нам в ускорении научных открытий с помощью ИИ и инструментов с открытым исходным кодом!

Быстрый старт

Запуск любого сервера из этого репозитория сводится к одной команде. Например, чтобы запустить сервер web-fetch:

uvx mcp-science web-fetch

Эта команда берёт на себя всё — от установки до выполнения. Подробнее о конфигурации и поиске других серверов см. в разделе «Как настроить MCP-серверы для клиентских приложений ИИ» ниже.

Содержание

О проекте

Этот репозиторий содержит коллекцию открытых MCP-серверов, специально разработанных для приложений научных исследований. Эти серверы позволяют моделям ИИ (таким как Claude) взаимодействовать с научными данными, инструментами и ресурсами через стандартизированный протокол.

Что такое MCP?

MCP — это открытый протокол, стандартизирующий способ предоставления контекста приложениями для LLM. Представьте MCP как порт USB-C для ИИ-приложений. Точно так же, как USB-C предоставляет стандартизированный способ подключения ваших устройств к различным периферийным устройствам и аксессуарам, MCP предоставляет стандартизированный способ подключения моделей ИИ к различным источникам данных и инструментам.

MCP помогает вам создавать агенты и сложные рабочие процессы на основе LLM. LLM часто нужно интегрироваться с данными и инструментами, и MCP предоставляет:

  • Расширяющийся список готовых интеграций, которые ваша LLM может напрямую использовать
  • Гибкость в переключении между поставщиками и вендорами LLM
  • Лучшие практики по обеспечению безопасности ваших данных в рамках вашей инфраструктуры

Источник: https://modelcontextprotocol.io/introduction

Доступные серверы в этом репозитории

Ниже приведён полный список MCP-серверов, представленных в этом монорепозитории. Каждая запись ссылается на подкаталог, содержащий исходный код сервера и README, чтобы вы могли быстро найти документацию и инструкции по использованию.

Пример сервера

Пример MCP-сервера, демонстрирующий минимальный набор компонентов, необходимых для реализации сервера.

Materials Project

Специализированный MCP-сервер, позволяющий ИИ-ассистентам искать, визуализировать и обрабатывать данные по материаловедению из базы данных Materials Project. Требуется ключ API Materials Project.

Выполнение Python-кода

Запускает фрагменты Python-кода в безопасной, изолированной среде с ограниченным доступом к стандартной библиотеке, чтобы ассистенты могли выполнять анализ и вычисления без риска для вашей системы.

SSH Exec

Позволяет ассистенту выполнять предварительно проверенные команды на удалённых компьютерах по SSH с настраиваемой аутентификацией и списками разрешённых команд.

Web Fetch

Загружает и обрабатывает HTML, PDF и текстовое содержимое из Интернета, чтобы ассистент мог цитировать или резюмировать его.

TXYZ Search

Выполняет поиск в Интернете, академический и «максимально полный» поиск через API TXYZ. Требуется ключ API TXYZ.

Таймер

Минимальный таймер обратного отсчёта, передающий обновления прогресса в потоковом режиме для демонстрации уведомлений MCP.

GPAW Computation

Предоставляет расчёты методом функционала плотности (DFT) через пакет GPAW.

Jupyter-Act

Позволяет ассистенту взаимодействовать с запущенным ядром Jupyter, программно выполняя ячейки ноутбука.

Mathematica-Check

Выполняет небольшие фрагменты кода на языке Wolfram Language через фоновый экземпляр Mathematica.

NEMAD

Сервер «Панель анализа нейронаучных моделей», предоставляющий инструменты для изучения наборов данных NEMAD.

TinyDB

Предоставляет CRUD-доступ к лёгкой JSON-базе данных на основе TinyDB, чтобы ассистент мог сохранять и извлекать небольшие фрагменты структурированных данных.

Как настроить MCP-серверы для клиентских приложений ИИ

Если вы не знакомы с этой темой, вот пошаговое руководство: Пошаговое руководство по настройке MCP-серверов для клиентских приложений ИИ

Предварительные требования

  1. uv — сверхбыстрая (на базе Rust) замена для pip + virtualenv. Установите его с помощью:

bash curl -sSf https://astral.sh/uv/install.sh | bash

  1. Клиентское приложение с поддержкой MCP, например: Claude Desktop, VSCode, Goose, 5ire.

Краткая версия — используйте uvx

Любой сервер из этого репозитория можно запустить одной командой оболочки. Шаблон:

uvx mcp-science <server-name>

Например, чтобы запустить сервер web-fetch в локальном режиме, настройте следующую команду в вашем клиенте:

uvx mcp-science web-fetch

Что соответствует следующему в JSON-конфигурации Claude Desktop:

{
  "mcpServers": {
    "web-fetch": {
      "command": "uvx",
      "args": [
        "mcp-science",
        "web-fetch"
      ]
    }
  }
}

Команда загрузит пакет mcp-science из PyPI и запустит запрошенную точку входа.

Поиск других серверов

Ознакомьтесь со списком Доступные серверы — каждая запись в таблице работает по схеме, показанной выше.


Дополнительно: управление интеграциями с помощью MCPM

MCPM — это удобный инструмент командной строки, который может автоматизировать процесс подключения серверов к поддерживаемым клиентам. Он не является обязательным, но может быть полезен, если вы часто переключаетесь между клиентами или поддерживаете большое количество серверов.

Основной рабочий процесс:

# Сначала установите mcpm — это отдельный проект
uv pip install mcpm

mcpm client ls           # обнаружить поддерживаемые клиенты
mcpm client set <name>   # выбрать тот, которым вы пользуетесь

# Добавить сервер (при необходимости автоматически устанавливается)
mcpm add web-fetch

После завершения команды перезапустите клиент, чтобы он перезагрузил конфигурацию инструментов. Вы можете просматривать Реестр MCPM для поиска дополнительных серверов, поддерживаемых сообществом.

Как создать свой собственный MCP-сервер

Пожалуйста, ознакомьтесь с руководством Как создать свой собственный MCP-сервер пошагово для получения подробной информации.

Участие в разработке

Мы с радостью приветствуем вклад в проект MCP.science! Вы можете помочь в улучшении существующих серверов, добавлении новых серверов или в любом другом деле, которое, по вашему мнению, сделает этот проект лучше.

Если вы не знакомы с GitHub и процедурой участия в разработке open source проекта, то для вас это может быть несколько сложно, но всё же это поддаётся освоению. Мы рекомендуем вам сначала ознакомиться с этими материалами:

Вкратце, вы можете выполнить следующие шаги:

  1. Сделайте форк репозитория в вашем личном аккаунте на GitHub
  2. Клонируйте форкнутый репозиторий на ваш локальный компьютер
  3. Создайте ветку для разработки новой функции (git checkout -b feature/amazing-feature)
  4. Внесите ваши изменения и сделайте коммит (git commit -m 'Add amazing feature')

👈 Нажмите, чтобы увидеть больше соглашений о директориях и именовании

Пожалуйста, создавайте ваш новый сервер в папке servers. Чтобы создать новую папку сервера в директории репозитория, вы можете просто выполнить (замените your-new-server на имя вашего сервера)

sh uv init --package --no-workspace servers/your-new-server uv add --directory servers/your-new-server mcp

Это создаст новую папку сервера с необходимыми файлами:

bash servers/your-new-server/ ├── README.md ├── pyproject.toml └── src └── your_new_server └── __init__.py

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

  1. Имя проекта (с дефисом): Папка, имя проекта и имя скрипта в pyproject.toml, например your-new-server.
  2. Имя Python-пакета (snake_case): Папка внутри src/, например your_new_server.

  3. Отправьте изменения в ветку (git push origin feature/amazing-feature)

  4. Откройте Pull Request

Пожалуйста, убедитесь, что ваш PR соответствует следующим требованиям:

  • Понятные сообщения коммитов
  • Корректное обновление документации
  • Тестовое покрытие для новых возможностей

Признание контрибьюторов в подпроектах

Если вы хотите отметить контрибьюторов для определённого сервера/подпроекта (например, servers/gpaw-computation/), вы можете использовать All Contributors CLI в этой поддиректории.

Шаги:

  1. В вашем подпроекте (например, servers/gpaw-computation/) создайте файл .all-contributorsrc (см. пример).
  2. Добавляйте контрибьюторов с помощью CLI: bash npx all-contributors add <github-username> <contribution-type>
  3. Сгенерируйте или обновите секцию контрибьюторов в файле README.md подпроекта: bash npx all-contributors generate
  4. Закоммитьте изменения в файлы README.md и .all-contributorsrc вашего подпроекта.

Для получения дополнительной информации ознакомьтесь с руководством по установке All Contributors CLI.

Лицензия

Этот проект лицензирован в соответствии с лицензией MIT — подробности см. в файле LICENSE.

Благодарности

Спасибо всем контрибьюторам!

Цитирование

Для общего использования, пожалуйста, цитируйте этот репозиторий, как описано в корневом файле CITATION.cff.

Если вы используете конкретный сервер/подпроект, пожалуйста, обратитесь к соответствующему файлу CITATION.cff в папке этого подпроекта в директории servers/ для правильного цитирования.

Комментарии
Войдите, чтобы оставить комментарий