client-diagnostics-mcp-server

scratching-monkey/client-diagnostics-mcp-server

3.1

If you are the rightful owner of client-diagnostics-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A MCP server that provides diagnostics information about a MCP client.

MCP Client diagnostics MCP Server

CI GitHub Release Renovate

An MCP server that surfaces diagnostics about the connected MCP client (capabilities, handshake, and selected features). Implemented in Rust and shipped as a container image.

Features

  • MCP initialize over stdio with basic serverCapabilities
  • Resources:
    • mcp://client/handshake
    • mcp://client/capabilities
    • mcp://client/features
    • mcp://client/roots
  • Tools:
    • self_test
    • refresh_roots
  • Prompts:
    • how_to_use
    • describe_client

Using the docker image in VSCode

{
    "servers": {
        "client-diagnostics": {
            "command": "docker",
            "args": [
                "run",
                "--rm",
                "-i",
                "ghcr.io/scratching-monkey/client-diagnostics-mcp-server:latest",
                "run-rmcp"
            ],
            "env": {
                "RUST_LOG": "info",
                "REDACTION_DENY_DEFAULT": "true"
            }
        }
	}
}

Development Setup

Dev Container

This project uses a Dev Container for consistent development environments. The container includes:

  • Rust toolchain: Pre-configured with rust-analyzer
  • Python: For integration tests with pytest
  • Node.js 20: For MCP Inspector via npx
  • .NET 8 LTS: For MinVer semantic versioning
  • MinVer CLI: Automatically installed for version calculation
Optional File Mounts

The dev container mounts several optional files from your host system for convenience:

"mounts": [
  "source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached",
  "source=${localEnv:HOME}/.gitconfig,target=/home/vscode/.gitconfig,type=bind,consistency=cached", 
  "source=${localEnv:HOME}/.gitignore,target=/home/vscode/.gitignore,type=bind,consistency=cached",
  "source=${localEnv:HOME}/.config/gh,target=/home/vscode/.config/gh,type=bind,consistency=cached"
]

If these files don't exist on your system:

  • Container starts normally - missing files are simply ignored
  • 🔧 Setup required for full functionality:
    • SSH keys (~/.ssh/): Configure for Git push/pull via SSH
    • Git config (~/.gitconfig): Run git config --global user.name "Your Name" and git config --global user.email "you@example.com"
    • GitHub CLI (~/.config/gh): Run gh auth login inside the container
    • Global gitignore (~/.gitignore): Optional, for personal ignore patterns
Getting Started
  1. Open the project in VS Code
  2. Click "Reopen in Container" when prompted (or use Command Palette → "Dev Containers: Reopen in Container")
  3. Wait for container build and setup
  4. Configure Git if needed: git config --global user.name "Your Name"
  5. Authenticate with GitHub CLI if needed: gh auth login

Container

Development Build

Build the server image locally for testing:

docker build -f docker/Dockerfile.server -t client-diagnostics-mcp-server:dev .