Pixeltable MCP Server (Developer Edition)
An experimental multimodal AI data infrastructure that allows users to manage tables, run local AI analysis like object detection, and automate data workflows. It includes an interactive Python REPL and introspection tools for exploring Pixeltable functions directly through Claude or Cursor.
README
Pixeltable MCP Server (Developer Edition)
⚠️ WARNING: THIS IS AN EXPERIMENTAL DEVELOPMENT TOOL. DO NOT USE WITH IMPORTANT DATA. THIS IS FOR DEMO PURPOSES ONLY UNTIL FURTHER NOTICE.
Claude meets Pixeltable. Multimodal AI data infrastructure - not (just) a database - now available as an MCP server.
⚡ Quick Start
Prerequisites
You must have uv installed. If you don't have it or aren't sure, run:
curl -LsSf https://astral.sh/uv/install.sh | sh
Or consult the uv installation guide.
Claude Code Installation (Easiest!)
Just tell Claude:
"Install https://github.com/pixeltable/mcp-server-pixeltable-developer as a uv tool and add it to your MCPs"
That's it! Claude will handle the installation and configuration for you.
Manual Installation with uv tool
# Install as a global tool
uv tool install --from git+https://github.com/pixeltable/mcp-server-pixeltable-developer.git mcp-server-pixeltable-developer
# Add to Claude Code
claude mcp add pixeltable mcp-server-pixeltable-developer
# Update to latest version
uv tool install --force --from git+https://github.com/pixeltable/mcp-server-pixeltable-developer.git mcp-server-pixeltable-developer
Installation from source (For development)
git clone https://github.com/pixeltable/mcp-server-pixeltable-developer
cd mcp-server-pixeltable-developer
uv sync
Configuration for Claude Desktop
⚠️ Note: If you experience issues with Claude Desktop configuration, you may need to restart Claude Desktop after adding the MCP server configuration.
Add to your Claude Desktop config:
{
"mcpServers": {
"pixeltable": {
"command": "mcp-server-pixeltable-developer",
"env": {
"PIXELTABLE_HOME": "/Users/{your-username}/.pixeltable",
"PIXELTABLE_FILE_CACHE_SIZE_G": "10"
}
}
}
}
Or if running from source:
{
"mcpServers": {
"pixeltable": {
"command": "uv",
"args": [
"run",
"--directory",
"{path-to-your-repo}",
"python",
"-m",
"mcp_server_pixeltable_stio"
],
"env": {
"PIXELTABLE_HOME": "/Users/{your-username}/.pixeltable",
"PIXELTABLE_FILE_CACHE_SIZE_G": "10"
}
}
}
}
Configuration for Cursor
Cursor users can add the Pixeltable MCP server to their .cursorrules file or configure it through Cursor's MCP settings:
-
Via Cursor Settings:
- Open Cursor Settings
- Navigate to "Features" → "Model Context Protocol"
- Add a new MCP server with command:
mcp-server-pixeltable-developer
-
Via JSON Configuration: Add to your Cursor MCP configuration:
{ "mcpServers": { "pixeltable": { "command": "mcp-server-pixeltable-developer", "env": { "PIXELTABLE_HOME": "/Users/{your-username}/.pixeltable", "PIXELTABLE_FILE_CACHE_SIZE_G": "10" } } } } -
For development/source installations:
{ "mcpServers": { "pixeltable": { "command": "uv", "args": [ "run", "--directory", "{path-to-your-repo}", "python", "-m", "mcp_server_pixeltable_stio" ], "env": { "PIXELTABLE_HOME": "/Users/{your-username}/.pixeltable", "PIXELTABLE_FILE_CACHE_SIZE_G": "10" } } } }
💡 Examples
Create and populate a table:
Claude: Create a table for my screenshots
Claude: Add object detection to all images
Claude: Transcribe any audio files with Whisper
Local AI analysis:
Claude: Use Ollama to analyze these images
Claude: Generate embeddings for semantic search
Claude: Run YOLOX object detection on my photos
Data workflows:
Claude: Show me all images with cars detected
Claude: Find documents mentioning "AI"
Claude: Create a summary of this video
🚀 New Features
Configurable Datastore Path
Change where Pixeltable stores its data:
Claude: Set datastore to ~/my-pixeltable-data
Claude: Get current datastore configuration
The datastore path can be configured through:
- Environment variable
PIXELTABLE_HOME(highest priority) - Persistent configuration file (survives restarts)
- System default
~/.pixeltable
Interactive Python REPL
Execute Python code with PixelTable pre-loaded in a persistent session:
Claude: execute_python("tables = pxt.list_tables(); print(f'Found {len(tables)} tables')")
Claude: introspect_function("pxt.create_table") # Get docs and signature
Claude: list_available_functions("pxt") # Discover PixelTable functions
Bug Logging & Testing
Structured logging for testing and bug discovery:
Claude: log_bug("Cannot save images", severity="high", function_name="pxt.create_table")
Claude: log_missing_feature("No image resize function", use_case="Standardize image sizes")
Claude: log_success("Table creation works", approach="Used schema parameter")
Claude: generate_bug_report() # Get summary of all issues
Bug logs are saved to pixeltable_testing_logs/ in both Markdown and JSON formats.
Why These Features?
- REPL: Explore PixelTable dynamically without rebuilding the MCP
- Introspection: Discover functions and get docs on-demand
- Bug Logging: Document issues systematically during development
- Future-proof: Adapts to PixelTable API changes automatically
🔧 Troubleshooting
Claude Desktop Issues
If you're having trouble with Claude Desktop:
- Restart Claude Desktop after adding the MCP server configuration
- Check that the path to your Pixeltable home directory is correct
- Ensure you have the latest version of Claude Desktop
- Verify that
uvis installed and accessible from your PATH
Cursor Issues
If Cursor isn't recognizing the MCP server:
- Make sure you have MCP support enabled in Cursor settings
- Restart Cursor after configuration changes
- Check the Cursor logs for any error messages
Installation Issues
If installation fails:
- Ensure you have Python 3.10+ installed
- Make sure
uvis installed:curl -LsSf https://astral.sh/uv/install.sh | sh - Try installing from source if the GitHub installation fails
Getting Help
If you encounter issues:
- Use the built-in bug logging:
Claude: log_bug("description", severity="high") - Check the generated bug report:
Claude: generate_bug_report() - File an issue on the GitHub repository
Built while having coffee. ☕
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.