loading…
Search for a command to run...
loading…
GitScribe is an MCP server that enables intelligent web scraping of Git-based documentation with RAG capabilities, helping code assistants efficiently extract a
GitScribe is an MCP server that enables intelligent web scraping of Git-based documentation with RAG capabilities, helping code assistants efficiently extract and retrieve information from documentation websites and repositories.
Scribing knowledge from the Git universe
GitScribe is a powerful Model Context Protocol (MCP) server that enables intelligent web scraping of Git-based documentation with Retrieval Augmented Generation (RAG) capabilities. This tool helps code assistants and developers efficiently extract, process, and retrieve information from documentation websites, GitHub repositories, and other Git-based resources to accelerate application development.
# Install from PyPI (recommended)
pip install gitscribe-mcp
# Or install with uv (recommended for development)
uv sync
# Or install with pip for development
pip install -e .
# Or install dependencies manually
pip install -r requirements-gitscribe.txt
# Check if installation was successful
gitscribe-mcp --help
# Test the server (should start without errors)
gitscribe-mcp server --help
# Start the server for use with AI assistants
gitscribe-mcp server
# Or run directly with uv
uv run gitscribe-mcp server
# Scrape Python documentation
gitscribe-mcp scrape https://docs.python.org --depth 2 --output python_docs.json
# Scrape a GitHub repository
gitscribe-mcp scrape https://github.com/microsoft/vscode --formats md html rst
# Index scraped documents into the RAG system
gitscribe-mcp index python_docs.json
# Search indexed documentation
gitscribe-mcp search "async await python examples"
gitscribe-mcp search "VSCode extension API" --limit 5
# Get repository information and structure
gitscribe-mcp repo-info https://github.com/microsoft/vscode
GitScribe is designed to work as a Model Context Protocol (MCP) server with AI assistants like Claude Desktop. Once installed and configured, you can interact with it naturally through your AI assistant.
Scraping Documentation:
"Can you scrape the FastAPI documentation and index it for me?"
Searching for Information:
"Search the indexed documentation for examples of async database operations"
Getting Code Examples:
"Show me code examples for implementing JWT authentication in Python"
Repository Analysis:
"Analyze the structure of the React repository and tell me about its testing setup"
When configured as an MCP server, GitScribe provides these tools to AI assistants:
GitScribe provides the following MCP tools:
scrape_documentationScrape and index documentation from a Git repository or website.
Parameters:
url (string, required): Repository or documentation URLdepth (integer, optional): Maximum crawling depth (default: 3)formats (array, optional): Supported document formatssearch_documentationSearch indexed documentation using semantic search.
Parameters:
query (string, required): Natural language search querylimit (integer, optional): Maximum number of results (default: 10)filter (object, optional): Filter criteria (language, framework, etc.)get_code_examplesExtract code examples related to a specific topic.
Parameters:
topic (string, required): Programming topic or conceptlanguage (string, optional): Programming language filterframework (string, optional): Framework or library filterGitScribe can be configured through environment variables:
# Server settings
export GITSCRIBE_DEBUG=true
export GITSCRIBE_MAX_DEPTH=3
export GITSCRIBE_MAX_PAGES=100
# RAG system settings
export GITSCRIBE_EMBEDDING_MODEL="sentence-transformers/all-MiniLM-L6-v2"
export GITSCRIBE_CHUNK_SIZE=1000
export GITSCRIBE_CHROMA_DIR="./chroma_db"
# Rate limiting
export GITSCRIBE_REQUEST_DELAY=1.0
export GITSCRIBE_CONCURRENT_REQUESTS=5
# Git platform authentication (optional)
export GITHUB_TOKEN="your_github_token"
export GITLAB_TOKEN="your_gitlab_token"
To use GitScribe as an MCP server with Claude Desktop, you need to configure it in your Claude Desktop settings.
First, install the package from PyPI:
pip install gitscribe-mcp
Add the following configuration to your Claude Desktop config file:
MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"gitscribe": {
"command": "gitscribe-mcp",
"args": ["server"],
"env": {
"GITSCRIBE_DEBUG": "false",
"GITSCRIBE_MAX_DEPTH": "3",
"GITSCRIBE_CHROMA_DIR": "./chroma_db"
}
}
}
}
{
"mcpServers": {
"gitscribe": {
"command": "uvx",
"args": ["gitscribe-mcp", "server"],
"env": {
"GITSCRIBE_DEBUG": "false"
}
}
}
}
{
"mcpServers": {
"gitscribe": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/gitscribe",
"run",
"gitscribe-mcp",
"server"
],
"env": {
"GITSCRIBE_DEBUG": "true"
}
}
}
}
After adding the configuration:
uv sync
uv build
uv publish
Use the MCP Inspector for debugging:
# Debug the PyPI package
npx @modelcontextprotocol/inspector gitscribe-mcp server
# Debug local development version
npx @modelcontextprotocol/inspector uv --directory /path/to/gitscribe run gitscribe-mcp server
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=gitscribe
# Run specific tests
uv run pytest tests/test_scraper.py
.md), HTML (.html), reStructuredText (.rst).py), JavaScript (.js), TypeScript (.ts), Java (.java), C++ (.cpp), Go (.go), Rust (.rs)┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ MCP Client │───▶│ MCP Server │───▶│ Web Scraper │
│ (Code Assistant)│ │ (GitScribe) │ │ (Beautiful Soup)│
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ RAG System │
│ - ChromaDB │
│ - Embeddings │
│ - Search │
└─────────────────┘
This project is licensed under the MIT License.
GitScribe - Making documentation accessible to AI assistants, one commit at a time! 🚀
Выполни в терминале:
claude mcp add gitscribe -- npx Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.