---
title: "Codex Quickstart: MCP Server, Plugin and Skills | Since.dev"
description: "Add Since.dev to Codex with the plugin or codex mcp add, sign in with OAuth, and check your packages, AI models and runtimes for breaking changes."
canonical_url: https://since.dev/guides/codex-quickstart
last_updated: 2026-11-04
---

# Codex quickstart: check what changed in your code

Install the Since.dev plugin or add the MCP server with one command, sign in through your browser, and Codex can check your packages, AI models and runtimes against what changed. It works in the CLI, the IDE extension and the ChatGPT desktop app.

Updated November 4, 2026

## Install the plugin or the server

We suggest the plugin. It adds the MCP server plus four skills that tell Codex when to check. Add our marketplace from your shell:

```
codex plugin marketplace add since-dev/mcp
```

Then run `/plugins` in Codex and install Since.dev, or run `codex plugin add since-dev@since-dev`. It asks you to sign in as it installs. Start a new session afterwards so Codex loads its skills and tools ([Codex plugin docs](https://learn.chatgpt.com/docs/plugins)).

For the server alone:

```
codex mcp add since --url https://api.since.dev/mcp
codex mcp login since
```

Codex saves the server to `~/.codex/config.toml`, which the CLI, the IDE extension and the desktop app share ([Codex MCP docs](https://learn.chatgpt.com/docs/extend/mcp)).

## Sign in with OAuth

`codex mcp add` starts the sign-in on its own when a server supports OAuth, as ours does, and `codex mcp login since` runs it again whenever you need to. In your browser, sign in to Since.dev (a free account works) and approve Codex for one workspace. No key is stored in a file.

- On a machine with no browser, add `--no-browser` to the login, open the printed URL elsewhere and paste the redirect URL back.
- In the IDE extension, open the gear menu and select MCP servers. In the desktop app, a server that needs sign-in shows Authenticate.
- In the CLI, `/mcp` lists your active servers. Ask Codex to list the `since` tools: `whats_changed`, `check_code` and `fix_code`.

## Three things to ask first

The plugin suggests three starters, and they're good first asks. Every answer cites its source.

### Check this repo's dependencies with Since.dev before we upgrade anything.

Codex sends the lockfile, or the manifest, to `check_code`. Each finding has a state, severity, file and line, days left, replacement and source. `affected` means your code uses the thing that changed. Fix those before the upgrade.

### Which AI models in this code are retiring, and what replaces them?

Codex sends each file that names a model to `check_code`. OpenAI's API, Azure, Amazon Bedrock and Google Vertex AI each set their own dates, so the answer gives the date for the platform your code calls. A shortened example:

```
src/agent.py line 8: gpt-5
  status: deprecated
  shuts down: 2026-12-11 on OpenAI's API
  replacement: gpt-5.6-sol
  Azure: a later date
```

### What changed in this package since my training cutoff?

Codex calls `whats_changed` with the package and `since` set to a date, a version or `cutoff:<model>`. You get each renamed or removed function, changed parameter and deprecation since then, linked to the publisher's page, so the code Codex writes matches the version you have.

Treat `needs_review` and `unknown` as not settled, never as safe.

## What the plugin's skills add

Codex chooses a skill when your task matches its description, so checks happen without you asking. Run `/skills` or type `$` to use one by name ([Codex skills docs](https://learn.chatgpt.com/docs/build-skills)).

The four skills in the Since.dev plugin

| Skill                   | Used when                                    | Checks                                 |
| ----------------------- | -------------------------------------------- | -------------------------------------- |
| since-before-upgrading  | A dependency, manifest or lockfile changes   | What the new version breaks            |
| since-model-retirements | Code names an AI model ID                    | Status, date per platform, replacement |
| since-what-changed      | Codex writes against something from training | What changed since its cutoff          |
| since-ci-and-runtimes   | CI, a Dockerfile or a version file changes   | Runtime, image and runner end of life  |

## Approvals and fixes

`fix_code` writes. With a snippet it returns the patch, on Team and up. With a connected repository it opens fix pull requests, on Business and Platform. Fixes count against the month's fix pull requests, not credits.

If you added the server with `codex mcp add`, set its approval mode to `writes`. Codex then asks only before tools not marked read-only, which here means `fix_code`:

```
[mcp_servers.since]
url = "https://api.since.dev/mcp"
default_tools_approval_mode = "writes"
```

## Use an API key for CI and headless runs

OAuth needs a browser. For CI, or `codex exec` where nobody can sign in, use a workspace API key:

1. In [app.since.dev](https://app.since.dev), pick the workspace, open [API keys](https://app.since.dev/api-keys) and choose Create API key. It starts with `sc_live_` and is shown once.
2. Store it as a secret named `SINCE_DEV_KEY` and tell Codex to send it:

```
[mcp_servers.since]
url = "https://api.since.dev/mcp"
bearer_token_env_var = "SINCE_DEV_KEY"
required = true
```

Codex reads the key from the environment, so it stays out of the file. With `required = true`, `codex exec` stops with an error if the server can't start, instead of running without it ([non-interactive mode](https://learn.chatgpt.com/docs/non-interactive-mode)). A key reaches only its own workspace. Never commit one.

## What calls cost

Calls spend credits from your workspace's monthly allowance. Every plan includes some, Free too, and every response says how many are left.

Credits per call, from Since.dev pricing as of Nov 4, 2026

| Call          | With                                 | Credits                           |
| ------------- | ------------------------------------ | --------------------------------- |
| whats_changed | Any read                             | 1, plus 1 per 10 changes returned |
| check_code    | A model, package, surface or snippet | 2                                 |
| check_code    | A manifest, lockfile or repository   | 20                                |

`fix_code` costs what its check costs, and a call that fails costs nothing ([credits](https://since.dev/docs.md#api-credits)). Check a lockfile once, then ask about single packages. Prices change, see [since.dev/#pricing](https://since.dev/index.md#pricing).

## Troubleshooting

- `codex mcp list` shows the servers you've configured. If `since` is missing, add it again.
- Calls fail with a sign-in error: run `codex mcp login since`. A 401 means the sign-in expired or the key isn't valid.
- The plugin's skills or tools don't appear: start a new session.
- With an API key, check that `SINCE_DEV_KEY` is set in the environment Codex runs in.
- `credits_exhausted` means the month's credits are spent. They reset monthly.

## Where Since.dev fits

Since.dev tracks breaking releases, deprecations, model retirements and end-of-life dates, and matches each one to the file and line it hits.

- [Scan any public GitHub repository](https://since.dev/scan.md), no sign-in needed.
- See every OpenAI date on the [OpenAI retirement calendar](https://since.dev/calendar/openai.md).

Connect GitHub and, on Team and up, it opens [fix pull requests](https://since.dev/docs.md#repairs) for people to review. Nothing merges or deploys.

## Questions

### Does it work in the Codex IDE extension and desktop app?

Yes. The CLI, the IDE extension and the ChatGPT desktop app share one MCP config, so a server you add once shows up in all three.

### Should I install the plugin or only the server?

The plugin. It adds the same server plus four skills, so Codex checks before upgrades, model changes and CI edits without being asked.

### Can I use it with codex exec in CI?

Yes. Point `bearer_token_env_var` at a workspace API key and set `required = true`, so the run stops if the server can't connect.

### Do I need a paid plan to use Since.dev in Codex?

No. `whats_changed` and `check_code` work on every plan, Free included. Fixes start on Team.

## Related guides

### Migration guides

- [OpenAI shuts down GPT-5 and o3 on December 11, 2026](https://since.dev/guides/openai-gpt-5-o3-shutdown.md)OpenAI's API shuts down gpt-5, gpt-5-mini, gpt-5-nano, gpt-5-pro, o3 and o3-pro on December 11, 2026. Azure dates differ. What to change and test.

### Quickstarts

- [Claude Code quickstart: check what changed in your code](https://since.dev/guides/claude-code-quickstart.md)Add Since.dev to Claude Code with the plugin or one command, sign in with OAuth, and ask what changed in your packages, AI models and runtimes.
- [Cursor quickstart: check what changed in your code](https://since.dev/guides/cursor-quickstart.md)Add Since.dev to Cursor in one click, sign in with OAuth, and have the agent check dependency, AI model and runtime changes before it edits them.

## Put your code on continuous management.

Scan a public repository now, or give your agent one line.

### See how out of date your code is.

[Scan a repository](https://since.dev/scan.md). Any public GitHub repository. No sign-in.

### Tell your agent what changed since it was trained.

`claude mcp add --transport http since https://api.since.dev/mcp`

---

Every page on this site as Markdown: https://since.dev/sitemap.md. For agents: https://since.dev/llms.txt.
