For the best experience, please enable JavaScript in your browser.

Skip to main content

Gemini social media automation. Four ways in.

Gemini social media automation, end to end: connect Google Gemini to SocialFaktory from the Gemini app, Gemini Enterprise, the CLI extension or the API, then ask it to price a job, generate video and text, and schedule posts on every channel you have connected.

An AI agent asks for two videos about a serum, gets the price first, generates them, writes the posts and schedules them for Thursday at 11:30 on every connected channel.

Gemini

Tools
21
Scopes
3
Channels
7
Endpoint
1
Posts to

Pick the Gemini you use

In the Gemini app, add the endpoint below as a custom app: it registers itself and signs you in, so there is no token to mint. In Gemini Enterprise, an administrator adds it as a custom MCP server over Streamable HTTP with the scopes read, generate and publish. On the command line, install the extension and the CLI runs the sign-in, consent screen included. For a managed agent on the Gemini API, name the endpoint as a server tool with a token you minted in the Authorization header.

Endpoint
http
POST https://www.socialfaktory.com/mcp

Gemini CLI extension

bash
gemini extensions install https://github.com/socialfaktory/socialfaktory-gemini-extension

Gemini API server tool

json
{
"type": "mcp_server",
"name": "socialfaktory",
"url": "https://www.socialfaktory.com/mcp",
"headers": { "Authorization": "Bearer sfp_…" }
}

What the agent can do

21 tools, grouped by what they touch. Every tool names the scope it needs, and a token without that scope is refused before the tool runs.

Reading what you have

  • list_brandsReadFree
  • list_channelsReadFree
  • get_channel_requirementsReadFree
  • list_formatsReadFree
  • get_walletReadFree

Making something new

  • quote_generationReadFree
  • create_generationGenerateSpends credits
  • generate_textGenerateSpends credits
  • check_referenceReadFree
  • list_actorsReadFree

Reading results

  • get_generationReadFree
  • list_generationsReadFree
  • get_text_generationReadFree
  • list_mediaReadFree

Bringing your own file

  • create_uploadGenerateFree
  • complete_uploadGenerateFree
  • get_uploadReadFree

Publishing

  • create_postsPublishFree
  • send_postPublishFree
  • delete_postPublishFree
  • list_postsReadFree

How permissions work

  • Every token can read. Add generate for anything that spends credits, and publish for creating, scheduling, sending and deleting posts.
  • Pin a token to one brand and it sees only that brand, with its channels, generations, posts and text. The credit wallet, uploads, actors and products stay shared across the account.
  • Set a monthly credit cap and the token starts no paid call once the month's spend reaches it.
  • Every call that spends or publishes carries an idempotency key. A replay inside 24 hours returns the first result instead of doing the work twice.
  • 120 calls a minute per token, and 300 requests every 5 minutes per address.

What it won't do

  • Clone a video from a link. That one runs in the app only.
  • Generate still images or carousels. Neither is available through an agent yet.
  • Connect a social channel. Connecting one is a browser sign-in, so it stays in the app.
  • Start a paid call that would pass the cap you set on the token, or change your plan.

A typical run

  1. Step 1

    Mint the token

    Pick its scopes, pin it to a brand, set a monthly cap. The secret is shown once.

  2. Step 2

    Ask for a price

    quote_generation prices a video for free. It's an optional check, and a render runs without one.

  3. Step 3

    Generate

    create_generation makes the video and charges its price. generate_text reserves a few credits and settles what the write used. Both hand back an id you read the result from.

  4. Step 4

    Schedule it

    create_posts composes one post per channel, and send_post puts it on its channel now or at its time.

Questions

How do I connect Gemini to SocialFaktory?

Four ways. Add the endpoint as a custom app in the Gemini app, have an administrator add it as a custom MCP server in Gemini Enterprise, install the CLI extension with one command, or name it as a server tool for a managed agent on the API.

Does the Gemini app need a token?

No. The app registers itself and sends you to SocialFaktory to sign in, where a consent screen asks what Gemini may do, which brand to pin it to and a monthly credit cap. Google limits custom apps today to personal accounts, 18 or over, in the United States, in English, connected first on the web, with activity saving on.

What does Gemini Enterprise need from an administrator?

The authorization and token addresses from the discovery document, a client id and secret from a registration at /oauth/register with token_endpoint_auth_method client_secret_post and the administrator's callback address, PKCE switched on, and the scopes read, generate and publish. Streamable HTTP only, which is what this endpoint speaks.

What does the Gemini CLI extension do?

One command installs it, and the CLI then runs the sign-in itself, consent screen included. Every session after that can read your brands, price a job, generate video and text, and compose, schedule and send posts on X, Instagram, TikTok, YouTube, LinkedIn, Facebook and Pinterest.

What does it cost?

Reading costs nothing. Generating a video and writing text spend credits from your wallet, and quote_generation prices a video for free before anything runs.

How do I keep the spending safe?

Grant only the scopes it needs, pin it to one brand, and set a monthly credit cap, on the consent screen or on the token. A post is a draft by default until send_post, and every call that spends or publishes carries an idempotency key, so a retry within 24 hours never pays twice.

Let an agent run the brand.

Mint a token, point your client at the endpoint, and brief it the way you would brief a person.

Rated 4.9/5 by 180+ content teams · First video in about 7 minutes · Nothing goes live until you schedule it

We use cookies to keep you signed in, and our own cookieless measurement to see which pages actually help. Accept to also allow advertising cookies that measure which campaigns bring people here. Read our privacy notice