Skip to main content
Glama
DTufail

pipecat-docs-mcp

by DTufail

pipecat-docs-mcp

Search 317 pages of Pipecat docs + 1,028 GitHub Issues from Claude Desktop or Cursor — grounded answers, no hallucinated APIs.

License: MIT Python 3.10+ FastMCP


What it does

Indexes 8,817 chunks from the Pipecat docs and GitHub Issues, then exposes them through 4 MCP tools. Claude can answer questions about configuration, code examples, architecture concepts, and provider comparisons — with source-cited results pulled directly from the official docs and community issue threads.

Retrieval pipeline: BM25 + FAISS dense vectors → Reciprocal Rank Fusion → Cross-encoder reranker

Metric

Value

Pages indexed

317

GitHub Issues indexed

1,028

Total chunks

8,817

Mean Reciprocal Rank

0.863

Recall@5

100%

Avg query latency

35ms


Tools

Tool

Use it when...

search_pipecat_docs

General questions, config options, error messages

get_example_code

You need a runnable Python pipeline

explain_concept

"What is a Frame / Pipeline / VAD / Transport?"

compare_services

Choosing between STT, TTS, or transport providers


Quickstart

1. Clone and install

git clone https://github.com/DTufail/pipecat-docs-mcp.git
cd pipecat-docs-mcp
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

2. Build the search index

data/chunks.jsonl is included. This builds the BM25 and FAISS indexes (~2 min):

python indexer.py

3. (Optional) Index GitHub Issues

Adds 1,028 issues from pipecat-ai/pipecat for error-driven retrieval:

export GITHUB_TOKEN="your_token_here"   # optional but recommended (5k req/hr vs 60)
python github_indexer.py
python indexer.py                        # rebuild indexes with issues merged

4. Connect to Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "pipecat-docs": {
      "command": "/absolute/path/to/.venv/bin/python3",
      "args": ["/absolute/path/to/pipecat-docs-mcp/server.py"]
    }
  }
}

Use the Python binary from your virtual environment, not system Python. Restart Claude Desktop after saving.

5. Connect to Cursor (HTTP)

fastmcp run server.py:mcp --transport http --port 8000

Point your MCP client at http://localhost:8000/mcp.


Project structure

pipecat-docs-mcp/
├── server.py              # FastMCP server — 4 MCP tools
├── retrieval.py           # Hybrid search (BM25 + FAISS + RRF + reranker)
├── indexer.py             # Builds BM25, FAISS, and metadata indexes
├── github_indexer.py      # Fetches GitHub Issues → data/github_issues.jsonl
├── config.py              # Paths and model config
├── test_server.py         # In-process tests for all 4 tools
├── test_retrieval.py      # Retrieval eval — MRR, Recall@5, latency (17 queries)
├── requirements.txt
├── pipecat-scraper/
│   ├── scraper.py         # Sitemap-driven scraper (317 pages, resumable)
│   ├── utils.py           # HTML parsing and chunking
│   ├── audit.py           # Per-page extraction audit
│   └── config.py
└── data/
    ├── chunks.jsonl        # 6,936 scraped doc chunks (included)
    ├── chunk_metadata.json # Title, section, URL, content type per chunk
    ├── bm25_index.pkl      # Generated by indexer.py (gitignored)
    ├── faiss_index.bin     # Generated by indexer.py (gitignored)
    ├── embeddings.npy      # Generated by indexer.py (gitignored)
    └── github_issues.jsonl # Generated by github_indexer.py (gitignored)

Re-scraping the docs

To refresh against a newer Pipecat release:

cd pipecat-scraper
python scraper.py      # scrapes docs.pipecat.ai → data/chunks.jsonl
cd ..
python indexer.py      # rebuilds indexes

Roadmap

  • Auto-refresh on new Pipecat releases via GitHub webhook

  • Expanded coverage — LiveKit and Vapi docs


License

MIT

-
license - not tested
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/DTufail/pipecat-docs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server