Connect

Connect Gemini CLI

Add Filmo to Gemini CLI with OAuth, or with a key kept in your user settings file.

WhatWhat the vendor documents
PlanPlans: not documented by the vendor.
Who adds the connectorYou, with gemini mcp add or settings.json. Admins can restrict servers with mcp.allowed in the system settings file.
Who connects/mcp auth filmo for OAuth (it needs a browser: not on a headless machine).
Administrationmcp.allowed and includeTools in the system settings.

verified on 2026-10-09: MCP servers in Gemini CLI

Use exactly this URL

Type https://app.filmo.io/api/v1/mcp exactly. Do not use the Filmo domain of your company or any other host: the OAuth metadata names this origin, and a client that compares it with what you typed rejects a different one.

  1. Add the server

    Run gemini mcp add --transport http filmo https://app.filmo.io/api/v1/mcp.

  2. Authenticate

    Run /mcp auth filmo in a session. The 401 triggers discovery and dynamic registration; consent in Filmo.

  • How Gemini CLI uses the scope of a 401 challenge: not documented by the vendor.
  • Only the *:read scopes the client asked for are checked (every read scope when it asks for none).
  • Write scopes, workflows:run and ai:ask always start unchecked, even if the client asks for them; the ones it asked for carry the label “Requested by the integration”.
  • Check by hand only what the assistant needs, and leave ai:ask unchecked unless you want it to spend AI credits.

To change the scopes later, remove the connector and add it again.

Before you approve, read Authentication.

  1. Use the user file

    Edit ~/.gemini/settings.json, never the project file .gemini/settings.json, which is the default scope of gemini mcp add and can go to git.

  2. Replace the placeholder

    Gemini CLI's documentation expands $VAR only in the env block, not in headers, so the key lives in that user-level file only.

~/.gemini/settings.json
{
  "mcpServers": {
    "filmo": {
      "httpUrl": "https://app.filmo.io/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer <your-filmo-api-key>"
      }
    }
  }
}

Keep the key out of the repository

Never paste an API key into a file that goes to version control. The examples read it from the environment or ask for it; if one leaks, revoke it and create another.

WhatWhat the vendor documents
ToolsA limit on the number of tools: not documented by the vendor.
OutputA tool output limit: not documented by the vendor.
Timetimeout per server, 600,000 ms by default.

Rental operations (21): orders:read, orders:write, availability:read, items:read, contacts:read, account:read. It includes the order writes, cancelling included. Combine it with includeTools to list only what you need, or pick a preset marked (read).

Every preset and its size are in Limits and context.

Gemini CLI offers proceed once, always allow tool, always allow server, or cancel. trust: true skips confirmations for a server: do not set it for Filmo. includeTools and excludeTools limit the tools.

The tools that must ask for approval are in Safe writes.

  • Any use of tool annotations for approval: not documented by the vendor.

Ask the assistant: “Which Filmo account am I connected to?” It should call filmo_account_get, a read tool that returns no personal data.

  • Introduction

    MCP quickstart

    Connect one assistant, check it with a read tool and choose the scopes it needs.

  • Access

    Authentication and permissions

    Authenticate with an API key in a header, or let the client sign in with OAuth 2.1. Either way the scopes decide which tools exist.

  • Guides

    Safe writes

    An assistant that can write can also write the wrong thing. Decide which tools need a person, retry without duplicating, and know what a write sets in motion.

Was this page helpful?