Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Inspect NuGet package APIs, dependencies, metadata, and breaking changes across versions.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
NUGET_CONFIG, NUGET_SOURCESWhich app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"nugetmcpserver": {
"command": "dnx",
"args": [
"DimonSmart.NugetMcpServer",
"--yes"
],
"env": {
"NUGET_CONFIG": "your-value",
"NUGET_SOURCES": "your-value"
}
}
}
}Run this in your terminal
claude mcp add nugetmcpserver --env NUGET_CONFIG=your-value --env NUGET_SOURCES=your-value -- dnx DimonSmart.NugetMcpServer --yesFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"nugetmcpserver": {
"command": "dnx",
"args": [
"DimonSmart.NugetMcpServer",
"--yes"
],
"env": {
"NUGET_CONFIG": "your-value",
"NUGET_SOURCES": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"nugetmcpserver": {
"type": "stdio",
"command": "dnx",
"args": [
"DimonSmart.NugetMcpServer",
"--yes"
],
"env": {
"NUGET_CONFIG": "your-value",
"NUGET_SOURCES": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
NUGET_CONFIG envNUGET_SOURCES envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account DimonSmart, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.1.10) reached the registry 26 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need .NET on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, AvaHR
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read hiring data and create inactive assessment and questionnaire drafts for human review.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Bad NuGet API guesses are expensive.
NugetMcpServer lets Codex, Claude Code, VS Code, Claude Desktop, and other MCP clients inspect real NuGet package metadata and public APIs before generating code. It is most useful when package version details matter or when the package lives in a private feed.
Fastest path: install it with codex mcp add or claude mcp add, then ask your assistant to use the NuGet MCP server before writing package-dependent code.
LLMs often know popular libraries, but they do not reliably know the exact API surface of every package version. NugetMcpServer gives the assistant a way to check the package first instead of filling gaps from memory.
NugetMcpServer connects the assistant to NuGet packages directly, including private feeds and local package folders.
These commands use the current published NuGet package version, 1.1.7. dnx downloads and runs the .NET tool from NuGet, so you do not need a separate dotnet tool install step.
codex mcp add nuget -- dnx DimonSmart.NugetMcpServer@1.1.7 --yes
Check available MCP commands:
codex mcp --help
Inside the Codex TUI, run:
/mcp
Codex CLI and the Codex IDE extension share MCP configuration, so configuring the server once should make it available in both clients.
claude mcp add --transport stdio nuget -- dnx DimonSmart.NugetMcpServer@1.1.7 --yes
Everything after -- is the actual MCP server command and arguments.
Manage and verify the server:
claude mcp list
claude mcp get nuget
Inside Claude Code, run:
/mcp
Open the NuGet package page, select the MCP Server tab, and copy the generated VS Code configuration.
For manual VS Code configuration, add this to mcp.json. Replace with the package version you want to pin:
{
"servers": { "nuget": { "type": "stdio", "command": "dnx", "args": ["DimonSmart.NugetMcpServer@ ", "--yes"] } } }
Use Docker when the MCP client environment does not have the .NET SDK available.
Codex:
codex mcp add nuget-docker -- docker run -i --rm ghcr.io/dimonsmart/nugetmcpserver:latest
Claude Code:
claude mcp add --transport stdio nuget-docker -- docker run -i --rm ghcr.io/dimonsmart/nugetmcpserver:latest
Run the container directly:
docker run -i --rm ghcr.io/dimonsmart/nugetmcpserver:latest
VS Code mcp.json:
{
"servers": { "nuget": { "type": "stdio", "command": "docker", "args": ["run", "-i", "--rm", "ghcr.io/dimonsmart/nugetmcpserver:latest"] } } }
Install in VS Code with Docker
Codex config.toml:
[mcp_servers.nuget]
command = "dnx" args = ["DimonSmart.NugetMcpServer@ ", "--yes"]
Codex Docker variant:
[mcp_servers.nuget]
command = "docker" args = ["run", "-i", "--rm", "ghcr.io/dimonsmart/nugetmcpserver:latest"]
Claude Desktop and generic MCP clients that use the mcpServers JSON shape:
{
"mcpServers": { "nuget": { "command": "dnx", "args": ["DimonSmart.NugetMcpServer@ ", "--yes"] } } }
Use NUGET_SOURCES for one or more source URLs or local package folders. Separate sources with semicolons. Use NUGET_CONFIG when you want NuGet to read a specific NuGet.Config, for example when credentials or source names are already configured there.
Codex with NUGET_SOURCES:
codex mcp add nuget-private \
--env NUGET_SOURCES="C:\NuGet\LocalFeed;https://pkgs.dev.azure.com/ORG/_packaging/Feed/nuget/v3/index.json" \ -- dnx DimonSmart.NugetMcpServer@ --yes
Claude Code with NUGET_SOURCES:
claude mcp add --transport stdio \
--env NUGET_SOURCES="C:\NuGet\LocalFeed;https://pkgs.dev.azure.com/ORG/_packaging/Feed/nuget/v3/index.json" \ nuget-private \ -- dnx DimonSmart.NugetMcpServer@ --yes
Codex with NUGET_CONFIG:
codex mcp add nuget-config \
--env NUGET_CONFIG="/path/to/NuGet.Config" \ -- dnx DimonSmart.NugetMcpServer@ --yes
Claude Code with NUGET_CONFIG:
claude mcp add --transport stdio \
--env NUGET_CONFIG="/path/to/NuGet.Config" \ nuget-config \ -- dnx DimonSmart.NugetMcpServer@ --yes
Use Windows paths such as C:\path\to\NuGet.Config on Windows. Use Unix-style paths such as /path/to/NuGet.Config on Linux and macOS. Keep paths quoted when they contain spaces.
VS Code mcp.json with private sources:
{
"servers": { "nuget": { "type": "stdio", "command": "dnx", "args": ["DimonSmart.NugetMcpServer@ ", "--yes"], "env": { "NUGET_SOURCES": "C:\\NuGet\\LocalFeed;https://pkgs.dev.azure.com/ORG/_packaging/Feed/nuget/v3/index.json" } } } }
Codex config.toml with private sources:
[mcp_servers.nuget]
command = "dnx" args = ["DimonSmart.NugetMcpServer@ ", "--yes"]
[mcp_servers.nuget.env] NUGET_SOURCES = "C:\\NuGet\\LocalFeed;https://pkgs.dev.azure.com/ORG/_packaging/Feed/nuget/v3/index.json"
More configuration options: Technical details
After the MCP client shows the server as connected, ask your assistant to use it explicitly:
Use the NuGet MCP server to inspect Dapper 2.1.66 and show the public extension methods for IDbConnection.
Before writing code, use the NuGet MCP server to inspect the real API of Microsoft.Extensions.DependencyInjection.Abstractions and use only existing public types and methods.
Use the NuGet MCP server to compare public APIs of Some.Package 1.8.0 and 2.0.0 and summarize breaking changes.
search_packages: search packages by query and keywords.search_packages_fuzzy: use AI-assisted fuzzy package search.get_package_info: get package metadata, dependencies, and package shape.list_interfaces: list public interfaces.list_classes_records_structs: list public classes, records, and structs.get_interface_definition: return a C# interface definition.get_class_or_record_or_struct_definition: return a C# class, record, or struct definition.get_enum_definition: return a C# enum definition.compare_package_versions: compare public API changes between versions.list_package_files: list files inside a package.get_package_file: read a file from a package.get_current_time: return the current server time.Detailed parameters and development notes: Technical details
dnx is not found: install a current .NET SDK and make sure the .NET tools path is available in your shell, or use the Docker install path.NuGet.Config, credential provider setup, feed URL, and whether the same user account can restore from that feed with normal NuGet tooling.NUGET_CONFIG when complex source paths or credentials are involved.-- separator before dnx or docker; the MCP client options must appear before that separator.The release version is assigned by the GitHub Actions pipeline from the Git tag.
Check the installed version:
NugetMcpServer --version
NuGet releases are published from version tags on main:
.\publish-next-version.ps1
The script creates and pushes the next vMAJOR.MINOR.PATCH tag. GitHub Actions builds, tests, updates the MCP manifest version, packs the NuGet MCP server package, and publishes it to NuGet.
WinGet publishing is also tag-driven after the GitHub release exists:
.\publish-winget-version.ps1
By default, the WinGet script uses the latest vMAJOR.MINOR.PATCH release tag. Pass -Version 1.2.3 to publish a specific release.
MIT