plucked/nuget-context-server
If you are the rightful owner of nuget-context-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A C# application that functions as a Model Context Protocol (MCP) server, providing context about .NET project dependencies (NuGet packages) to Large Language Models (LLMs) or other development tools.
The NuGet Context MCP Server is a specialized server application designed to analyze .NET solutions and projects to extract and provide detailed information about NuGet package dependencies. It interacts with NuGet feeds to fetch package details, versions, and metadata, caching results locally using SQLite for improved performance. The server exposes these capabilities as tools via the Model Context Protocol (MCP), allowing AI agents or other tools to query NuGet information programmatically. This server is particularly useful for developers and AI systems that need to understand or manipulate .NET project dependencies efficiently. It supports various operations such as analyzing project dependencies, searching for packages, and retrieving package details and versions. The server is built using a layered architecture on the .NET Generic Host, ensuring robust application management, dependency injection, and logging.
Features
- AnalyzeProjectDependencies: Analyzes a .sln or .csproj file to find NuGet dependencies and their latest available versions.
- SearchNuGetPackages: Searches the configured NuGet feed for packages matching a search term, with options for pagination and including pre-release versions.
- GetNuGetPackageVersions: Lists all available versions (stable or pre-release) for a specific package ID.
- GetLatestNuGetPackageVersion: Gets the latest stable or pre-release version string for a specific package ID.
- GetNuGetPackageDetails: Retrieves detailed metadata (description, authors, URLs, etc.) for a specific package ID and optional version.
Usages
usage with stdio
{ "mcpServers": { "nuget-context": { "command": "dotnet", "args": [ "watch", "run", "--non-interactive", "--project", "src/NuGetContextMcpServer.Host/NuGetContextMcpServer.Host.csproj", "--", "--transport", "stdio" ], "cwd": ".", "disabled": false } } }