Skip to main content

Quick Start Guide

This guide will get you up and running with Grounded Docs in under 5 minutes. You’ll start the server, add documentation, connect your AI assistant, and perform your first search.

Prerequisites

Node.js 22 or later is required. Check your version with node --version.
If you don’t have Node.js 22, you can:
  • Use nvm: nvm install 22 && nvm use 22
  • Use Docker (no Node.js required)
  • Download from nodejs.org

Step 1: Start the Server

The fastest way to start. This command downloads and runs the latest version:
npx @arabold/docs-mcp-server@latest
You should see output like:
🚀 Docs MCP Server started
📡 Protocol: http
🌐 Web UI: http://localhost:6280
🔌 MCP endpoint: http://localhost:6280/mcp
📊 SSE endpoint: http://localhost:6280/sse
The server uses port 6280 by default. If this port is in use, specify a different one with --port 6281.

Step 2: Access the Web Interface

Open your browser and navigate to: http://localhost:6280 You’ll see the Grounded Docs web interface where you can:
  • Add new documentation sources
  • View indexing progress
  • Search documentation
  • Manage your library

Step 3: Add Your First Documentation

1

Navigate to Add Documentation

Click the “Add Documentation” button on the web interface home page.
2

Enter Documentation Details

Fill in the form:
  • Library Name: react (the identifier for this documentation)
  • Version: 18.x (or leave blank for latest)
  • URL: https://react.dev/reference/react
Click “Start Scraping”
3

Watch the Progress

The server will:
  1. Fetch the webpage and discover links
  2. Download all pages within the same domain
  3. Convert HTML to clean markdown
  4. Split content into searchable chunks
  5. Generate embeddings (if configured)
This typically takes 1-3 minutes depending on documentation size.
4

Verify Completion

When complete, you’ll see the status change to “Completed” with a summary of indexed documents.
The web interface polls for status updates every 3 seconds and displays real-time progress bars.

Step 4: Connect Your AI Assistant

Now configure your AI assistant to use the documentation server:
Edit your Claude Desktop configuration:macOS: ~/Library/Application Support/Claude/claude_desktop_config.jsonWindows: %APPDATA%\Claude\claude_desktop_config.jsonAdd this configuration:
{
  "mcpServers": {
    "docs-mcp-server": {
      "type": "sse",
      "url": "http://localhost:6280/sse"
    }
  }
}
Restart Claude Desktop.
For complete client configuration instructions, see Connecting MCP Clients.

Step 5: Test Your Setup

Search via Web Interface

First, verify the documentation is indexed:
  1. Go to http://localhost:6280
  2. Use the search box at the top
  3. Try searching: useState hook
  4. You should see relevant React documentation chunks

Search via CLI

Test from the command line:
npx @arabold/docs-mcp-server@latest search react "useState hook"
Expected output:
🔍 Searching for: "useState hook"
📚 Library: react

📄 Result 1 - React: useState
Source: https://react.dev/reference/react/useState
Relevance: 0.95

Content:
useState is a React Hook that lets you add a state variable to your component.

const [state, setState] = useState(initialState)

Call useState at the top level of your component to declare a state variable...

Query Your AI Assistant

Now ask your connected AI assistant:
How does the useState hook work in React? Please check the documentation.
Your AI will automatically use the search_docs MCP tool to query the indexed documentation and provide grounded, accurate answers.

Next Steps

Now that you’re up and running, explore more features:

Add More Documentation

Index additional libraries:
# Next.js documentation
npx @arabold/docs-mcp-server@latest scrape nextjs https://nextjs.org/docs

# npm package
npx @arabold/docs-mcp-server@latest scrape lodash npm:[email protected]

# Local files
npx @arabold/docs-mcp-server@latest scrape my-project file:///Users/me/projects/my-app

Enable Semantic Search

Configure embeddings for much better search quality:
  • OpenAI: Best quality (paid)
  • Ollama: Free, runs locally
  • Google Gemini: Good alternative

Explore Advanced Usage

Learn about:
  • Scraping GitHub repositories
  • Indexing ZIP archives
  • Managing multiple library versions
  • Job management and cancellation

Configure Deployment

Production deployment options:
  • Docker Compose for scaling
  • Authentication with OAuth2
  • Telemetry and monitoring

Common CLI Commands

Here are the most useful commands for managing your documentation:
# Show all indexed libraries
npx @arabold/docs-mcp-server@latest list

Troubleshooting

Specify a different port:
npx @arabold/docs-mcp-server@latest --port 6281
Update your MCP client configuration to use the new port.
Possible causes:
  1. Documentation not indexed yet: Check the web interface for job status
  2. Wrong library name: Use npx @arabold/docs-mcp-server@latest list to see indexed libraries
  3. Typo in search query: Try broader terms
Test with a known-good query like searching for the library name itself.
  1. Verify connection: Check your MCP client logs for connection errors
  2. Restart the client: Most MCP clients need a restart after config changes
  3. Check endpoint: Make sure the URL matches the server’s output
  4. Protocol mismatch: Ensure you’re using the correct endpoint (/mcp for streamableHttp, /sse for SSE)
Some websites block automated scraping. Solutions:
  1. Try different URLs: Use the documentation home page or sitemap
  2. Check robots.txt: The site may disallow scraping
  3. Use GitHub instead: Many projects have docs on GitHub that are easier to scrape
  4. Manual download: Download docs locally and use file:// URLs
This happens when multiple processes try to write simultaneously.Solution: If using embedded mode, launch a separate web UI that connects to the same database:
npx @arabold/docs-mcp-server@latest web --port 6281
Use the web UI for scraping while keeping embedded mode for queries.

Configuration Files

The server auto-creates a configuration file at: macOS/Linux: ~/.config/docs-mcp-server/config.yaml Windows: %APPDATA%\docs-mcp-server\config.yaml You can customize:
  • Database location
  • Server ports and host
  • Embedding model configuration
  • Search parameters
  • Scraping limits
See Configuration for full reference.

What’s Next?

You now have a working Grounded Docs setup! Your AI assistant can query accurate, up-to-date documentation instead of relying on potentially outdated training data.

Join the Community

Star the project, report issues, or contribute:
  • Report bugs and request features
  • Share your use cases
  • Contribute code improvements
  • Help improve documentation

Build docs developers (and LLMs) love