Skip to content

carlos-zamora/wt-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wt-mcp

An MCP server that helps reference and manage Windows Terminal settings and other terminal-related customizations. Built with C# and the ModelContextProtocol C# SDK.

Caution

This tool is powered by AI, which can make mistakes. Always review proposed changes before applying them.

Tools

Tool area What it does
Settings Read, preview, and apply JSON Patch (RFC 6902) changes to settings.json across release channels (Stable, Preview, Canary, Dev)
Fragments Create, read, update, and delete fragment extensions — portable profiles, color schemes, and actions
Oh My Posh Detect installation, list/read themes, preview and apply config patches, set active theme in the PowerShell profile
Shell Integration Check and configure shell integration (OSC 133 sequences, autoMarkPrompts, scrollbar marks)
Snippets Manage .wt.json per-directory snippets and sendInput actions in settings or fragments

All mutating tools follow a preview-then-apply pattern — a Preview* call returns a unified diff for the user to review, then the corresponding write call applies the change.

Setup

GitHub Copilot CLI

Add wt-mcp to ~/.copilot/mcp-config.json:

{
  "mcpServers": {
    "wt-mcp": {
      "type": "stdio",
      "command": "dnx",
      "args": ["wt-mcp", "--prerelease", "--yes", "--source", "https://api.nuget.org/v3/index.json"]
    }
  }
}

Restart the CLI for changes to take effect.

Claude Code

claude mcp add wt-mcp -- dnx wt-mcp --prerelease --yes --source https://api.nuget.org/v3/index.json

The --prerelease flag is required while wt-mcp is in beta. Once a stable version is published, users can drop it and just use ["wt-mcp", "--yes"]. To pin a specific version, use "wt-mcp@0.1.0-beta" instead.

No .NET runtime is required — the package is self-contained.

Try it out

Once configured, try asking Copilot Chat things like:

  • "Change my Windows Terminal theme to Light"
  • "Create a fragment with a new SSH profile"
  • "What's my Oh My Posh theme? Change the git segment color to blue"
  • "Set up shell integration for my terminal"
  • "Add a snippet to restart the dev server in this project"

Developing locally

To run the MCP server from source, configure your IDE to use dotnet run instead of dnx:

{
  "servers": {
    "wt-mcp": {
      "type": "stdio",
      "command": "dotnet",
      "args": ["run", "--project", "<PATH TO PROJECT DIRECTORY>"]
    }
  }
}

This requires the .NET 10 SDK. See the VS Code or Visual Studio MCP docs for more details.

Publishing to NuGet.org

dotnet pack -c Release
dotnet nuget push bin/Release/*.nupkg --api-key <your-api-key> --source https://api.nuget.org/v3/index.json

Package metadata is configured in wt-mcp.csproj and the server declaration in .mcp/server.json.

More information

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages