Unofficial ChEMBL MCP Server
Accede a la base de datos química ChEMBL para descubrimiento de fármacos, informática química e investigación de bioactividad mediante herramientas especializadas a través de su API REST.
Documentación

No oficial Servidor MCP de ChEMBL
Un servidor integral del Protocolo de Contexto de Modelos (MCP) que proporciona acceso avanzado a la base de datos química ChEMBL. Este servidor ofrece 22 herramientas especializadas que permiten a los asistentes de IA y clientes MCP realizar investigaciones sofisticadas de descubrimiento de fármacos, análisis de informática química e investigaciones de bioactividad directamente a través de la API REST de ChEMBL.
Desarrollado por Augmented Nature
Características
Búsqueda y recuperación química principal (5 herramientas)
- Búsqueda de compuestos: Busca en la base de datos ChEMBL por nombre de compuesto, sinónimo o identificador
- Información detallada del compuesto: Recupera información completa del compuesto, incluyendo estructura, propiedades y anotaciones
- Búsqueda basada en InChI: Encuentra compuestos por clave InChI o cadena InChI
- Recuperación de estructura: Obtén información de estructura química en varios formatos (SMILES, InChI, MOL, SDF)
- Búsqueda de similitud: Encuentra compuestos químicamente similares usando similitud de Tanimoto
Análisis de objetivos y descubrimiento de fármacos (5 herramientas)
- Búsqueda de objetivos: Busca objetivos biológicos por nombre o tipo
- Información detallada del objetivo: Recupera información completa del objetivo y anotaciones
- Compuestos del objetivo: Obtén compuestos probados contra objetivos específicos
- Integración UniProt: Encuentra objetivos ChEMBL por números de acceso UniProt
- Vías del objetivo: Vías biológicas y mecanismos asociados
Datos de bioactividad y ensayos (5 herramientas)
- Búsqueda de actividad: Busca mediciones de bioactividad y resultados de ensayos
- Información detallada del ensayo: Obtén protocolos y condiciones completos de ensayos
- Búsqueda por tipo de actividad: Encuentra datos de bioactividad por tipo de actividad específico y rango de valores
- Análisis de respuesta a la dosis: Obtén datos de respuesta a la dosis y perfiles de actividad
- Comparación de actividad: Compara datos de bioactividad entre múltiples compuestos u objetivos
Datos de desarrollo de fármacos y clínicos (4 herramientas)
- Búsqueda de fármacos: Busca fármacos aprobados y candidatos clínicos
- Estado de desarrollo del fármaco: Obtén información sobre el estado de desarrollo del fármaco y ensayos clínicos
- Indicaciones terapéuticas: Busca indicaciones terapéuticas y áreas de enfermedad
- Mecanismo de acción: Obtén datos del mecanismo de acción e interacción con objetivos
Análisis de propiedades químicas (4 herramientas)
- Análisis ADMET: Analiza propiedades ADMET (Absorción, Distribución, Metabolismo, Excreción, Toxicidad)
- Descriptores moleculares: Calcula descriptores moleculares y propiedades fisicoquímicas
- Predicción de solubilidad: Predice propiedades de solubilidad acuosa y permeabilidad
- Evaluación de similitud con fármacos: Evalúa la similitud con fármacos usando la Regla de los Cinco de Lipinski y otras métricas
Búsqueda avanzada y referencias cruzadas (4 herramientas)
- Búsqueda de subestructuras: Encuentra compuestos que contienen subestructuras específicas
- Procesamiento por lotes: Procesa múltiples ID de ChEMBL de manera eficiente
- Referencias externas: Obtén enlaces a bases de datos externas (PubChem, DrugBank, PDB, etc.)
- Búsqueda avanzada: Consultas complejas con múltiples filtros químicos y biológicos
Plantillas de recursos
- Acceso directo a datos de ChEMBL mediante plantillas URI para una integración sin problemas
Instalación
Requisitos previos
- Node.js (v16 o superior)
- npm o yarn
Configuración
- Clona el repositorio:
git clone <repository-url>
cd chembl-server
- Instala las dependencias:
npm install
- Compila el proyecto:
npm run build
Docker
Construcción de la imagen Docker
Construye la imagen Docker:
docker build -t chembl-mcp-server .
Ejecución con Docker
Ejecuta el contenedor:
docker run -i chembl-mcp-server
Para la integración con clientes MCP, puedes usar el contenedor directamente:
{
"mcpServers": {
"chembl": {
"command": "docker",
"args": ["run", "-i", "chembl-mcp-server"],
"env": {}
}
}
}
Uso
Como servidor MCP
El servidor está diseñado para ejecutarse como un servidor MCP que se comunica a través de stdio:
npm start
Añadir a la configuración del cliente MCP
Añade el servidor a la configuración de tu cliente MCP (por ejemplo, Claude Desktop):
{
"mcpServers": {
"chembl": {
"command": "node",
"args": ["/path/to/chembl-server/build/index.js"],
"env": {}
}
}
}
Herramientas disponibles
1. search_compounds
Busca en la base de datos ChEMBL compuestos por nombre, sinónimo o identificador.
Parámetros:
query(obligatorio): Consulta de búsqueda (nombre de compuesto, sinónimo o identificador)limit(opcional): Número de resultados a devolver (1-1000, predeterminado: 25)offset(opcional): Número de resultados a omitir (predeterminado: 0)
Ejemplo:
{
"query": "aspirin",
"limit": 10
}
2. get_compound_info
Obtén información detallada de un compuesto específico por ID de ChEMBL.
Parámetros:
chembl_id(obligatorio): ID de compuesto ChEMBL (por ejemplo, CHEMBL25)
Ejemplo:
{
"chembl_id": "CHEMBL25"
}
3. search_targets
Busca objetivos biológicos por nombre o tipo.
Parámetros:
query(obligatorio): Nombre del objetivo o consulta de búsquedatarget_type(opcional): Filtro de tipo de objetivo (por ejemplo, PROTEÍNA ÚNICA, COMPLEJO PROTEICO)organism(opcional): Filtro de organismolimit(opcional): Número de resultados a devolver (1-1000, predeterminado: 25)
Ejemplo:
{
"query": "dopamine receptor",
"organism": "Homo sapiens",
"limit": 5
}
4. search_activities
Busca mediciones de bioactividad y resultados de ensayos.
Parámetros:
target_chembl_id(opcional): Filtro de ID de objetivo ChEMBLassay_chembl_id(opcional): Filtro de ID de ensayo ChEMBLmolecule_chembl_id(opcional): Filtro de ID de compuesto ChEMBLactivity_type(opcional): Tipo de actividad (por ejemplo, IC50, Ki, EC50)limit(opcional): Número de resultados a devolver (1-1000, predeterminado: 25)
Ejemplo:
{
"target_chembl_id": "CHEMBL2095173",
"activity_type": "IC50",
"limit": 50
}
5. batch_compound_lookup
Procesa múltiples ID de ChEMBL de manera eficiente.
Parámetros:
chembl_ids(obligatorio): Matriz de ID de compuestos ChEMBL (1-50)
Ejemplo:
{
"chembl_ids": ["CHEMBL25", "CHEMBL59", "CHEMBL1642"]
}
Plantillas de recursos
El servidor proporciona acceso directo a datos de ChEMBL a través de plantillas URI:
1. Información del compuesto
- URI:
chembl://compound/{chembl_id} - Descripción: Información completa del compuesto para un ID de ChEMBL
- Ejemplo:
chembl://compound/CHEMBL25
2. Información del objetivo
- URI:
chembl://target/{chembl_id} - Descripción: Información completa del objetivo para un ID de objetivo ChEMBL
- Ejemplo:
chembl://target/CHEMBL2095173
3. Información del ensayo
- URI:
chembl://assay/{chembl_id} - Descripción: Información completa del ensayo para un ID de ensayo ChEMBL
- Ejemplo:
chembl://assay/CHEMBL1217643
4. Información de actividad
- URI:
chembl://activity/{activity_id} - Descripción: Datos de medición de bioactividad para un ID de actividad
- Ejemplo:
chembl://activity/12345678
5. Resultados de búsqueda
- URI:
chembl://search/{query} - Descripción: Resultados de búsqueda de compuestos que coinciden con la consulta
- Ejemplo:
chembl://search/aspirin
Ejemplos
Búsqueda básica de compuestos
Busca compuestos relacionados con la aspirina:
// Tool call
{
"tool": "search_compounds",
"arguments": {
"query": "aspirin",
"limit": 5
}
}
Obtén información detallada del compuesto
Recupera información completa sobre la aspirina:
// Tool call
{
"tool": "get_compound_info",
"arguments": {
"chembl_id": "CHEMBL25"
}
}
Búsqueda basada en objetivos
Encuentra compuestos probados contra receptores de dopamina:
// Tool call
{
"tool": "search_targets",
"arguments": {
"query": "dopamine receptor D2",
"organism": "Homo sapiens"
}
}
Análisis de bioactividad
Busca datos de IC50 contra un objetivo específico:
// Tool call
{
"tool": "search_activities",
"arguments": {
"target_chembl_id": "CHEMBL2095173",
"activity_type": "IC50",
"limit": 100
}
}
Procesamiento por lotes
Procesa múltiples compuestos de manera eficiente:
// Tool call
{
"tool": "batch_compound_lookup",
"arguments": {
"chembl_ids": ["CHEMBL25", "CHEMBL59", "CHEMBL1642", "CHEMBL1201585"]
}
}
Integración de API
Este servidor se integra con la API REST de ChEMBL para acceso programático a datos químicos. Para más información sobre ChEMBL:
- Sitio web de ChEMBL: https://www.ebi.ac.uk/chembl/
- Documentación de la API: https://chembl.gitbook.io/chembl-interface-documentation/web-services
- Guía de la API REST: https://www.ebi.ac.uk/chembl/api/data/docs
Todas las solicitudes de API incluyen:
- User-Agent:
ChEMBL-MCP-Server/1.0.0 - Tiempo de espera: 30 segundos
- URL base:
https://www.ebi.ac.uk/chembl/api/data
Manejo de errores
El servidor incluye manejo integral de errores:
- Validación de entrada: Todos los parámetros se validan mediante guardas de tipo
- Errores de API: Los errores de red y API se capturan y devuelven con mensajes descriptivos
- Manejo de tiempo de espera: Las solicitudes expiran después de 30 segundos
- Degradación elegante: Los fallos parciales se manejan adecuadamente
Desarrollo
Compila el proyecto
npm run build
Modo de desarrollo
Ejecuta el compilador de TypeScript en modo de observación:
npm run dev
Estructura del proyecto
chembl-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
Dependencias
- @modelcontextprotocol/sdk: SDK principal de MCP para la implementación del servidor
- axios: Cliente HTTP para solicitudes a la API de ChEMBL
- typescript: Compilador de TypeScript para desarrollo
Licencia
Licencia MIT
Contribuciones
- Haz un fork del repositorio
- Crea una rama de características
- Realiza tus cambios
- Añade pruebas si corresponde
- Envía una solicitud de extracción
Soporte
Para problemas y preguntas:
- Consulta la documentación de la API de ChEMBL
- Revisa la especificación del Protocolo de Contexto de Modelos
- Abre un problema en el repositorio
Acerca de Augmented Nature
Este servidor integral de ChEMBL MCP es desarrollado por Augmented Nature, un innovador líder en soluciones de bioinformática y química computacional impulsadas por IA. Augmented Nature se especializa en crear herramientas avanzadas que cierran la brecha entre la inteligencia artificial y la investigación química, permitiendo a los investigadores desbloquear conocimientos más profundos a partir de datos químicos y biológicos.
Referencia completa de herramientas
Herramientas principales de búsqueda y recuperación química
search_compounds- Busca en la base de datos ChEMBL por nombre, sinónimo o identificadorget_compound_info- Obtén información detallada del compuesto por ID de ChEMBLsearch_by_inchi- Encuentra compuestos por clave InChI o cadena InChIget_compound_structure- Recupera estructuras químicas en varios formatossearch_similar_compounds- Encuentra compuestos químicamente similares usando similitud de Tanimoto
Herramientas de análisis de objetivos y descubrimiento de fármacos
search_targets- Busca objetivos biológicos por nombre o tipoget_target_info- Obtén información detallada del objetivo por ID de objetivo ChEMBLget_target_compounds- Obtén compuestos probados contra objetivos específicossearch_by_uniprot- Encuentra objetivos ChEMBL por acceso UniProtget_target_pathways- Obtén vías biológicas asociadas con objetivos
Herramientas de datos de bioactividad y ensayos
search_activities- Busca mediciones de bioactividad y resultados de ensayosget_assay_info- Obtén información detallada del ensayo por ID de ensayo ChEMBLsearch_by_activity_type- Encuentra datos de bioactividad por tipo de actividad y rango de valoresget_dose_response- Obtén datos de respuesta a la dosis y perfiles de actividadcompare_activities- Compara datos de bioactividad entre múltiples compuestos
Herramientas de desarrollo de fármacos y datos clínicos
search_drugs- Busca fármacos aprobados y candidatos clínicosget_drug_info- Obtén información sobre el estado de desarrollo del fármaco y ensayos clínicossearch_drug_indications- Busca indicaciones terapéuticas y áreas de enfermedadget_mechanism_of_action- Obtén datos del mecanismo de acción e interacción con objetivos
Herramientas de análisis de propiedades químicas
analyze_admet_properties- Analiza propiedades ADMETcalculate_descriptors- Calcula descriptores moleculares y propiedades fisicoquímicaspredict_solubility- Predice propiedades de solubilidad acuosa y permeabilidadassess_drug_likeness- Evalúa la similitud con fármacos usando la Regla de los Cinco de Lipinski
Herramientas de búsqueda avanzada y referencias cruzadas
substructure_search- Encuentra compuestos que contienen subestructuras específicasbatch_compound_lookup- Procesa múltiples ID de ChEMBL de manera eficienteget_external_references- Obtén enlaces a bases de datos externasadvanced_search- Consultas complejas con múltiples filtros químicos y biológicos
Registro de cambios
v1.0.0 - Lanzamiento inicial
- Inteligencia química integral: 27 herramientas especializadas para el descubrimiento de fármacos
- Funcionalidad principal: Búsqueda de compuestos, análisis de objetivos, datos de bioactividad
- Características avanzadas: Búsqueda de similitud, procesamiento por lotes, referencias cruzadas
- Plantillas de recursos: Acceso directo basado en URI a datos de ChEMBL
- Soporte Docker: Implementación en contenedores con mejores prácticas de seguridad
- Documentación profesional: Referencia completa de herramientas y ejemplos
- Desarrollado por Augmented Nature: Plataforma profesional de informática química
Cita
Si usas este proyecto en tu investigación o publicaciones, cítalo de la siguiente manera:
author = {Moudather Chelbi},
title = {Servidor MCP de ChEMBL},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/ChEMBL-MCP-Server},
note = {Accedido: 2025-06-29}