npm package: @cdugo/docs-fetcher-mcp
Description: MCP server that fetches package documentation from multiple language ecosystems for LLMs like Claude without requiring API keys
Author: cdugo
Latest version: 1.0.0

# 📚 DocsFetcher MCP Server

[![smithery badge](https://smithery.ai/badge/@cdugo/mcp-get-docs)](https://smithery.ai/server/@cdugo/mcp-get-docs)
[![npm version](https://img.shields.io/npm/v/@cdugo/docs-fetcher-mcp.svg)](https://www.npmjs.com/package/@cdugo/docs-fetcher-mcp)
[![npm downloads](https://img.shields.io/npm/dm/@cdugo/docs-fetcher-mcp.svg)](https://www.npmjs.com/package/@cdugo/docs-fetcher-mcp)

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

### Using Smithery Deployment

The DocsFetcher MCP Server is deployed on Smithery! You can use it directly without any installation:

1. Configure Claude Desktop or Cursor IDE to use the Smithery deployment (see configuration sections below)
2. Start using the tools in your Claude conversations

### Using npm

The easiest way to install the DocsFetcher MCP Server is via npm:

```bash
# Install globally
npm install -g @cdugo/docs-fetcher-mcp

# Run the installation script to configure Claude Desktop and/or Cursor IDE
docs-fetcher-mcp-install
```

### Manual Installation

#### Prerequisites

- 📋 Node.js 18 or later

```bash
git clone https://github.com/cdugo/package-documentation-mcp
cd package-documentation-mcp
npm install
npm run build
```

## 🏃‍♂️ Running Locally

Once installed, you can run the server locally with:

```bash
# From the project root directory
npm start
```

For development with auto-restart on file changes:

```bash
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:

```bash
PORT=8080 npm start
```

## ⚙️ Configuration

### Claude Desktop

1. Open Claude Desktop → Settings → Developer
2. Click "Edit Config" and add:

```json
{
  "mcpServers": {
    "docsFetcher": {
      "command": "npx",
      "args": [
        "-y",
        "@smithery/cli@latest",
        "run",
        "@cdugo/mcp-get-docs",
        "--config",
        "'{}'"
      ]
    }
  }
}
```

### Cursor IDE Configuration

1. Open Cursor IDE → Settings → MCP -> Add New MCP Servier
   Add:
   Name: docsFetcher
   Command: npx -y @smithery/cli@latest run @cdugo/mcp-get-docs --config "{}"

```

## 🛠️ Available Tools

1. **fetch-url-docs**: 🔗 Fetch docs from a specific URL
2. **fetch-package-docs**: 📦 Fetch docs for a package with optional language specification
3. **fetch-library-docs**: 🧠 Smart tool that works with either package name or URL
4. **fetch-multilingual-docs**: 🌍 Fetch docs for a package across multiple language ecosystems

## 📝 Available Prompts

1. **summarize-library-docs**: 📚 Create a comprehensive library summary
2. **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
```