Hackathon build Updated on

Hackathon build (Agentic Cinema, 8 to 10 September 2026); outcome not recorded.

Three agents on Cloud Run in three days, two integrated with vendor MCP servers

For Agentic Cinema I built 3 production agents on Cloud Run in 3 days, 2 integrated with vendor MCP servers (ClickHouse, Grafana); each shipped live with a demo video, and the Grafana agent writes annotations and incidents back to a real system.

3 in 3 daysagents on Cloud Run, 2 over vendor MCP servers

Context

Agentic Cinema ran three sponsor tracks (Parallel, ClickHouse, Grafana Labs). I entered all three with one architecture: Google ADK sequential agents on Gemini 2.5 Pro and Flash via Vertex AI, FastAPI on Cloud Run, Secret Manager, and server-sent events streaming every tool call to the UI.

Constraint: three days, each submission live with a demo video, and the agents had to act on real external systems, not mocks.

Problem

Three film-industry workflows (script legal clearance, audience retention analysis, VFX incident triage) each needed an agent that could read from and write back to a real system in one sitting.

What I built

Clearance Desk runs the five-stage pipeline against the Parallel Search API directly (no MCP) and diffs revisions by (category, normalised text) so unchanged items keep their verdicts.

Retention Room is an analyst agent that talks to the official mcp-clickhouse server over stdio, read-only, against ClickHouse Cloud with SummingMergeTree views and per-second retention curves; I wrote an eight-episode, 107-scene series and an audience simulator to have data worth querying.

Shot Deadline is a VFX war-room agent on mcp-grafana v1.3.0 that queries Prometheus and Loki and writes back annotations and incidents to Grafana Cloud, fed by a real OpenTelemetry exporter over OTLP.

Architecture

One ADK SequentialAgent skeleton per track; MCPToolset clients for ClickHouse and Grafana; Cloud Run with min-instances and no CPU throttling so the telemetry simulator keeps emitting.

  1. FastAPI on Cloud Run, SSE streams every tool call to the UI
  2. Google ADK SequentialAgent on Gemini 2.5 (Vertex AI)
  3. Tools: Parallel Search API (direct), MCPToolset to mcp-clickhouse (stdio, read-only), MCPToolset to mcp-grafana v1.3.0
  4. Real systems: ClickHouse Cloud; Grafana Cloud (Mimir, Loki, IRM) fed by an OpenTelemetry exporter
  5. Write-back: Grafana annotations and incidents
One skeleton, three tool sets: the agent streams each tool call to the browser; two of the three agents reach their systems through vendor MCP servers, and the Grafana one writes back.

The MCP version conflict: ADK pins mcp<2, mcp-clickhouse needs mcp>=2

The ClickHouse MCP server runs as an isolated stdio process in its own virtual environment inside the container image, so the agent process keeps ADK’s mcp<2 pin while the server gets the mcp>=2 it needs. The two talk over stdio, which is why the pins never meet.

Stack Python, Google ADK, Gemini 2.5, Vertex AI, FastAPI, Cloud Run, MCP, ClickHouse, Grafana, Prometheus, Loki, OpenTelemetry

Results

Three submissions, each live on Cloud Run with a demo video, in three days. Two agents act on production-grade external systems through vendor MCP servers, and one of them writes back (annotations, incidents).

Agentic Cinema submissions, 8 to 10 September 2026
AgentTrackReaches its system throughWrites back
Clearance DeskParallelParallel Search API, directno (memo)
Retention RoomClickHousemcp-clickhouse over stdio via MCPToolset, read-onlyno
Shot DeadlineGrafana Labsmcp-grafana v1.3.0 via MCPToolsetyes: annotations, incidents

The Cloud Run URLs may be torn down after the event; the YouTube demo is the durable link.

What I'd do differently

Letting the model write its own search queries made Clearance Desk’s results drift between runs and broke the revision diff; templated queries per category fixed it. Next time I would template the queries from the first run and check the MCP server’s dependency pins before choosing the framework, because the mcp<2 conflict cost hours I had budgeted for evaluation.