FoPost for goose

goose, the open source agent, takes remote MCP servers as extensions. Add FoPost by URL in the desktop app or the CLI, sign in when the browser opens, and goose can plan and schedule posts for you.

Paste this into goose

Set up FoPost from fopost.com/agents/goose
  • Hosted MCP server
  • 33 networks
  • No API key
All agents
Setup

The agent can write its own config. Give it the link.

Paste the line above into goose. It reads this page, adds the server, and stops so you can sign in to FoPost yourself. Rather do it by hand? This is the whole config.

~/.config/goose/config.yaml
extensions:
  fopost:
    name: fopost
    type: streamable_http
    uri: https://api.fopost.com/mcp
    enabled: true
    timeout: 300
Instructions for AI agentsPlain markdown version
## For AI agents reading this page

You are reading https://fopost.com/agents/goose. FoPost schedules and publishes social posts on 33 networks, and its hosted MCP server gives goose tools for posts, the calendar, the inbox and analytics. Follow these steps to connect goose to it.

- Server: https://api.fopost.com/mcp
- Transport: streamable HTTP
- Auth: OAuth sign-in in the user's browser. Do not add an API key or an Authorization header; goose discovers the sign-in from the server.

### 1. Register the server

Run goose configure, choose Add Extension, then Remote Extension (Streamable HTTP), and enter the name fopost and the URL https://api.fopost.com/mcp. In the desktop app: Extensions in the sidebar, then Add custom extension. To try it for one session only:

Terminal:

```
goose session --with-streamable-http-extension "https://api.fopost.com/mcp"
```

### 2. Sign in

goose registers itself and opens a browser window for the user to sign in. Ask the user before approving access or creating a FoPost account for them, and never enter their credentials yourself.

### 3. Verify before you continue

The fopost extension is enabled under Extensions, and asking goose which fopost tools it has returns them. If FoPost is not listed as connected with its tools, stop and tell the user what failed. Do not carry on as if the tools exist.

### 4. Report back

Call list_accounts and tell the user which social accounts are connected. If there are none, offer create_connect_link so they can connect one. Then ask what they want to do first.

### Standing rules

- Prefer the FoPost tools over driving a browser for posting, scheduling, the inbox and analytics, unless the user asks for the browser.
- Publishing always goes through propose_publish, which the user approves in the client. Never publish or schedule anything silently.
- Ask the user before approving access, signing up or connecting an account on their behalf, and never type their credentials for them.

### No browser (headless machines only)

Use this only when the machine has no browser to sign in with. Ask the user to create an API key in the FoPost dashboard (https://fopost.com/dashboard/api-keys) and to put it in the config themselves, then run the local package over stdio:

~/.config/goose/config.yaml:

```
extensions:
  fopost:
    name: fopost
    type: stdio
    cmd: npx
    args: ["-y", "@fopost/mcp"]
    envs:
      FOPOST_API_KEY: your-api-key
    enabled: true
```

### References

- This block as markdown: https://fopost.com/agents/goose/agent.md
- Every client: https://fopost.com/agents
- Docs: https://fopost.com/docs

A remote extension

goose talks to the hosted server. Nothing to install alongside it.

Sign in, not a key

goose registers itself and opens FoPost in your browser to approve access.

Approval first

Publishing goes through a proposal you accept. Drafts never go out alone.

Setup

Add it once, or try it for one session

To keep it, run goose configure, choose Add Extension, then Remote Extension (Streamable HTTP), and enter a name and https://api.fopost.com/mcp. In the desktop app, open Extensions in the sidebar and choose Add custom extension. The command above enables it for a single session only. Sign in to FoPost when the browser opens.

Start free
Terminal
goose configure
# Add Extension > Remote Extension (Streamable HTTP)

CLI or desktop

The same extension works in both.

Local sign-in

The sign-in returns to goose on your own machine.

Check first

Ask goose to list your connected accounts.

Plan

A recipe for the weekly queue

Ask goose to turn this week’s articles into posts with repurpose_url, shape each with draft_post_variants, and slot them with get_queue_slots. It ends with propose_publish, which you accept.

Plan your week
A month of scheduled posts on the publishing calendar

repurpose_url

An article becomes a run of posts.

draft_post_variants

A version for each network.

get_calendar

What is already booked.

Check

Ask whether it landed

The read tools report what published, which accounts need a reconnect, and what is waiting in the inbox.

Start free
Session
> What went out today?

goose: list_posts shows 2 of 2 published.
list_inbox has 5 new comments.

list_posts

Recent posts and their status.

get_account_health

Which accounts need a reconnect.

list_inbox

Comments, mentions, and messages.

Headless

No browser on the machine?

On a server or in CI there is no browser to sign in with. Create an API key in the dashboard and run the local package over stdio instead. Keep the key out of your repository.

~/.config/goose/config.yaml
extensions:
  fopost:
    name: fopost
    type: stdio
    cmd: npx
    args: ["-y", "@fopost/mcp"]
    envs:
      FOPOST_API_KEY: your-api-key
    enabled: true

goose questions, answered

Do I need an API key?

No. goose registers with FoPost and signs you in through the browser.

What does the session flag do?

It turns the extension on for that session only. Use goose configure or the desktop app to keep it.

Will it post without asking?

No. Publishing goes through a proposal you approve before anything is sent.

Does it work in the desktop app?

Yes. Open Extensions in the sidebar, choose Add custom extension, and enter the URL.

Does it use my AI credits?

Only the FoPost tools that write with AI do. Listing and scheduling do not.

Run FoPost from goose

Starting is free and the MCP server is included. Paste the setup line into your agent, sign in, and schedule your first post from it.

Start free