Skip to main content
Glama
Hardik-369

Change Risk Assessor MCP Server

by Hardik-369

Change Risk Assessor MCP Server

Autonomous Model Context Protocol server for code change risk assessment with ultra-low token budget (50-100 tokens).

Installation

Global Install

npm install -g mcp-change-risk-assessor

Using npx (No Install)

npx mcp-change-risk-assessor

Related MCP server: git-context-mcp

Purpose

Provides a single MCP tool (assess_change_risk) that evaluates code changes and returns structured risk metadata for consumption by AI agents in IDEs.

Key Features:

  • ✅ No API keys required

  • ✅ Works offline

  • ✅ Ultra-low token budget (50-100 tokens)

  • ✅ 8-word reasoning limit

  • ✅ 10-word advice limit

  • ✅ Classification-based (not prose-based)

Usage

MCP Client Configuration

Add to your MCP client configuration (e.g., Claude Desktop, Cursor, Cline):

Using npx (recommended):

{
  "mcpServers": {
    "change-risk-assessor": {
      "command": "npx",
      "args": ["-y", "mcp-change-risk-assessor"]
    }
  }
}

If installed globally:

{
  "mcpServers": {
    "change-risk-assessor": {
      "command": "mcp-change-risk-assessor"
    }
  }
}

Tool Interface

Tool Name: assess_change_risk

Input Schema:

{
  "diff": "string (optional)",
  "files_changed": ["array of strings (optional)"],
  "language": "string (optional)",
  "context_hint": "string (optional)"
}

Output Schema:

{
  "risk_level": "low | medium | high",
  "risk_types": ["data_loss", "auth", "perf", "breaking_change", "infra", "unknown"],
  "confidence": 0.0,
  "reasoning": "max 8 words, fragments only",
  "agent_advice": "max 10 words, imperative"
}

Reasoning Examples:

  • "auth logic changed, rollback unclear"

  • "schema mutation, irreversible"

  • "refactor only, no behavior delta"

Advice Examples:

  • "run full test suite before deploy"

  • "verify rollback plan exists"

  • "standard review, check build"

Architecture

This MCP server acts as a pure tool definition that relies entirely on the host IDE's built-in LLM (Claude Code, Cursor, etc.) to perform risk analysis.

Ultra-Low Token Budget

Token Target: 50-100 tokens per invocation
Reasoning Limit: 8 words maximum
Advice Limit: 10 words maximum

The server enforces strict word limits to minimize token usage while preserving classification accuracy.

Responsibility Split

The MCP Server:

  • Defines the tool name and classification framework

  • Enforces strict word limits (8 words reasoning, 10 words advice)

  • Validates and normalizes output schema

  • Truncates overlong responses

The Host IDE's LLM:

  • Reads the tool description

  • Classifies risk immediately (single-pass, no chain-of-thought)

  • Returns fragmented reasoning (no full sentences)

  • Provides imperative advice (no explanations)

No External Dependencies

✅ No API keys required
✅ No external LLM calls
✅ No network requests
✅ No configuration needed
✅ Works offline

Classification Approach

Classification over explanation:

  • Immediate risk judgment (HIGH/MEDIUM/LOW)

  • Fragmented reasoning only (≤8 words)

  • Bounded vocabulary (no file descriptions, no diff repetition)

  • Single-pass judgment (no step-by-step reasoning)

Risk Classification

High Risk

  • Irreversible data changes

  • Auth/security logic modifications

  • Infrastructure changes

  • Breaking external contracts

Medium Risk

  • Behavior changes with unclear test coverage

  • Configuration or dependency updates

  • Performance-sensitive logic modifications

Low Risk

  • Comments only

  • Formatting changes

  • Renames without behavior change

  • Test-only changes

  • Refactors with no semantic delta

How It Works

// 1. IDE detects code change and calls the MCP tool
{
  "diff": "- const user = getUser()\n+ const user = await getUser()",
  "files_changed": ["src/auth/login.js"],
  "context_hint": "pre-commit"
}

// 2. Host IDE's LLM reads the tool description and analyzes the change
// (The MCP server does NOT perform this analysis)

// 3. Host IDE's LLM generates assessment following the schema

// 4. MCP server validates and normalizes the output
{
  "risk_level": "medium",
  "risk_types": ["auth"],
  "confidence": 0.65,
  "reasoning": "auth logic changed, async pattern",
  "agent_advice": "verify test coverage, check integration impacts"
}

Design Philosophy

  • Pure MCP tool definition

  • No external LLM calls or API keys

  • Analysis performed by host IDE's LLM

  • Schema validation and normalization only

  • No data persistence or state

  • Deterministic output schema

  • Machine-readable output only

  • Autonomous operation in IDE context

  • Works offline

Available Tools

1 tool
assess_change_riskA

Classify code change risk. Return JSON only.

CLASSIFY (single-pass, no explanation):

  • HIGH: data deletion, auth changes, schema mutations, infra changes, breaking contracts

  • MEDIUM: behavior changes, config updates, unclear test coverage

  • LOW: comments, formatting, renames, tests only, pure refactors

OUTPUT (strict limits): { "risk_level": "low|medium|high", "risk_types": ["data_loss","auth","perf","breaking_change","infra","unknown"], "confidence": 0.0-1.0, "reasoning": "max 8 words, fragments only, no sentences", "agent_advice": "max 10 words, imperative only" }

REASONING examples:

  • "auth logic changed, rollback unclear"

  • "schema mutation, irreversible"

  • "refactor only, no behavior delta"

  • "config change, no tests"

ADVICE examples:

  • "run full test suite before deploy"

  • "verify rollback plan exists"

  • "standard review, check build"

FORBIDDEN in reasoning/advice:

  • describing files or code

  • repeating diff content

  • full sentences

  • context repetition

  • explanations

Classify immediately. Be conservative.

ParametersJSON Schema
NameRequiredDescriptionDefault
diffNoUnified diff of changes
languageNoProgramming language
context_hintNoContext such as pre-commit or pre-deploy
files_changedNoList of changed file paths

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It extensively details output format, strict length limits on reasoning/advice, forbidden content, and instructs a conservative approach. This goes far beyond a basic description and fully informs the agent of the tool's behavior and constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than average but well-structured into clear sections (classification criteria, output format, examples, forbidden content). Every section adds necessary detail for the tool's constrained output. The examples efficiently illustrate the expected reasoning and advice style. It earns a 4 because while not minimal, it is appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description provides a full JSON output template, examples, and strict constraints. This makes the tool's behavior and return value crystal clear. For a 4-parameter tool with no annotations, the description covers classification logic, output format, and edge-case restrictions, making it exceptionally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes all 4 parameters with 100% coverage, so the description adds limited semantic value beyond what is provided. It does give examples of how diff content influences classification, but this is implicit rather than explicit parameter-level guidance. Baseline 3 is appropriate given the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb and resource: 'Classify code change risk.' It further defines risk levels (HIGH/MEDIUM/LOW) and examples, making the tool's function unmistakable. There are no siblings to differentiate from, but the description is highly specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the input parameters (e.g., diff, context_hint for pre-commit/pre-deploy) and provides no exclusions. It lacks explicit 'when to use' or alternative recommendations, but since no sibling tools exist, the context is sufficiently clear for an agent to decide when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.3/5.0
Disambiguation5/5

Only a single tool exists, so there is no possibility of confusion or overlap. The tool's purpose is clearly stated and self-contained.

Naming Consistency5/5

The one tool name 'assess_change_risk' follows a clear verb_noun pattern, consistent with conventional naming. With a single tool, there are no inconsistencies to evaluate.

Tool Count2/5

The server has only one tool, which feels too few for a server dedicated to change risk assessment. While the tool is not trivial, the lack of any complementary operations makes the tool surface overly thin.

Completeness4/5

The single tool provides comprehensive output for the core assessment task, including risk level, types, confidence, reasoning, and advice. However, there are no supporting tools for related tasks (e.g., batch assessment, historical tracking), which is a minor gap given the narrow scope.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Hardik-369/mcp-change-risk-assessor'

If you have feedback or need assistance with the MCP directory API, please join our Discord server