Skip to main content
Glama
yingsf

pycharm-code-quality-mcp

by yingsf

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SONAR_IDE_PORTNo显式指定 Sonar 端口
JETBRAINS_MCP_URLNoJetBrains MCP 端点(覆盖配置文件)
JETBRAINS_MAX_FILESNo单次调用最大文件数(上限 200)200
SONAR_WORKSPACE_ROOTSNo允许的工作区根(os.pathsep 分隔)
JETBRAINS_MCP_HEADERS_JSONNo附加 headers(JSON)
JETBRAINS_INSPECTION_TIMEOUT_MSNo单文件 inspection 超时(默认 30000)30000
PYCHARM_CODE_QUALITY_MCP_LOG_LEVELNo日志级别(DEBUG/INFO/WARNING/ERROR)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
code_quality_statusA

Report availability and status of both analysis backends: the JetBrains MCP Server (PyCharm inspections, default) and SonarQube for IDE (optional). Use this first to see which backends are configured and ready.

code_quality_analyze_filesA

Analyze 1 to 200 absolute file paths with the default backend strategy (backend_mode=auto: JetBrains first, Sonar auto-added if installed). Returns unified findings after deterministic cross-backend deduplication. Errors-only filtering and deduplication mode are configurable.

code_quality_analyze_git_changesA

Collect changed files in the git repository under project_root (staged, unstaged, untracked; relative to base_ref) and analyze them with the unified backend strategy. Deleted files are excluded. Same deduplication and backend_mode options as code_quality_analyze_files.

code_quality_analyze_projectA

Scan all files in the git repository under project_root (default: all .py files, tracked + untracked, .gitignore-respected) and analyze them with the unified backend strategy. Use this when you want the whole repo rather than just git changes. Pass extensions to scan other file types. Subject to the same 200-file limit and deduplication options as code_quality_analyze_files.

code_quality_clear_cacheA

Clear in-memory caches for all backends (Sonar port discovery, JetBrains session). Pass project_root to clear only one Sonar project's port mapping.

jetbrains_ide_statusA

Probe the locally-configured JetBrains MCP Server (PyCharm) and report whether it is configured, reachable, project-ready, and whether the required tool (get_file_problems) is exposed. get_project_status is reported as optional (absent on PyCharm 2026.1+). Use this for diagnostics.

jetbrains_inspect_filesA

Inspect 1 to 200 absolute file paths with PyCharm's built-in JetBrains inspections via the local JetBrains MCP Server. Reuses one MCP session for all files; a single file failure does not abort the others. Returns inspection problems (1-based ranges).

jetbrains_inspect_git_changesA

Collect changed files in the git repository under project_root (staged, unstaged, untracked; relative to base_ref) and inspect them with JetBrains inspections. Deleted files are excluded.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 8 tools

Disambiguation4/5

The code_quality_* and jetbrains_* prefixes clearly separate the unified analysis layer from the PyCharm-specific backend. The three analyze scopes (files, git changes, project) are distinct, though code_quality_status and jetbrains_ide_status overlap somewhat in reporting backend health.

Naming Consistency4/5

Most tools follow a consistent prefix + verb_noun pattern, e.g., code_quality_analyze_files and jetbrains_inspect_files. The status tools (code_quality_status, jetbrains_ide_status) deviate slightly by omitting a leading verb, but the pattern is otherwise predictable.

Tool Count4/5

Eight tools is a reasonable size for a code quality server. The set feels slightly heavier than necessary because the jetbrains_inspect_* tools duplicate the analysis scope of the code_quality_analyze_* tools, but the redundancy is intentional for direct backend access.

Completeness4/5

The core workflow is well covered: check backend status, analyze files, analyze git changes, analyze the whole project, and clear cache. Minor gaps include no explicit Sonar-only analysis tool, no problem suppression or rule configuration, and the 200-file limit without a continuation mechanism.

Maintenance

ActivityStale
ResponsivenessNo issues