glider 11.1.0

There is a newer version of this package available.
See the version list below for details.
{
  "servers": {
    "glider": {
      "type": "stdio",
      "command": "dnx",
      "args": ["glider@11.1.0", "--yes"]
    }
  }
}
                    
This package contains an MCP Server. The server can be used in VS Code by copying the generated JSON to your VS Code workspace's .vscode/mcp.json settings file.
dotnet tool install --global glider --version 11.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local glider --version 11.1.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=glider&version=11.1.0
                    
nuke :add-package glider --version 11.1.0
                    

Glider - Semantic C# MCP Server

Glider gives coding agents compiler-backed C#/.NET navigation, diagnostics, analysis, and refactoring through MCP. Find definitions, references, calls, compiler errors, and safe refactors across a solution.

Install

Prerequisite: .NET 10 SDK.

dotnet tool install --global glider

If install fails, run dotnet --version first. If dotnet is missing or below 10, install .NET 10 from: https://dotnet.microsoft.com/download/dotnet/10.0

Capabilities

  • Solution/project lifecycle: load, sync, reload, unload
  • Discovery and inspection: find_code, search_symbols, resolve_symbol, get_symbol_info, get_symbol_at_position
  • References and hierarchy: find_references, find_overrides, find_implementations, get_type_hierarchy, find_callers
  • Diagnostics and code search: get_diagnostics, diagnostic_hotspots, semantic_query, search_text
  • Refactoring and edits: rename_symbol, move_type, move_member, add_member, add_type, replace_member, replace_range, organize_usings, format_document, write_file

replace_member selects one declaration by symbolKey and verifies expectedText before a write. Read get_symbol_info.replacementSpans and the corresponding file window first. Span ends are exclusive. Use applyChanges=false for a preview. memberCode replaces the declaration without its outer trivia. The tool checks compiler diagnostics in the replacement and preserves surrounding source bytes. failOnErrors=true refuses compiler errors or incomplete linked-target coverage. Callers remain unchanged. Apply awaits sync across all linked targets without a full reload. A failed sync returns success=false and applied=true. A refresh failure reports the completed disk write; sync the file instead of repeating the edit.

  • Dependency and impact analysis: analyze_change_impact, get_cascade_impact, get_project_graph, find_package_usages
  • Batch execution: batch

For general code navigation, find_code is the recommended first tool to try. The full tool reference lives at https://glidermcp.com/glider/tools.

Exact source ranges

Use replace_range for expressions, comments, imports, directives, or adjacent declarations in an existing loaded C# file. Read a bounded get_file_contents window with includeRawContent=true. Use rawContent for exact whitespace and line endings. The raw field includes the last returned line terminator. Request a smaller window if rawContentAvailable is false. Positions use one-based lines and UTF-16 columns. The start is inclusive and the end is exclusive. For int x = 1;, select line 1, column 9 through line 1, column 10 to replace 1. Supply nonempty expectedText and exact replacementText; empty replacement text deletes the range. Use applyChanges=false to preview. Empty ranges and boundaries inside CRLF or surrogate pairs are refused. The tool preserves encoding, BOM, and bytes outside the range. It does not format source or update callers. failOnErrors=true refuses any error in the edited documents, including existing errors, or incomplete linked-target checks. Check project diagnostics after imports, declarations, signatures, or directives change; other files are outside these checks. Apply awaits one named-file sync for every linked document. It does not reload the solution. Never repeat a completed or uncertain write. Inspect the disk outcome and sync the file if the workspace update fails.

Search Scope

search_text searches all loaded project documents, including additional files and analyzer configuration files. Files outside the loaded projects are excluded.

Use Scout for repository-wide search, fuzzy filenames, code structure, and optional semantic search.

Run Modes

Stdio (default)

glider

HTTP

glider --transport http

Default HTTP MCP endpoint: http://localhost:5001/mcp

Useful flags:

glider --default-timeout 30m
glider --build-host netframework
glider --msbuild-path "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin"
glider --port 8080
glider --solution "C:\repos\app\src\App.sln"
glider --solution "C:\repos\app\src\App.sln" --workspace "C:\repos\app"
glider --solution "C:\repos\app\src\App.sln" --no-watch
glider --verbose
glider --help
glider --version

Flag reference

  • --default-timeout — supports ms, s, and m suffixes. Use 0 to disable the server-side timeout.

  • --build-host — accepts auto, netframework, and netcore. It selects the build-host family for project evaluation.

  • --msbuild-path — uses a specific MSBuild installation for project evaluation.

  • --solution — loads a .sln, .slnx, or .csproj automatically at startup, so agents don't need to call the load tool first.

    • The load runs in the background: the server answers MCP requests immediately, and a failed load leaves the server alive so you can retry load.
    • While it runs, server_status reports progress under workspaceLoading, with an ETA from this workspace's previous load time.
    • Relative paths resolve against the launch directory; prefer absolute paths in shared configs.
  • --workspace — sets the root directory that the file watcher monitors for auto-sync.

    • When omitted, Glider watches the git repository root of the loaded file. Outside a repository, it watches the file's own directory. This helps when the solution sits in a subfolder and related code lives in sibling folders.
    • In a large monorepo, this wide root also detects edits to unrelated files, and each edit can trigger a workspace refresh. Pass --workspace with a narrower directory, or --no-watch, if the refreshes become too frequent.
    • The workspace still loads if the watcher cannot start, for example when the OS reaches its inotify limit. Glider disables auto-sync and reports the reason in the load result's fileWatcher.error.
  • --no-watch — disables the file watcher and auto-sync for the startup load. Do not combine it with --workspace.

Configure Your MCP Client

Use installation and host-specific setup guides on the website:

Version Expiration

Each Glider version expires 1 month after release date.

dotnet tool update --global glider

Troubleshooting

  • If glider is not found after install, ensure ~/.dotnet/tools is on PATH.
  • If load fails with MSBuild initialization errors, rerun with --verbose and inspect returned diagnostics.
  • For legacy .NET Framework solutions on Windows, retry with --build-host netframework when auto selects an incompatible build host.
  • If the host kind is correct but the toolset is wrong, use --msbuild-path to select the required MSBuild installation.
  • On Windows, prefer a stable Visual Studio install for legacy .NET Framework solutions.

License

All non-commercial use and work on open-source projects are free with no time limit. Commercial use is free until paid plans become available. The full terms are in the LICENSE file inside this package.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
12.4.5 46 10/2/2026
12.4.4 65 10/1/2026
12.4.3 57 9/30/2026
12.4.2 70 9/29/2026
12.4.1 60 9/29/2026
12.4.0 126 9/27/2026
12.3.0 108 9/26/2026
12.2.0 113 9/25/2026
12.1.2 174 9/21/2026
12.1.1 122 9/20/2026
12.1.0 138 9/17/2026
12.0.2 122 9/15/2026
12.0.1 135 9/13/2026
12.0.0 129 9/12/2026
11.1.0 117 9/11/2026
11.0.0 160 9/8/2026
10.10.0 120 9/8/2026
10.9.0 170 9/7/2026
10.8.1 121 9/6/2026
10.8.0 124 9/4/2026
Loading failed

## [11.1.0] - 2026-09-11
Features:
- add guarded member replacement (glidermcp/glidermcp#76)
- add guarded source range replacement (glidermcp/glidermcp#76)
Bug Fixes:
- preserve sync consistency under races
- respect macOS path comparison
- match declaration paths on macOS
- reject NUL edits and preserve empty raw reads