[architecture]
Summarizes loaded workspace project file formats and project kinds for SDK-style migration planning. Returns aggregate counts, optional filtered project details, and optional dependency layers.
Project graphs, dependencies, unused references, and complexity are too large to infer reliably from scattered files.
The model can reason from architecture-level facts before deleting references, moving code, or prioritizing risky areas.
Try it locally in the GliderMCP playground
| Name | Type | Required | Description |
|---|---|---|---|
| format | string | No | Optional format filter: 'sdkStyle', 'legacy', or 'unknown'. Omit for all formats. |
| kind | string | No | Optional kind filter: 'library', 'exe', 'classicWeb', 'test', or 'unknown'. Omit for all kinds. |
| includeLayers | boolean | No | Include dependency-layer groups for the filtered projects. Default is false. |
| includeProjects | boolean | No | Include filtered project detail rows. Default is true. |
| pathStyle | string | No | Path style: 'absolute' (default) or 'relative' (to solution root). |
Summarize project formats
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_project_format_summary",
"arguments": {}
}
}{
"success": true,
"data": {
"projectCount": 44,
"filteredProjectCount": 12,
"filters": {
"format": "legacy",
"kind": null
},
"formatCounts": {
"sdkStyle": 32,
"legacy": 12,
"unknown": 0
},
"kindCounts": {
"library": 8,
"exe": 2,
"classicWeb": 1,
"test": 1,
"unknown": 0
},
"projects": [
{
"projectName": "MyProject.Core",
"filePath": "src/MyProject.Core/MyProject.Core.csproj",
"format": "legacy",
"kind": "library",
"targetFrameworks": [
"v4.8"
],
"outputType": "Library",
"hasPackagesConfig": true,
"hasWebApplicationTargets": false,
"directDependencyCount": 0,
"directDependentCount": 3,
"migrationLayer": 0
}
],
"migrationLayers": [
{
"layer": 0,
"projectCount": 1,
"projects": [
{
"projectName": "MyProject.Core",
"filePath": "src/MyProject.Core/MyProject.Core.csproj"
}
]
}
]
},
"error": null
}Plan legacy project migration order
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_project_format_summary",
"arguments": {
"format": "legacy",
"includeLayers": true,
"pathStyle": "relative"
}
}
}{
"success": true,
"data": {
"projectCount": 44,
"filteredProjectCount": 12,
"filters": {
"format": "legacy",
"kind": null
},
"formatCounts": {
"sdkStyle": 32,
"legacy": 12,
"unknown": 0
},
"kindCounts": {
"library": 8,
"exe": 2,
"classicWeb": 1,
"test": 1,
"unknown": 0
},
"projects": [
{
"projectName": "MyProject.Core",
"filePath": "src/MyProject.Core/MyProject.Core.csproj",
"format": "legacy",
"kind": "library",
"targetFrameworks": [
"v4.8"
],
"outputType": "Library",
"hasPackagesConfig": true,
"hasWebApplicationTargets": false,
"directDependencyCount": 0,
"directDependentCount": 3,
"migrationLayer": 0
}
],
"migrationLayers": [
{
"layer": 0,
"projectCount": 1,
"projects": [
{
"projectName": "MyProject.Core",
"filePath": "src/MyProject.Core/MyProject.Core.csproj"
}
]
}
]
},
"error": null
}Returns project format and kind counts, optional filtered project rows, and optional migration layers based on project-reference topology.