Habilidades MCP Best Practices
📦

MCP Best Practices

Seguro ⚡ Contiene scripts⚙️ Comandos externos🌐 Acceso a red🔑 Variables de entorno

Crear servidores MCP listos para producción

Construir servidores MCP para producción requiere una atención cuidadosa a la arquitectura, la seguridad y el rendimiento. Esta habilidad ofrece orientación experta sobre patrones probados para crear implementaciones de servidores MCP mantenibles y seguras.

Soporta: Claude Codex Code(CC)
⚠️ 67 Deficiente
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "MCP Best Practices". What error types should I define for my MCP server?

Resultado esperado:

  • Un servidor MCP listo para producción debe definir un enum de errores integral que cubra todos los escenarios de fallo.
  • Las categorías clave de error incluyen:
  • - NotFound: Resource does not exist
  • - InvalidInput: User provided invalid data
  • - PermissionDenied: User lacks required permissions
  • - RateLimitExceeded: Client exceeded rate limits
  • - ExternalServiceError: Dependency service failed
  • - DatabaseError: Database operation failed
  • - Internal: Unexpected internal error
  • Cada error debe implementar el trait Error estándar, proporcionar mensajes fáciles de usar e incluir información de reintento.

Usando "MCP Best Practices". How do I prevent SQL injection in my MCP server?

Resultado esperado:

  • Usa siempre consultas parametrizadas en lugar de concatenación de cadenas.
  • Buen patrón (Rust con sqlx):
  • ```rust
  • sqlx::query_as!(User, "SELECT * FROM users WHERE id = $1", id)
  • .fetch_optional(&self.pool)
  • .await
  • ```
  • Mal patrón (vulnerable):
  • ```rust
  • let query = format!("SELECT * FROM users WHERE id = '{}'", id);
  • ```
  • El enfoque parametrizado garantiza que la entrada del usuario nunca se interprete como código SQL.

Auditoría de seguridad

Seguro
v1 • 1/23/2026

Documentation-only skill containing Rust code examples for MCP server best practices. Static scanner flagged pattern-based false positives triggered by code block syntax and legitimate security-related keywords. All findings evaluated as false positives - this is educational content, not executable code with security implications.

1
Archivos escaneados
722
Líneas analizadas
4
hallazgos
1
Auditorías totales
Auditado por: claude

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
87
Contenido
31
Comunidad
100
Seguridad
57
Cumplimiento de la especificación

Lo que puedes crear

Diseñar nueva arquitectura de servidor MCP

Los arquitectos que diseñan un nuevo servidor MCP pueden usar esta habilidad para seleccionar patrones apropiados, comprender las compensaciones entre enfoques en capas y hexagonales, y establecer una estructura de organización de código mantenible.

Revisar la postura de seguridad del servidor MCP

Los ingenieros de seguridad pueden usar esta habilidad para evaluar implementaciones existentes de servidores MCP frente a patrones de seguridad establecidos, identificar brechas en autenticación, autorización y validación de entradas.

Optimizar el rendimiento del servidor MCP

Los desarrolladores backend pueden usar esta habilidad para identificar cuellos de botella de rendimiento en sus implementaciones de servidores MCP, aplicar pooling de conexiones, estrategias de caché y mejores prácticas async para mejorar el rendimiento.

Prueba estos prompts

Introducción a la arquitectura
I am building an MCP server in Rust. What are the recommended architecture patterns for organizing the codebase? Should I use a layered architecture or hexagonal architecture? What are the trade-offs between these approaches?
Implementación de autenticación
How should I implement authentication and authorization in my MCP server? What are the best practices for handling auth tokens, validating permissions, and protecting sensitive endpoints? Show me example code patterns.
Diseño de manejo de errores
What error handling patterns do you recommend for production MCP servers? How should I structure error types, handle different error categories, and provide meaningful error messages to clients?
Optimización de rendimiento
What performance optimizations should I implement in my MCP server? Include guidance on database connection pooling, caching strategies, async operation patterns, and handling external service calls efficiently.

Mejores prácticas

  • Usa consultas parametrizadas para todas las operaciones de base de datos para prevenir ataques de inyección SQL
  • Implementa validación integral de entradas en los límites del servicio usando bibliotecas de validación
  • Diseña tipos de error que proporcionen información accionable evitando la filtración de información en producción
  • Aplica pooling de conexiones para conexiones de base de datos e implementa caché para datos de acceso frecuente

Evitar

  • Evita la concatenación de cadenas para construir consultas SQL; usa siempre consultas parametrizadas
  • No expongas detalles internos de errores a los clientes en producción; registra internamente pero devuelve errores genéricos
  • Evita bloquear operaciones async con llamadas síncronas; usa patrones async adecuados en todo momento
  • No omitas comprobaciones de autenticación o autorización en ningún endpoint; aplica seguridad consistente en todas las operaciones

Preguntas frecuentes

¿Qué patrón de arquitectura debería usar para mi servidor MCP?
Para la mayoría de los servidores MCP, la arquitectura hexagonal (puertos y adaptadores) ofrece la mejor flexibilidad. Separa la lógica de negocio central de las dependencias externas, lo que facilita probar y cambiar implementaciones. La arquitectura en capas funciona para aplicaciones más simples con menos integraciones externas.
¿Cómo debería manejar la autenticación en mi servidor MCP?
Usa tokens JWT con la validación adecuada. Decodifica los tokens usando una clave secreta, valida la expiración y verifica los roles de usuario para la autorización. Implementa un objeto de contexto que envuelva las reclamaciones del token y proporcione métodos auxiliares para comprobaciones de permisos.
¿Qué estrategias de prueba funcionan mejor para servidores MCP?
Usa pruebas unitarias con dependencias simuladas (como mockall en Rust) para probar la lógica de negocio en aislamiento. Usa pruebas de integración con contenedores de prueba para probar interacciones con la base de datos. Apunta a pruebas unitarias rápidas para desarrollo y pruebas de integración más lentas para rutas críticas.
¿Cómo implemento un manejo de errores adecuado?
Define un enum que cubra todos los casos de error, implementa el trait Error con Display para mensajes al usuario, agrega códigos de error para categorización e incluye un método para determinar si un error es reintentable para patrones de resiliencia.
¿Qué optimizaciones de rendimiento debería priorizar?
Comienza con pooling de conexiones para bases de datos, implementa caché para datos de acceso frecuente, usa operaciones concurrentes con try_join_all para obtenciones por lotes y agrega timeouts para todas las llamadas a servicios externos para prevenir agotamiento de recursos.
¿Cómo hago que mi servidor MCP sea observable?
Usa logging estructurado con información contextual (como IDs de usuario en campos de log), implementa métricas con contadores e histogramas para el seguimiento de solicitudes y agrega spans de tracing para el perfilado de rendimiento en entornos de producción.

Detalles del desarrollador

Estructura de archivos

📄 SKILL.md