remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Servidor MCP de UniProt
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a la información de las proteínas de UniProt. Este servidor permite a los asistentes de IA obtener información sobre la función y la secuencia de las proteínas directamente de UniProt.
Características
- Obtenga información sobre proteínas por número de acceso de UniProt
- Recuperación por lotes de múltiples proteínas
- Almacenamiento en caché para un mejor rendimiento (TTL de 24 horas)
- Manejo y registro de errores
- La información incluye:
- Nombre de la proteína
- Descripción de la función
- Secuencia completa
- Longitud de la secuencia
- Organismo
Inicio rápido
- Asegúrese de tener instalado Python 3.10 o superior
- Clonar este repositorio:Copy
- Instalar dependencias:Copy
Configuración
Agregue a su archivo de configuración de Claude Desktop:
- Ventanas:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
Ejemplos de uso
Después de configurar el servidor en Claude Desktop, puede hacer preguntas como:
Para consultas por lotes:
Referencia de API
Herramientas
get_protein_info
- Obtener información para una sola proteína
- Parámetro obligatorio:
accession
(número de acceso de UniProt) - Ejemplo de respuesta:Copy
get_batch_protein_info
- Obtenga información para múltiples proteínas
- Parámetro obligatorio:
accessions
(matriz de números de acceso de UniProt) - Devuelve una matriz de objetos de información de proteínas.
Desarrollo
Configuración del entorno de desarrollo
- Clonar el repositorio
- Crear un entorno virtual:Copy
- Instalar dependencias de desarrollo:Copy
Ejecución de pruebas
Estilo de código
Este proyecto utiliza:
- Negro para formato de código
- isort para la clasificación de importaciones
- flake8 para quitar pelusa
- mypy para verificación de tipos
- bandido para controles de seguridad
- seguridad para comprobaciones de vulnerabilidad de dependencia
Ejecutar todas las comprobaciones:
Detalles técnicos
- Construido con el SDK de Python de MCP
- Utiliza httpx para solicitudes HTTP asíncronas
- Implementa almacenamiento en caché con TTL de 24 horas utilizando un caché basado en OrderedDict
- Maneja la limitación de velocidad y los reintentos
- Proporciona mensajes de error detallados
Manejo de errores
El servidor gestiona varios escenarios de error:
- Números de acceso no válidos (404 respuestas)
- Problemas de conexión de API (errores de red)
- Limitación de velocidad (429 respuestas)
- Respuestas mal formadas (errores de análisis de JSON)
- Gestión de caché (TTL y límites de tamaño)
Contribuyendo
¡Agradecemos tus contribuciones! No dudes en enviar una solicitud de incorporación de cambios. Así es como puedes contribuir:
- Bifurcar el repositorio
- Crea tu rama de funciones (
git checkout -b feature/amazing-feature
) - Confirme sus cambios (
git commit -m 'Add some amazing feature'
) - Empujar a la rama (
git push origin feature/amazing-feature
) - Abrir una solicitud de extracción
Asegúrese de actualizar las pruebas según corresponda y respetar el estilo de codificación existente.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
Expresiones de gratitud
- UniProt por proporcionar la API de datos de proteínas
- Antrópico para la especificación del Protocolo de Contexto del Modelo
- Colaboradores que ayudan a mejorar este proyecto
You must be authenticated.
Permite que los asistentes de IA accedan a la información de proteínas directamente desde UniProt, lo que permite la recuperación de nombres de proteínas, funciones, secuencias y datos de organismos por número de acceso.
- Features
- Quick Start
- Configuration
- Usage Examples
- API Reference
- Development
- Technical Details
- Contributing
- License
- Acknowledgments