get_project_graph
[architecture]
Analyzes the loaded workspace at the project-reference level. Returns direct edges, roots/leaves, transitive reachability, and cycle groups for architecture review.
Try it locally in the Glider playground
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| projectName | string | No | Optional project name to focus reachability details. |
| includeTransitive | boolean | No | Include transitive dependency/dependent counts and focused reachability lists. Default is true. Default: true |
| includeCycles | boolean | No | Include detected cycle groups. Default is true. Default: true |
| includeEdges | boolean | No | Include the explicit direct edge list. Default is true. Default: true |
| pathStyle | string | No | Path style: 'absolute' (default) or 'relative' (to solution root). Default: "absolute" |
| responseDetail | string | No | compact returns results and actionable state. full adds diagnostic metadata under responseDiagnostics. Default: "compact" |
Examples
Replace sample paths and symbol keys with values from your workspace.
Inspect the full project graph
Arguments
{}Full MCP request
Full MCP request
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_project_graph",
"arguments": {}
}
}Illustrative response
{
"success": true,
"projectCount": 3,
"edgeCount": 2,
"roots": [
"MyProject.Web"
],
"leaves": [
"MyProject.Data"
],
"edges": [
{
"fromProject": "MyProject.Web",
"toProject": "MyProject.Core"
},
{
"fromProject": "MyProject.Core",
"toProject": "MyProject.Data"
}
],
"cycleGroups": [],
"focus": {
"projectName": "MyProject.Web",
"transitiveDependencies": [
"MyProject.Core",
"MyProject.Data"
],
"transitiveDependents": []
}
}Focus on one project
Arguments
{
"projectName": "MyProject.Web"
}Full MCP request
Full MCP request
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_project_graph",
"arguments": {
"projectName": "MyProject.Web"
}
}
}Response Notes
Returns project nodes, direct edges, roots/leaves, cycles, and optional focused reachability data Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.