C++ Core Guidelines MCP Server

Thiết lập phong cách C++ nhất quán và các thực hành tốt nhất trên toàn bộ cơ sở mã của bạn. Phân tích quy ước đặt tên, an toàn bộ nhớ và tính đúng đắn của const, đồng thời nhận các đề xuất hiện đại hóa có thể thực hiện được lên đến C++23. Tăng tốc đánh giá với các lời nhắc có sẵn và truy cập nhanh vào các hướng dẫn đã được tuyển chọn.

Tài liệu

中文 | English

C++ Style Guide MCP Server

Enforce consistent C++ style and best practices across your codebase. Analyze naming conventions, memory safety, and const correctness, and get actionable modernization suggestions up to C++23. Accelerate reviews with ready-made prompts and quick access to curated guidelines.

Tools

ToolDescription
check_namingValidate C++ identifiers (variables, classes, functions, etc.) against naming conventions
check_include_guardVerify header file include guards or #pragma once usage
analyze_memory_safetyDetect memory leaks, dangling pointers, and unsafe memory patterns
suggest_modern_cppGet modernization suggestions targeting C++11 through C++23
check_const_correctnessFind missing const qualifiers on member functions, parameters, and variables

Resources

URIDescription
cpp-style://naming/{category}Naming convention reference (variable, class, function, namespace, …)
cpp-style://best-practices/{topic}Best practice guides (memory, exceptions, templates, concurrency, …)
cpp-style://standard/{version}C++ standard feature docs (cpp11 – cpp23)
cpp-style://examples/{pattern}Design pattern examples (RAII, Pimpl, Factory, Observer, …)

Prompts

PromptDescription
code_reviewCode review template (general / performance / safety / readability / modern)
refactor_suggestionRefactoring guide targeting a specific C++ standard

Usage

Connect via Smithery (recommended)

npx -y @smithery/cli install @SongJiangzhou/cpp_guidelines --client claude

MCP endpoint (HTTP / streamable-http)

https://cpp-style-guide-mcp.fly.dev/mcp

Local installation

git clone https://github.com/SongJiangzhou/cpp_guidelines_mcp.git
cd cpp_guidelines_mcp
uv sync
uv run mcp run cpp_style_server.py

Add to your MCP client config:

{
  "mcpServers": {
    "cpp-style": {
      "command": "uv",
      "args": ["run", "mcp", "run", "cpp_style_server.py"],
      "cwd": "/path/to/cpp_guidelines_mcp"
    }
  }
}

Examples

# 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

Project Structure

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)

Tech Stack

License

MIT

Links