Skip to main content

XenoDocs MCP - Up-to-date Documentation For Any Library

Website PyPI Version MIT licensed

❌ Without XenoDocs

LLMs rely on outdated or generic information about the libraries you use. You get:

  • ❌ Code examples are outdated and based on year-old training data
  • ❌ Hallucinated APIs that don't even exist
  • ❌ Generic answers for old package versions

✅ With XenoDocs

XenoDocs MCP pulls up-to-date, version-specific documentation and code examples straight from the source — and places them directly into your prompt.

Tell your AI assistant to search for library documentation:

Search for "authentication middleware" in the FastAPI library documentation
Find examples of async functions in the httpx library

XenoDocs fetches up-to-date code examples and documentation right into your LLM's context.

  • 1️⃣ Write your prompt naturally
  • 2️⃣ Ask for specific library documentation
  • 3️⃣ Get working code answers

No tab-switching, no hallucinated APIs that don't exist, no outdated code generation.

�️ Installation

Requirements

  • Python >= 3.10
  • VS Code, Cursor, Claude Desktop, or another MCP Client
  • XenoDocs API Key (Get yours by creating an account at xenodocs.com/account/api-keys

Method 1: Using uv (Recommended)

uv add xenodocs-mcp-server

Method 2: Using pip

pip install xenodocs-mcp-server
Install in VS Code

Add this to your VS Code MCP config file (.vscode/mcp.json). See VS Code MCP docs for more info.

VS Code Local Server Connection

{
  "servers": {
    "xenodocs-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "xenodocs-mcp-server"
      ],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  },
  "inputs": []
}

Alternative configurations:

Using uv project:

{
  "servers": {
    "xenodocs-mcp-server": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "xenodocs-mcp-server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  },
  "inputs": []
}

Using Python module:

{
  "servers": {
    "xenodocs-mcp-server": {
      "type": "stdio",
      "command": "python",
      "args": ["-m", "xenodocs_mcp_server.server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  },
  "inputs": []
}
Install in Cursor

Add to your Cursor MCP configuration (~/.cursor/mcp.json):

{
  "mcpServers": {
    "xenodocs": {
      "command": "uvx",
      "args": ["xenodocs-mcp-server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
Install in Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "xenodocs": {
      "command": "uvx",
      "args": ["xenodocs-mcp-server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
Install in Windsurf

Add to your Windsurf MCP configuration:

{
  "mcpServers": {
    "xenodocs": {
      "command": "uvx",
      "args": ["xenodocs-mcp-server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}
Install in Zed

Add to your Zed settings.json:

{
  "context_servers": {
    "xenodocs": {
      "source": "custom",
      "command": "uvx",
      "args": ["xenodocs-mcp-server"],
      "env": {
        "XENODOCS_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

🔨 Available Tools

XenoDocs MCP provides the following tools that LLMs can use:

  • search_library_name: Search for matching library names in the XenoDocs documentation database.

    • library_name (required): The name or partial name of the library to search for
    • top_k (optional): Maximum number of matching libraries to return (default: 3, max: 20)
  • search_library: Search for specific information within a library's documentation.

    • library_name (required): The exact name of the library to search in
    • query (required): The search query describing what you're looking for

💻 Development

Clone the project and install dependencies:

git clone https://github.com/Xenodocs/xenodocs-mcp-server.git
cd xenodocs-mcp-server
uv sync

Set your API key:

export XENODOCS_API_KEY="your-api-key"

Run the server:

uv run xenodocs-mcp-server

Testing with MCP Inspector

npx @modelcontextprotocol/inspector uv run xenodocs-mcp-server

🚨 Troubleshooting

Command Not Found Errors

If you get "command not found" errors:

  1. For uv projects: Make sure you're in a directory with a pyproject.toml file
  2. For pip installation: Use the Python module method:
    {
      "command": "python",
      "args": ["-m", "xenodocs_mcp_server.server"]
    }
    
API Key Not Found Error

If you see WARNING: XENODOCS_API_KEY not set!, make sure you've configured the API key in your MCP client configuration or as a system environment variable.

General MCP Client Errors
  1. Restart your MCP client completely
  2. Check that your installation method is working by running the command manually
  3. Check client output/logs for MCP connection errors
  4. Verify you have the correct Python version (>=3.10)

Metadata

Release files for xenodocs-mcp-server 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xenodocs-mcp-server 0.1.5
File Size Uploaded
xenodocs_mcp_server-0.1.5.tar.gz 6.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for xenodocs-mcp-server 0.1.5
File Interpreter ABI Platform
xenodocs_mcp_server-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 12.9 kB

Release files / xenodocs_mcp_server-0.1.5.tar.gz

Download URL xenodocs_mcp_server-0.1.5.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3db3d516a93957ae0f562e6df6c80911ea42fcfd1dce24845cf042943554c735
BLAKE2b-256 checksum
How to use checksums
a4b57178db46c5efbb792910be87bc18fff9f5cab316724db6cb2e79c5cfbeac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / xenodocs_mcp_server-0.1.5-py3-none-any.whl

Download URL xenodocs_mcp_server-0.1.5-py3-none-any.whl
Size 6.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
183973e7ed24af9ae9461414de8fb6fd4a831958a737919bb12f9a8501deb53d
BLAKE2b-256 checksum
How to use checksums
744c12f716b2aa0e5976d4919e5408e6c1bebbb4d6767250a6492f1601ccaaa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page