mcpField
N
Nuanced MCP Server

Nuanced MCP Server

Local
github.com/MattMorgisDeveloper Tools18Updated 83w ago

About Nuanced MCP Server

Nuanced MCP Server gives LLMs access to call-graph and dependency analysis for Python repositories. It is intended for coding assistance that needs code-structure context, with tools for repository switching and function-level change impact.

Key features

  1. 01Initialize Python repository call graphs
  2. 02Inspect function call relationships
  3. 03Analyze file and module dependencies
  4. 04Assess function change impact
  5. 05Retrieve graph summaries and function details

Use cases

  1. 01Trace a function's callers and callees
  2. 02Check file or module dependencies
  3. 03Assess the impact of changing a function

MCP support

The MCP server exposes call-graph, dependency, and change-impact tools to clients, along with resources and prompts for graph summaries and function analysis.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Nuanced MCP Server

A Model Context Protocol (MCP) server that provides call graph analysis capabilities to LLMs through the nuanced library.

Overview

This MCP server enables LLMs to understand code structure by accessing function call graphs through standardized tools and resources. It allows AI assistants to:

  • Initialize call graphs for Python repos
  • Explore function call relationships
  • Analyze dependencies between functions
  • Provide more contextually aware code assistance

API

Tools
  • initialize_graph

    • Initialize a code graph for the given repository path
    • Input: repo_path (string)
  • switch_repository

    • Switch to a different initialized repository
    • Input: repo_path (string)
  • list_repositories

    • List all initialized repositories
    • No inputs required
  • get_function_call_graph

    • Get the call graph for a specific function
    • Inputs:
      • file_path (string)
      • function_name (string)
      • repo_path (string, optional) - uses active repository if not specified
  • analyze_dependencies

    • Find all module or file dependencies in the codebase
    • Inputs (at least one required):
      • file_path (string, optional)
      • module_name (string, optional)
  • analyze_change_impact

    • Analyze the impact of changing a specific function
    • Inputs:
      • file_path (string)
      • function_name (string)
Resources
  • graph://summary

    • Get a summary of the currently loaded code graph
    • No parameters required
  • graph://repo/{repo_path}/summary

    • Get a summary of a specific repository's code graph
    • Parameters:
      • repo_path (string) - Path to the repository
  • graph://function/{file_path}/{function_name}

    • Get detailed information about a specific function
    • Parameters:
      • file_path (string) - Path to the file containing the function
      • function_name (string) - Name of the function to analyze
Prompts
  • analyze_function

    • Create a prompt to analyze a function with its call graph
    • Parameters:
      • file_path (string) - Path to the file containing the function
      • function_name (string) - Name of the function to analyze
  • impact_analysis

    • Create a prompt to analyze the impact of changing a function
    • Parameters:
      • file_path (string) - Path to the file containing the function
      • function_name (string) - Name of the function to analyze
  • analyze_dependencies_prompt

    • Create a prompt to analyze dependencies of a file or module
    • Parameters (at least one required):
      • file_path (string, optional) - Path to the file to analyze
      • module_name (string, optional) - Name of the module to analyze

Usage with Claude Desktop

Add this to your claude_desktop_config.json

UV
{
  "mcpServers": {
    "nuanced": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/nuanced-mcp",
        "run",
        "nuanced_mcp_server.py"
      ]
    }
  }
}

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.