Browse documentation

get_project_format_summary

[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.

Try it locally in the Glider playground

Parameters

NameTypeRequiredDescription
formatstringNoOptional format filter: 'sdkStyle', 'legacy', or 'unknown'. Omit for all formats.
kindstringNoOptional kind filter: 'library', 'exe', 'classicWeb', 'test', or 'unknown'. Omit for all kinds.
includeLayersbooleanNoInclude dependency-layer groups for the filtered projects. Default is false. Default: false
includeProjectsbooleanNoInclude filtered project detail rows. Default is true. Default: true
pathStylestringNoPath style: 'absolute' (default) or 'relative' (to solution root). Default: "absolute"
responseDetailstringNocompact 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.

Summarize project formats

Arguments
{}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_project_format_summary",
    "arguments": {}
  }
}
Illustrative response
{
  "success": true,
  "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"
        }
      ]
    }
  ]
}

Plan legacy project migration order

Arguments
{
  "format": "legacy",
  "includeLayers": true,
  "pathStyle": "relative"
}
Full MCP request
Full MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_project_format_summary",
    "arguments": {
      "format": "legacy",
      "includeLayers": true,
      "pathStyle": "relative"
    }
  }
}

Response Notes

Returns project format and kind counts, optional filtered project rows, and optional migration layers based on project-reference topology. Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.