Claude meets Pixeltable. Multimodal AI data infrastructure - not (just) a database - now available as an MCP server.
You must have uv installed. If you don't have it or aren't sure, run:
curl -LsSf https://astral.sh/uv/install.sh | shOr consult the uv installation guide.
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.
# 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-developergit clone https://github.com/pixeltable/mcp-server-pixeltable-developer
cd mcp-server-pixeltable-developer
uv syncAdd 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"
      }
    }
  }
}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" } } } }
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
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
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
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.
- 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
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
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
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
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. ☕