Gemini CLI + Pixeltable
Google's open-source terminal agent powered by Gemini. Give it a multimodal backend: one app.py declares tables, computed columns, indexes, and HTTP routes.
What is Gemini CLI?
Gemini CLI is Google's open-source agent for the terminal. It reads and writes files, runs shell commands, and supports MCP servers through ~/.gemini/settings.json, including remote servers via the mcp-remote bridge.
Quick start
Four steps. The agent can run all of them when you hand it the setup playbook.
- 01
Install Gemini CLI
Requires Node 20+. Sign in with a Google account for the free tier.
bashnpm install -g @google/gemini-cli gemini
- 02
Install Pixeltable
Python 3.11+ required. `pxt init` marks the project root; schema and service commands refuse an app without one.
bashpip install -U 'pixeltable[serve]' pxt init
- 03
Add the Pixeltable Skill
The Skill teaches the agent table/schema patterns, provider integrations, and anti-patterns. Source: https://github.com/pixeltable/pixeltable-skill
bashnpx skills add pixeltable/pixeltable-skill npx skills list
- 04
Ship a first app
Declare the schema, serve the HTTP routes, then experiment in the dashboard. Cloud deploy uses the same app.py: set PIXELTABLE_API_KEY, add `[[pixeltable.database]]` with `name = 'pxt://org:db'`, then `pxt db update`, `pxt schema update`, `pxt service update` in that order.
bashpxt service example --out app.py pxt schema update app.py my_app pxt service update app.py my_app pxt dashboard
MCP configuration
Pixeltable has two MCP servers. Connect the one the job needs.
| Server | Transport | What it can do |
|---|---|---|
| pixeltable-web | HTTP | Read-only docs search and integration listing. No table mutations. |
| pixeltable-developer | stdio | Inspect schemas, query tables, run a REPL against a local or Cloud catalog. |
Connect the WebMCP (docs search, no auth)
Gemini CLI reaches remote MCP servers through the mcp-remote bridge. Merge this into `~/.gemini/settings.json`:
{
"mcpServers": {
"pixeltable-web": {
"command": "npx",
"args": [
"mcp-remote",
"https://pixeltable.com/mcp"
]
}
}
}Connect the developer MCP (tables + REPL)
Install the server once per machine (step below), then add a second entry to the same file:
{
"mcpServers": {
"pixeltable-developer": {
"command": "mcp-server-pixeltable-developer"
}
}
}Install the developer MCP server
Stdio server that inspects schemas, queries tables, and runs a REPL against a local or Cloud catalog. Repository: https://github.com/pixeltable/mcp-server-pixeltable-developer
uv tool install --from git+https://github.com/pixeltable/mcp-server-pixeltable-developer.git mcp-server-pixeltable-developer # if uv is missing: # curl -LsSf https://astral.sh/uv/install.sh | sh
Example prompts
What to ask Gemini CLI once Pixeltable is set up.
Install Pixeltable and set up a table that embeds every image I insert.
Build a RAG pipeline over the PDFs in ./docs and expose a FastAPI route that answers questions.
Transcribe every video in ./media with Whisper, index the transcript, and serve semantic search over HTTP.
Add a computed column that captions each uploaded image with a vision model.
Scaffold app.py with pxt service example, declare the schema, and start the service.
Take app.py and deploy it to my Pixeltable Cloud database pxt://org:db.
Build a background-remover API: image in, background removed, POST endpoint.
Common workflows
Set up a Pixeltable app
- 1.Hand the agent https://pixeltable.com/get-started.md and let it run the playbook
- 2.It installs the pxt CLI and the Pixeltable Skill
- 3.It scaffolds app.py, declares the schema, starts the service
- 4.It verifies the endpoint with a curl request
Build a multimodal pipeline
- 1.Describe the pipeline: ingest media, run models, index results
- 2.The agent declares the table and computed columns in app.py
- 3.It adds an embedding index and an HTTP route that serves results
- 4.Insert a row; computed columns run and indexes stay current
Deploy to Pixeltable Cloud
- 1.Ask the agent to deploy app.py to Cloud
- 2.It pauses for your org slug and an sk_... API key (human step)
- 3.It runs pxt db update, pxt schema update, pxt service update in order
- 4.It calls the hosted endpoint at https://<org>-<db>.svc.pxt.run to verify
Inspect a catalog over MCP
- 1.Connect the pixeltable-developer MCP server
- 2.The agent lists tables and views in the catalog
- 3.It runs read queries and reports schema and row counts
- 4.Keep human confirmation on: the developer server can change local catalog state
Tips for success
Troubleshooting
The Pixeltable Skill is not visible after install
Reload or restart the agent. Confirm the install path with `npx skills list` and that the skill targets the current agent.
The agent does not list the MCP server
Validate the config file JSON. pixeltable-web is a remote HTTP server at https://pixeltable.com/mcp; pixeltable-developer is a stdio command, `mcp-server-pixeltable-developer`. Verify the server is installed with `mcp-server-pixeltable-developer --help`.
`pxt service check` fails: modifies catalog while imported
app.py must declare TableModel tables and FastAPIRouter routes, not run pxt.create_table() at import. Scaffold with `pxt service example`.
Cloud deploy fails with 404: UDF not found
Order is required: `pxt db update pxt://org:db`, then `pxt schema update app.py pxt://org:db`, then `pxt service update app.py pxt://org:db`.
Frequently asked questions
Can Gemini CLI set up Pixeltable on its own?
Yes. Give Gemini CLI https://pixeltable.com/get-started.md: it installs the pxt CLI, adds the Pixeltable Skill, and connects MCP. It pauses only for Cloud sign-in and the org API key, which are human steps.
Which Pixeltable MCP server should I connect?
pixeltable-web (https://pixeltable.com/mcp) is a remote server for read-only docs search. pixeltable-developer is a stdio server that inspects schemas, queries tables, and runs a REPL against a local or Cloud catalog. Connect the one the job needs.
Can Gemini CLI deploy to Pixeltable Cloud?
Yes, through the pxt CLI. Gemini CLI runs `pxt db update`, `pxt schema update`, and `pxt service update` against `pxt://org:db`. Creating the organization and the API key stays with you.
Does the Pixeltable Skill work with Gemini CLI?
Yes. `npx skills add pixeltable/pixeltable-skill` installs it for the current agent and teaches table/schema patterns, provider integrations, and anti-patterns.
Related agents
Give Gemini CLI a multimodal backend
One app.py declares tables, computed columns, indexes, and HTTP routes. Insert a row; the pipeline runs.