MCP.science
Una colección de servidores MCP de código abierto diseñados para aplicaciones de investigación científica.
Documentación
MCP.science: Servidores MCP de Código Abierto para Investigación Científica 🔍📚
¡Únete a nosotros para acelerar el descubrimiento científico con IA y herramientas de código abierto!
Inicio Rápido
Ejecutar cualquier servidor en este repositorio es tan simple como un solo comando. Por ejemplo, para iniciar el servidor web-fetch:
uvx mcp-science web-fetch
Este comando se encarga de todo, desde la instalación hasta la ejecución. Para más detalles sobre la configuración y cómo encontrar otros servidores, consulta la sección "Cómo configurar servidores MCP para aplicaciones cliente de IA" a continuación.
Tabla de Contenidos
- Acerca de
- ¿Qué es MCP?
- Servidores disponibles en este repositorio
- Cómo integrar servidores MCP en LLM
- Cómo construir tu propio servidor MCP
- Contribuciones
- Licencia
- Agradecimientos
- Citación
Acerca de
Este repositorio contiene una colección de servidores MCP de código abierto diseñados específicamente para aplicaciones de investigación científica. Estos servidores permiten que los modelos de IA (como Claude) interactúen con datos, herramientas y recursos científicos a través de un protocolo estandarizado.
¿Qué es MCP?
MCP es un protocolo abierto que estandariza cómo las aplicaciones proporcionan contexto a los LLM. Piensa en MCP como un puerto USB-C para aplicaciones de IA. Así como USB-C proporciona una forma estandarizada de conectar tus dispositivos a varios periféricos y accesorios, MCP proporciona una forma estandarizada de conectar modelos de IA a diferentes fuentes de datos y herramientas.
MCP te ayuda a construir agentes y flujos de trabajo complejos sobre LLMs. Los LLMs frecuentemente necesitan integrarse con datos y herramientas, y MCP proporciona:
- Una lista creciente de integraciones preconstruidas a las que tu LLM puede conectarse directamente
- La flexibilidad para cambiar entre proveedores y vendedores de LLM
- Mejores prácticas para asegurar tus datos dentro de tu infraestructura
Servidores disponibles en este repositorio
A continuación se muestra una lista completa de los servidores MCP que viven en este monorepo. Cada entrada enlaza al subdirectorio que contiene el código fuente y el README del servidor para que puedas encontrar documentación e instrucciones de uso rápidamente.
Example Server
Un servidor MCP de ejemplo que demuestra las piezas mínimas requeridas para una implementación de servidor.
Materials Project
Un servidor MCP especializado que permite a los asistentes de IA buscar, visualizar y manipular datos de ciencia de materiales de la base de datos del Proyecto Materials. Se requiere una clave API del Proyecto Materials.
Python Code Execution
Ejecuta fragmentos de código Python en un entorno seguro y aislado con acceso restringido a la biblioteca estándar, para que los asistentes puedan realizar análisis y cálculos sin arriesgar tu sistema.
SSH Exec
Permite a un asistente ejecutar comandos prevalidados en máquinas remotas a través de SSH con autenticación configurable y listas blancas de comandos.
Web Fetch
Obtiene y procesa contenido HTML, PDF y texto plano de la Web para que el asistente pueda citarlo o resumirlo.
TXYZ Search
Realiza búsquedas web, académicas y de “mejor esfuerzo” a través de la API de TXYZ. Se requiere una clave API de TXYZ.
Timer
Un temporizador de cuenta regresiva mínimo que transmite actualizaciones de progreso para demostrar las notificaciones de MCP.
GPAW Computation
Proporciona cálculos de teoría funcional de la densidad (DFT) a través del paquete GPAW.
Jupyter-Act
Permite a un asistente interactuar con un kernel de Jupyter en ejecución, ejecutando celdas de cuaderno programáticamente.
Mathematica-Check
Evalúa pequeños fragmentos de código del lenguaje Wolfram a través de una instancia de Mathematica sin interfaz gráfica.
NEMAD
Servidor de panel de análisis de modelos de neurociencia que expone herramientas para inspeccionar conjuntos de datos de NEMAD.
TinyDB
Proporciona acceso CRUD a una base de datos JSON ligera respaldada por TinyDB para que un asistente pueda almacenar y recuperar pequeñas piezas de datos estructurados.
Cómo configurar servidores MCP para aplicaciones cliente de IA
Si no estás familiarizado con estas cosas, aquí tienes una guía paso a paso: Guía paso a paso para configurar servidores MCP para aplicaciones cliente de IA
Requisitos previos
-
uv — un reemplazo directo súper rápido (impulsado por Rust) para pip + virtualenv. Instálalo con:
curl -sSf https://astral.sh/uv/install.sh | bash -
Una aplicación cliente compatible con MCP, como Claude Desktop, VSCode, Goose, 5ire.
La versión corta: usa uvx
Cualquier servidor en este repositorio se puede lanzar con un solo comando de shell. El patrón es:
uvx mcp-science <server-name>
Por ejemplo, para iniciar el servidor stdio web-fetch localmente, configura el siguiente comando en tu cliente:
uvx mcp-science web-fetch
Lo que corresponde a esto en la configuración JSON de Claude Desktop:
{
"mcpServers": {
"web-fetch": {
"command": "uvx",
"args": [
"mcp-science",
"web-fetch"
]
}
}
}
El comando descargará el paquete mcp-science desde PyPI y ejecutará el punto de entrada solicitado.
Encontrar otros servidores
Echa un vistazo a la lista de Servidores disponibles: cada entrada en la tabla funciona con el patrón mostrado arriba.
Opcional: gestionar integraciones con MCPM
MCPM es una herramienta de línea de comandos conveniente que puede automatizar el proceso de conectar servidores a clientes compatibles. No es obligatoria, pero puede ser útil si cambias frecuentemente entre clientes o mantienes un gran número de servidores.
El flujo de trabajo básico es:
# Install mcpm first – it is a separate project
uv pip install mcpm
mcpm client ls # discover supported clients
mcpm client set <name> # pick the one you are using
# Add a server (automatically installing it if needed)
mcpm add web-fetch
Después de que el comando termine, reinicia tu cliente para que recargue su configuración de herramientas. Puedes explorar el Registro de MCPM para encontrar servidores adicionales mantenidos por la comunidad.
Cómo construir tu propio servidor MCP
Consulta Cómo construir tu propio servidor MCP paso a paso para más detalles.
Contribuciones
¡Damos la bienvenida con entusiasmo a las contribuciones a MCP.science! Puedes ayudar mejorando los servidores existentes, añadiendo nuevos servidores o cualquier cosa que creas que hará que este proyecto sea mejor.
Si no estás familiarizado con GitHub y cómo contribuir a un repositorio de código abierto, puede ser un poco desafiante, pero aún así es fácil para ti. Te recomendamos leer primero estos:
En resumen, puedes seguir estos pasos:
-
Haz un fork del repositorio a tu propia cuenta de GitHub
-
Clona el repositorio bifurcado a tu máquina local
-
Crea una rama de características (
git checkout -b feature/amazing-feature) -
Haz tus cambios y confírmalos (
git commit -m 'Add amazing feature')👈 Haz clic para ver más convenciones sobre directorios y nombres
Por favor, crea tu nuevo servidor en la carpeta
servers. Para crear una nueva carpeta de servidor dentro de la carpeta del repositorio, simplemente ejecuta (reemplazayour-new-servercon el nombre de tu servidor)uv init --package --no-workspace servers/your-new-server uv add --directory servers/your-new-server mcpEsto creará una nueva carpeta de servidor con los archivos necesarios:
servers/your-new-server/ ├── README.md ├── pyproject.toml └── src └── your_new_server └── __init__.pyPuede que encuentres 2 nombres relacionados que podrías ver en los archivos de configuración:
- Nombre del proyecto (con guiones): La carpeta, el nombre del proyecto y el nombre del script en
pyproject.toml, por ejemplo,your-new-server. - Nombre del paquete de Python (snake_case): La carpeta dentro de
src/, por ejemplo,your_new_server.
- Nombre del proyecto (con guiones): La carpeta, el nombre del proyecto y el nombre del script en
-
Haz push a la rama (
git push origin feature/amazing-feature) -
Abre una solicitud de extracción
Asegúrate de que tu PR cumpla con:
- Mensajes de commit claros
- Actualizaciones de documentación adecuadas
- Cobertura de pruebas para nuevas características
Reconocimiento de contribuyentes en subrepositorios
Si quieres reconocer a los contribuyentes de un servidor/subrepositorio específico (por ejemplo, servers/gpaw-computation/), puedes usar la CLI de All Contributors en ese subdirectorio.
Pasos:
- En tu subrepositorio (por ejemplo,
servers/gpaw-computation/), crea un archivo.all-contributorsrc(consulta el ejemplo). - Añade contribuyentes usando la CLI:
npx all-contributors add <github-username> <contribution-type> - Genera o actualiza la sección de contribuyentes en el
README.mddel subrepositorio:npx all-contributors generate - Confirma los cambios en el
README.mdy.all-contributorsrcdel subrepositorio.
Para más detalles, consulta la guía de instalación de la CLI de All Contributors.
Licencia
Este proyecto está licenciado bajo la Licencia MIT: consulta el archivo LICENSE para más detalles.
Agradecimientos
¡Gracias a todos los contribuyentes!
Citación
Para uso general, cita este repositorio como se describe en el archivo CITATION.cff de la raíz.
Si usas un servidor/subproyecto específico, consulta el archivo CITATION.cff correspondiente en la carpeta de ese subproyecto bajo servers/ para la citación adecuada.