MCP server by carlos-zamora
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.