Skip to main content
Glama

docs-mcp

CI Tests Coverage Python 3.8+ License: MIT Code style: black

A secure Model Context Protocol (MCP) server providing intelligent documentation search across multiple frameworks using ChromaDB vector storage.

Features

  • Semantic Search across documentation using vector embeddings

  • Multiple Frameworks supported: Python, FastAPI, React, SwiftUI, Tailwind CSS, Figma API, Figma Plugins, MDN CSS

  • ChromaDB Storage for fast, persistent vector search

  • MCP Protocol integration for Claude Code and other AI tools

  • CLI Interface for easy management and extraction

Related MCP server: mcp-server

Quick Start

  1. Setup Environment

    ./docs-mcp dev --setup
  2. Extract Documentation (choose one or more)

    ./docs-mcp extract --framework python
    ./docs-mcp extract --framework css
    ./docs-mcp extract --all
  3. Start MCP Server

    ./docs-mcp server --start
  4. Test Integration

    ./docs-mcp test --framework figma

Available Commands

Extract Documentation

./docs-mcp extract --framework python     # Python official docs
./docs-mcp extract --framework fastapi    # FastAPI documentation  
./docs-mcp extract --framework react      # React.js documentation
./docs-mcp extract --framework swiftui    # SwiftUI Apple docs
./docs-mcp extract --framework tailwind   # Tailwind CSS docs
./docs-mcp extract --framework figma      # Figma REST API docs
./docs-mcp extract --framework figma_plugin # Figma Plugin API docs
./docs-mcp extract --framework css        # MDN CSS documentation
./docs-mcp extract --all                  # Extract all frameworks

Analyze Collection

./docs-mcp analyze --stats                # Show documentation statistics

Test Integrations

./docs-mcp test --framework figma         # Test Figma integration
./docs-mcp test --all                     # Run all tests

Server Operations

./docs-mcp server --start                 # Start MCP server
./docs-mcp server --config               # Show configuration

Development

./docs-mcp dev --setup                    # Setup development environment
./docs-mcp dev --clean                    # Clean temporary files

Configuration

Set environment variables in .env:

CHROMA_DATA_DIR=/path/to/chroma/data
OPENAI_API_KEY=your_openai_key
ENVIRONMENT=development
MCP_SERVER_HOST=127.0.0.1
MCP_SERVER_PORT=8000

MCP Integration

Add to your .mcp.json:

{
  "mcpServers": {
    "docs": {
      "command": "python",
      "args": ["src/docs_mcp/server.py"],
      "env": {
        "PYTHONPATH": "src"
      }
    }
  }
}

Available MCP Tools

  • search_fastapi_docs() - Search FastAPI documentation

  • search_python_docs() - Search Python documentation

  • search_swift_ios_docs() - Search Swift/iOS documentation

  • get_security_guidelines() - Get security best practices

  • get_collection_stats() - View database statistics

  • add_project_documentation() - Add custom documentation

Framework Coverage

Framework

Documents

Status

Python

465+

✅ Complete

Tailwind CSS

195+

✅ Complete

Figma API

144+

✅ Complete

Figma Plugins

60+

✅ Complete

SwiftUI

39+

✅ Complete

FastAPI

21+

✅ Complete

React

15+

✅ Complete

CSS (MDN)

2,400+

🔄 In Progress

Requirements

  • Python 3.8+

  • OpenAI API key (for embeddings)

  • 2GB+ disk space (for ChromaDB)

License

MIT License - see LICENSE file for details.

Testing

This project maintains high test coverage with organized test suites:

  • Server Initialization Tests (4 tests): Verify server startup and imports

  • Configuration Tests (7 tests): Validate settings and environment handling

  • Tool Registration Tests (9 tests): Ensure all MCP tools are properly registered

  • CLI Tests (4 tests): Test command-line interface functionality

Running Tests Locally

# Run all tests
make test

# Run specific test categories
python -m pytest tests/test_server_initialization.py -v
python -m pytest tests/test_configuration.py -v
python -m pytest tests/test_tool_registration.py -v
python -m pytest tests/test_cli.py -v

# Run with coverage
python -m pytest tests/ --cov=src/docs_mcp --cov-report=html

Coverage Requirements

  • Minimum Coverage: 75%

  • Coverage Reports: Generated automatically in CI/CD

  • Coverage Artifacts: Available in GitHub Actions builds

  • PR Comments: Automatic coverage reporting on pull requests

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Run tests and ensure coverage: make test

  5. Submit a pull request

All pull requests must pass:

  • ✅ Server initialization tests

  • ✅ Configuration validation tests

  • ✅ Tool registration tests

  • ✅ CLI functionality tests

  • ✅ Code formatting (Black)

  • ✅ Code linting (flake8)

  • ✅ 75%+ test coverage

Support

For issues and questions, please open an issue on GitHub.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers