MCP server for XenoDocs - Access up-to-date documentation for newly released packages using AI.
Project description
XenoDocs MCP - Up-to-date Documentation For Any Library
❌ 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 fortop_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 inquery(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:
- For uv projects: Make sure you're in a directory with a
pyproject.tomlfile - 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
- Restart your MCP client completely
- Check that your installation method is working by running the command manually
- Check client output/logs for MCP connection errors
- Verify you have the correct Python version (>=3.10)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xenodocs_mcp_server-0.1.5.tar.gz.
File metadata
- Download URL: xenodocs_mcp_server-0.1.5.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3db3d516a93957ae0f562e6df6c80911ea42fcfd1dce24845cf042943554c735
|
|
| MD5 |
fedc18e63213498a141fb569a35a79d2
|
|
| BLAKE2b-256 |
a4b57178db46c5efbb792910be87bc18fff9f5cab316724db6cb2e79c5cfbeac
|
File details
Details for the file xenodocs_mcp_server-0.1.5-py3-none-any.whl.
File metadata
- Download URL: xenodocs_mcp_server-0.1.5-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
183973e7ed24af9ae9461414de8fb6fd4a831958a737919bb12f9a8501deb53d
|
|
| MD5 |
2e7fb3c37a42379697e70ce8d466ab1d
|
|
| BLAKE2b-256 |
744c12f716b2aa0e5976d4919e5408e6c1bebbb4d6767250a6492f1601ccaaa5
|