Skip to main content

Enhanced MCP server for searching documentation with OSINT vulnerability scanning, security analysis, and AWS-style deployment

Project description

Documentation Search MCP Server

CI Security Scan PyPI version Python 3.12+ License: MIT

MCP server for searching documentation, scanning dependencies for vulnerabilities, and generating project boilerplate. Works with Claude Desktop, Cursor, and other MCP clients.

Features

  • Search 100+ documentation sources with optional semantic vector search
  • Scan Python projects for vulnerabilities (Snyk, Safety, OSV)
  • Generate FastAPI and React project starters
  • Learning paths and code examples

Installation

# Recommended: use uvx (install uv from https://docs.astral.sh/uv)
uvx documentation-search-enhanced@1.6.2

# Or with pip in a virtual environment
pip install documentation-search-enhanced==1.6.2

# Optional: AI semantic search (Python 3.12 only, adds ~600MB)
pip install documentation-search-enhanced[vector]==1.6.2

Configuration

Claude Desktop

Find your uvx path: which uvx

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "documentation-search-enhanced": {
      "command": "/Users/yourusername/.local/bin/uvx",
      "args": ["documentation-search-enhanced@1.6.2"],
      "env": {
        "SERPER_API_KEY": "optional_key_here"
      }
    }
  }
}

Replace /Users/yourusername/.local/bin/uvx with your actual uvx path.

Codex CLI

# Find your uvx path first
which uvx

# Then add with full path (replace with your actual path)
codex mcp add documentation-search-enhanced \
  -- /Users/yourusername/.local/bin/uvx documentation-search-enhanced@1.6.2

# Or if uvx is in PATH:
codex mcp add documentation-search-enhanced \
  -- uvx documentation-search-enhanced@1.6.2

If you get a timeout on first run, pre-download dependencies:

uvx documentation-search-enhanced@1.6.2

Environment Variables

  • SERPER_API_KEY - Optional. Enables live web search. Without it, uses prebuilt index from GitHub Releases.
  • DOCS_SITE_INDEX_AUTO_DOWNLOAD - Set to false to disable automatic index downloads
  • DOCS_SITE_INDEX_PATH - Custom path for documentation index

Set server_config.features.real_time_search=false in your config to disable live crawling.

Semantic Search (Optional)

The [vector] extra adds semantic search using sentence-transformers (all-MiniLM-L6-v2) with hybrid reranking:

  • 50% semantic similarity (cosine)
  • 30% keyword matching
  • 20% source authority

Only works on Python 3.12 (PyTorch limitation). Python 3.13 users get keyword-based search.

To disable vector search even when installed:

semantic_search(query="FastAPI auth", libraries=["fastapi"], use_vector_rerank=False)

Available Tools

Core MCP tools:

  • semantic_search - Search documentation
  • get_docs - Fetch specific documentation
  • get_learning_path - Generate learning roadmap
  • get_code_examples - Find code snippets
  • scan_project_dependencies - Vulnerability scan
  • snyk_scan_project - Detailed Snyk analysis
  • generate_project_starter - Create project boilerplate
  • manage_dev_environment - Generate docker-compose files
  • compare_library_security - Compare library vulnerabilities

Development

git clone https://github.com/anton-prosterity/documentation-search-mcp.git
cd documentation-search-mcp
uv sync --all-extras
uv run python -m documentation_search_enhanced.main

Testing

uv run pytest --ignore=pytest-test-project  # Core tests
uv run ruff check src                       # Linting
uv run ruff format src --check              # Format check

Configuration

Use the get_current_config tool to export current settings to config.json. Validate with:

uv run python src/documentation_search_enhanced/config_validator.py

Contributing

See CONTRIBUTING.md for guidelines. Use Conventional Commits for commit messages.

License

MIT License - see LICENSE for details.

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

documentation_search_enhanced-1.6.3.tar.gz (74.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

documentation_search_enhanced-1.6.3-py3-none-any.whl (82.7 kB view details)

Uploaded Python 3

File details

Details for the file documentation_search_enhanced-1.6.3.tar.gz.

File metadata

File hashes

Hashes for documentation_search_enhanced-1.6.3.tar.gz
Algorithm Hash digest
SHA256 f740ee4a99cbfad313b093a2c0a90228b5f615bc727c6ab8ed3f421df6151702
MD5 fc3a22feb69ae74ec5ae7dd3a3d590c9
BLAKE2b-256 df7b9e6e4836bd196d3a45538af3ad747b2fbb855ad340b5bc66a8674a15ba60

See more details on using hashes here.

Provenance

The following attestation bundles were made for documentation_search_enhanced-1.6.3.tar.gz:

Publisher: release.yml on anton-prosterity/documentation-search-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file documentation_search_enhanced-1.6.3-py3-none-any.whl.

File metadata

File hashes

Hashes for documentation_search_enhanced-1.6.3-py3-none-any.whl
Algorithm Hash digest
SHA256 11ce19e0aa43639ea722e7953d001616b3dd6cee74897c37a10f201181d33712
MD5 38bbf1f757bfc75f79175a2e81069d99
BLAKE2b-256 23cae3154dd3900400c020d8a0ac0920a49493ad6d90684dd2180502cd86cdad

See more details on using hashes here.

Provenance

The following attestation bundles were made for documentation_search_enhanced-1.6.3-py3-none-any.whl:

Publisher: release.yml on anton-prosterity/documentation-search-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page