C++ Core Guidelines
Aplica un estilo C++ consistente y las mejores prácticas en tu base de código. Analiza convenciones de nomenclatura, seguridad de memoria y corrección de const, y obtén sugerencias de modernización prácticas hasta C++23. Acelera las revisiones con indicaciones predefinidas y acceso rápido a pautas seleccionadas.
Documentación
中文 | English
Servidor MCP de Guía de Estilo C++
Aplica un estilo C++ consistente y mejores prácticas en todo tu código base. Analiza convenciones de nombres, seguridad de memoria y corrección de const, y obtén sugerencias de modernización accionables hasta C++23. Acelera las revisiones con indicaciones listas para usar y acceso rápido a pautas seleccionadas.
Herramientas
| Herramienta | Descripción |
|---|---|
check_naming | Valida identificadores de C++ (variables, clases, funciones, etc.) contra convenciones de nombres |
check_include_guard | Verifica guardas de inclusión de archivos de cabecera o el uso de #pragma once |
analyze_memory_safety | Detecta fugas de memoria, punteros colgantes y patrones de memoria inseguros |
suggest_modern_cpp | Obtén sugerencias de modernización dirigidas a C++11 hasta C++23 |
check_const_correctness | Encuentra calificadores const faltantes en funciones miembro, parámetros y variables |
Recursos
| URI | Descripción |
|---|---|
cpp-style://naming/{category} | Referencia de convenciones de nombres (variable, clase, función, espacio de nombres, …) |
cpp-style://best-practices/{topic} | Guías de mejores prácticas (memoria, excepciones, plantillas, concurrencia, …) |
cpp-style://standard/{version} | Documentación de características del estándar C++ (cpp11 – cpp23) |
cpp-style://examples/{pattern} | Ejemplos de patrones de diseño (RAII, Pimpl, Factory, Observer, …) |
Indicaciones
| Indicación | Descripción |
|---|---|
code_review | Plantilla de revisión de código (general / rendimiento / seguridad / legibilidad / moderno) |
refactor_suggestion | Guía de refactorización dirigida a un estándar C++ específico |
Uso
Conectar vía Smithery (recomendado)
npx -y @smithery/cli install @SongJiangzhou/cpp_guidelines --client claude
Endpoint MCP (HTTP / streamable-http)
https://cpp-style-guide-mcp.fly.dev/mcp
Instalación local
git clone https://github.com/SongJiangzhou/cpp_guidelines_mcp.git
cd cpp_guidelines_mcp
uv sync
uv run mcp run cpp_style_server.py
Añade a la configuración de tu cliente MCP:
{
"mcpServers": {
"cpp-style": {
"command": "uv",
"args": ["run", "mcp", "run", "cpp_style_server.py"],
"cwd": "/path/to/cpp_guidelines_mcp"
}
}
}
Ejemplos
# Check a variable name
check_naming("myVariable", "variable")
# Analyze memory safety
analyze_memory_safety("void f(int* p) { delete p; p->run(); }")
# Modernize code to C++17
suggest_modern_cpp("for (int i=0; i<v.size(); i++) {...}", "cpp17")
# Check const correctness
check_const_correctness("class Foo { int getValue() { return x; } int x; };")
# Access naming convention docs
Resource: cpp-style://naming/all
# Access memory best practices
Resource: cpp-style://best-practices/memory
Estructura del Proyecto
cpp_guidelines_mcp/
├── cpp_style_server.py # MCP server entry point
├── cpp_style/
│ ├── tools/ # 5 analysis tools
│ ├── resources/ # 4 reference resource categories
│ ├── prompts/ # 2 prompt templates
│ └── data/ # JSON knowledge base
├── fly.toml # Fly.io deployment config
├── Dockerfile # Container image
└── smithery.yaml # Smithery config (local stdio mode)