Package Documentation MCP Server
by sammcj
An MCP server that provides LLMs with efficient access to package documentation across multiple programming languages and LSP capabilities. It supports Go, Python, NPM, and Rust, offering smart documentation parsing and advanced search features.
Last updated: N/A
What is Package Documentation MCP Server?
The Package Documentation MCP Server is a tool designed to provide Language Model Models (LLMs) with easy access to package documentation for various programming languages. It supports multiple languages and offers Language Server Protocol (LSP) capabilities.
How to use Package Documentation MCP Server?
To use the server, install it via npx -y mcp-package-docs
or Smithery. Configure it in your MCP settings with the provided JSON configuration, enabling LSP support if desired. Then, use the available tools like describe_go_package
, describe_python_package
, describe_rust_package
, describe_npm_package
, search_package_docs
, get_hover
, get_completions
, and get_diagnostics
with the appropriate arguments.
Key features of Package Documentation MCP Server
Multi-Language Support (Go, Python, NPM, Rust)
Smart Documentation Parsing (structured output, focused information)
Advanced Search Features (fuzzy matching, context-aware results)
Language Server Protocol (LSP) Support (hover information, code completions, diagnostics)
Performance Optimised (built-in caching, efficient parsing)
Use cases of Package Documentation MCP Server
Enabling LLMs to understand and generate code snippets with accurate documentation.
Providing context-aware documentation to LLMs for better code completion and error detection.
Facilitating LLMs to search and retrieve specific information from package documentation.
Allowing LLMs to provide hover information and diagnostics within a code editor.
Assisting LLMs in understanding the usage of various packages and libraries.
FAQ from Package Documentation MCP Server
What languages are supported?
What languages are supported?
Go, Python, NPM, and Rust are supported.
How do I enable LSP support?
How do I enable LSP support?
Set the ENABLE_LSP
environment variable to true
in your MCP server configuration.
Can I use private NPM registries?
Can I use private NPM registries?
Yes, the server reads your ~/.npmrc
file to determine the correct registry for each package, supporting private registries.
What are the requirements for using this server?
What are the requirements for using this server?
Node.js >= 20, Go, Python 3, Internet connection, and language servers for LSP functionality are required.
How do I search within package documentation?
How do I search within package documentation?
Use the search_package_docs
tool with the package name, query, and language specified.