About PDF Search for Zed
PDF Search for Zed is a Zed extension that semantically searches PDF content and adds relevant passages to Zed's AI Assistant context. It uses an MCP server and currently requires an OpenAI API key for embeddings, with manual index creation before use.
Key features
- 01Semantic search across PDFs
- 02Adds passages to AI context
- 03Supports multiple PDFs
- 04Supports additional file formats
Use cases
- 01Find relevant sections in a PDF
- 02Supply document passages to Zed's AI Assistant
MCP support
The extension includes a Python-based MCP server that searches indexed documents and supplies matching passages for Zed's AI Assistant. An index must be built manually before use.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEPDF Search for Zed
A document search extension for Zed that lets you semantically search through a PDF document and use the results in Zed's AI Assistant.
Prerequisites
This extension currently requires:
- An
OpenAIAPI key (to generate embeddings) uvinstalled on your system
Note: While the current setup requires an OpenAI API key for generating embeddings, we plan to implement a self-contained alternative in future versions. Community feedback will help prioritize these improvements.
Quick Start
- Clone the repository
git clone https://github.com/freespirit/pdfsearch-zed.git
- Set up the Python environment for the MCP server:
cd pdfsearch-zed/pdf_rag
uv venv
uv sync
-
Install Dev Extension in Zed
-
Build the search db
cd /path/to/pdfsearch-zed/pdf_rag
echo "OPENAI_API_KEY=sk-..." > src/pdf_rag/.env
# This may take a couple of minutes, depending on the documents' size
# You can provide multiple files and directories as arguments.
# - files would be chunked.
# - a directory would be considered as if its files contains chunks.
# E.g. they won't be further split.
uv run src/pdf_rag/rag.py build "file1.pdf" "dir1" "file2.md" ...
- Configure Zed
"context_servers": {
"pdfsearch-context-server": {
"settings": {
"extension_path": "/path/to/pdfsearch-zed"
}
}
}
Usage
- Open Zed's AI Assistant panel
- Type
/pdfsearchfollowed by your search query - The extension will search the PDF and add relevant sections to the AI Assistant's context
Future Improvements
- Self-contained vector store
- Self-contained embeddings
- Automated index building on first run
- Configurable result size
- Support for multiple PDFs
- Optional: Additional file formats beyond PDF
Project Structure
pdf_rag/: Python-based MCP server implementationsrc/: Zed extension codeextension.tomlandCargo.toml: Zed extension configuration files
Known Limitations
- Manual index building is required before first use
- Requires external services (OpenAI)
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.