> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mymarky.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# ChatGPT & Codex

> Connect ChatGPT (web or desktop) or the Codex CLI to Marky

<Info>
  **Free beta.** The Marky API is free to use while it's in beta. Paid plans are
  coming later, and we'll give you plenty of notice before any charges begin.
</Info>

ChatGPT and Codex both speak **MCP**, the same protocol Marky's
[MCP server](/mcp-server) serves. Point them at one URL and they get Marky's
tools: list your workspaces, generate on-brand drafts, create posts, schedule
them, and check what published.

There is nothing extra to install on our side. It is the same endpoint, the same
API key, and the same tools that Claude Code uses.

```
https://api.mymarky.ai/api/mcp
```

## Two ways to sign in

Pick whichever your client offers:

| Way                    | Use it when                                                    | What you need                                                   |
| :--------------------- | :------------------------------------------------------------- | :-------------------------------------------------------------- |
| **API key**            | The client has a field for a token or a header                 | An `mk_live_...` key from [Authentication](/authentication)     |
| **Sign in with Marky** | The client has no token field, or you'd rather not paste a key | Nothing. The client opens your browser, you log in and approve. |

Both give the same access. Signed-in agents show up under **Organization
settings → Connected agents**, where you can disconnect one at any time.

## ChatGPT on the web

This is where most people connect. You need **Developer mode** turned on
first, and it has to be done in a browser — the mobile app has no connector
screen.

1. Go to [chatgpt.com](https://chatgpt.com).
2. Open **Settings → Apps & Connectors**.
3. Open **Advanced settings** and turn on **Developer mode**.
4. Go back to **Apps & Connectors** and click **Create**.
5. Paste `https://api.mymarky.ai/api/mcp` as the server URL, then click **Create**.
6. Sign in with your Marky account when ChatGPT asks, and click **Allow**.

Then ask ChatGPT: *"List my Marky businesses."* If it names your workspaces,
you're connected.

<Note>
  **Developer mode is not on free ChatGPT accounts.** If you can't find it,
  that's usually why. On a managed work account an admin may also have to
  allow custom connectors first.

  OpenAI renames these menus fairly often, so if a label above doesn't match
  what you see, the destination is still right: you're looking for the screen
  that creates a connector from a URL. Their current walkthrough is at
  [learn.chatgpt.com/docs/extend/mcp](https://learn.chatgpt.com/docs/extend/mcp).
</Note>

## ChatGPT desktop app

The desktop app has its own screen for this, and no Developer mode step:

1. Open **Settings → MCP servers → Add server**.
2. Name it `Marky` and choose **Streamable HTTP**.
3. URL: `https://api.mymarky.ai/api/mcp`
4. For auth, either paste your `mk_live_...` key as a bearer token, or pick
   OAuth and press **Authenticate** to sign in with your Marky account.
5. Save, then **Restart**.

Then ask:

> "List my Marky businesses, read the brand, then write 5 posts about our
> spring blend and schedule one each weekday at 9am."

## Codex CLI

One command:

```bash theme={null}
codex mcp add marky --url https://api.mymarky.ai/api/mcp \
  --bearer-token-env-var MARKY_API_KEY
```

Then put your key in that environment variable:

```bash theme={null}
export MARKY_API_KEY="mk_live_YOUR_KEY"
```

Or edit `~/.codex/config.toml` by hand:

```toml theme={null}
[mcp_servers.marky]
url = "https://api.mymarky.ai/api/mcp"
bearer_token_env_var = "MARKY_API_KEY"
```

<Note>
  **If Codex ignores the `url` line, update Codex first.** Older builds only
  read HTTP servers when the newer MCP client is switched on, and they fail by
  doing nothing at all rather than by printing an error. On a build like that,
  add `experimental_use_rmcp_client = true` above the `[mcp_servers.marky]`
  line.
</Note>

Prefer to sign in instead of keeping a key around? Leave the token out and log
in once:

```bash theme={null}
codex mcp add marky --url https://api.mymarky.ai/api/mcp
codex mcp login marky
```

Check it worked with `codex mcp list`.

## What about skills?

Marky's packaged **skills** — short instruction files that teach an agent how we
like posts made — are published for Claude Cowork today. See
[Connect Claude to Marky](/claude-code#claude-cowork-install-marky-skills).

For ChatGPT and Codex, the MCP server above is the piece that matters: it gives
the assistant Marky's real tools, which is what a skill would call anyway. If
you want the same nudges in writing, drop a short file like this into your
project's `AGENTS.md` (Codex reads it automatically):

```markdown theme={null}
## Social posts

Marky is connected over MCP. To post:

1. `list_businesses` and pick the workspace id.
2. `get_business` for that id and write in the brand voice it returns. Don't
   invent a style. Marky's own generation is not an MCP tool, so you write the
   caption.
3. `create_post` for each caption. They land in the app with status `NEW`.
4. Show the captions with `list_posts` (status `NEW`) so the user can check them.
5. `schedule_post` with the time the user asked for.

Never publish without showing the caption to the user first.
```

## Before you start

* **Connect your social accounts first.** Adding Instagram, Facebook, LinkedIn
  and the rest is a one-time step in the Marky web app. An agent can see the
  accounts you've connected, but it can't add new ones.
* API keys are created by an organization admin at
  **Organization settings → API keys**. See [Authentication](/authentication).
* Keep your key in an environment variable, not in a file you commit.
* Full tool list: [MCP Server](/mcp-server) and the
  [API Reference](/api-reference/create-post).
