vcpkg-package-readme-mcp-server

elchika-inc/vcpkg-package-readme-mcp-server

3.2

If you are the rightful owner of vcpkg-package-readme-mcp-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.

An MCP (Model Context Protocol) server designed to provide AI assistants with detailed information about vcpkg packages, including README content, metadata, and search capabilities.

Tools
  1. get_package_readme

    Retrieves comprehensive README content and usage examples for vcpkg packages.

  2. get_package_info

    Fetches detailed package metadata, dependencies, and statistics from the vcpkg registry.

  3. search_packages

    Searches the vcpkg registry for packages with advanced filtering capabilities.

vcpkg Package README MCP Server

license npm version npm downloads GitHub stars

An MCP (Model Context Protocol) server that enables AI assistants to fetch comprehensive information about vcpkg packages from the vcpkg registry, including README content, package metadata, and search functionality.

Features

  • Package README Retrieval: Fetch formatted README content with usage examples from C++/vcpkg packages hosted in the vcpkg registry
  • Package Information: Get comprehensive package metadata including dependencies, versions, statistics, and maintainer information
  • Package Search: Search vcpkg registry with advanced filtering by package type, popularity, and relevance
  • Smart Caching: Intelligent caching system to optimize API usage and improve response times
  • GitHub Integration: Seamless integration with GitHub API for enhanced README fetching when packages link to GitHub repositories
  • Error Handling: Robust error handling with automatic retry logic and fallback strategies

MCP Client Configuration

Add this server to your MCP client configuration:

{
  "mcpServers": {
    "vcpkg-package-readme": {
      "command": "npx",
      "args": ["vcpkg-package-readme-mcp-server"],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    }
  }
}

Note: The GITHUB_TOKEN is optional but recommended for higher API rate limits when fetching README content from GitHub.

Available Tools

get_package_readme

Retrieves comprehensive README content and usage examples for vcpkg packages.

Parameters:

{
  "package_name": "boost",
  "version": "latest",
  "include_examples": true
}
  • package_name (string, required): vcpkg package name
  • version (string, optional): Specific package version or "latest" (default: "latest")
  • include_examples (boolean, optional): Include usage examples and code snippets (default: true)

Returns: Formatted README content with installation instructions, usage examples, and API documentation.

get_package_info

Fetches detailed package metadata, dependencies, and statistics from vcpkg registry.

Parameters:

{
  "package_name": "opencv",
  "include_dependencies": true,
  "include_dev_dependencies": false
}
  • package_name (string, required): vcpkg package name
  • include_dependencies (boolean, optional): Include runtime dependencies (default: true)
  • include_dev_dependencies (boolean, optional): Include development dependencies (default: false)

Returns: Package metadata including version info, maintainers, license, platform support, and dependency tree.

search_packages

Searches vcpkg registry for packages with advanced filtering capabilities.

Parameters:

{
  "query": "json parser",
  "limit": 20,
  "quality": 0.8
}
  • query (string, required): Search terms (package name, description, keywords)
  • limit (number, optional): Maximum number of results to return (default: 20, max: 250)
  • quality (number, optional): Minimum quality score filter (0-1)

Returns: List of matching packages with names, descriptions, platform support, and relevance scores.

Error Handling

The server handles common error scenarios gracefully:

  • Package not found: Returns clear error messages with package name suggestions
  • Rate limiting: Implements automatic retry with exponential backoff
  • Network timeouts: Configurable timeout with retry logic
  • Invalid package names: Validates package name format and provides guidance
  • GitHub API failures: Fallback strategies when GitHub integration fails

License

MIT