J
package-documentation-mcp
...
Created 2/26/2025bycdugo
Language:
JavaScript
Stars:
6
Forks:
0
š DocsFetcher MCP Server
An MCP server that fetches package documentation from multiple language ecosystems for LLMs like Claude without requiring API keys.
āØ Features
- š Supports multiple programming languages (JavaScript, Python, Java, .NET, Ruby, PHP, Rust, Go, Swift)
- š¦ Fetches documentation for packages by name or URL
- š Crawls documentation sites to extract comprehensive information
- š Extracts README, API docs, code examples, and repository info
- š§ Provides structured data for LLM summarization
- š¬ Includes specialized prompts for documentation analysis
- š No API key required - works natively with Claude Desktop and Cursor IDE
š Installation
Claude Desktop
- Open Claude Desktop ā Settings ā Developer
- Click "Edit Config" and add:
{
"mcpServers": {
"docsFetcher": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@cdugo/mcp-get-docs",
"--config",
"'{}'"
]
}
}
}
Cursor IDE Configuration
- Open Cursor IDE ā Settings ā MCP -> Add New MCP Servier
- Add:
Name: docsFetcher
Command: npx -y @smithery/cli@latest run @cdugo/mcp-get-docs --config "{}"
Prerequisites
- š Node.js 18 or later
šāāļø Running Locally
git clone https://github.com/cdugo/package-documentation-mcp
cd package-documentation-mcp
npm install
npm run build
Once installed, you can run the server locally with:
# From the project root directory
npm start
For development with auto-restart on file changes:
npm run dev
The server will start on the default port (usually 3000). You should see output like:
š DocsFetcher MCP Server running!
š Ready to fetch documentation
To specify a custom port:
PORT=8080 npm start
š ļø Available Tools
- fetch-url-docs: š Fetch docs from a specific URL
- fetch-package-docs: š¦ Fetch docs for a package with optional language specification
- fetch-library-docs: š§ Smart tool that works with either package name or URL
- fetch-multilingual-docs: š Fetch docs for a package across multiple language ecosystems
š Available Prompts
- summarize-library-docs: š Create a comprehensive library summary
- explain-dependency-error: š Generate dependency error explanations
š” Example Queries
Basic Library Information
- "What is Express.js and how do I use it?"
- "Tell me about the React library"
- "How do I use requests in Python?"
Multi-language Support
- "Show me documentation for lodash in JavaScript"
- "Compare pandas in Python and data.table in R"
Using Tools
- "@fetch-package-docs with packageName='express' and language='javascript'"
- "@fetch-package-docs with packageName='requests' and language='python'"
- "@fetch-multilingual-docs with packageName='http' and languages=['javascript', 'python', 'rust']"
Using Prompts
- "@summarize-library-docs with libraryName='express'"
- "@explain-dependency-error with packageName='dotenv'"
ā Troubleshooting
Local Installation
- Server not showing up: ā Verify absolute path in configuration
- Connection errors: š Restart Claude Desktop or Cursor IDE
- Fetch failures: ā ļø Some packages may have non-standard documentation
- Language support: š If a language isn't working, try using the package's direct URL
š License
MIT
Last updated: 3/5/2025