← Files Since.devARCHIVED FILE
README.md
8.66 KB · Nov 13, 2026 · 06:11 UTC
<img src="https://since.dev/icon-512.png" alt="Since.dev" width="48" height="48">
# Since.dev MCP
What changed in the packages, APIs and services your code depends on, and the fixes it needs.
[](https://cursor.com/install-mcp?name=since&config=eyJ1cmwiOiJodHRwczovL2FwaS5zaW5jZS5kZXYvbWNwIn0%3D)
[](https://vscode.dev/redirect/mcp/install?name=since&config=%7B%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.since.dev%2Fmcp%22%7D)
[Product](https://since.dev) · [Documentation](https://since.dev/docs) · [MCP reference](https://since.dev/docs#mcp)
Since.dev tracks every package in 18 registries, every AI model's retirement on each platform that serves it, API changes and runtime end-of-life dates, each with its source. This repository connects your agent to it: a hosted remote MCP server, plus a plugin for Claude Code, Cursor and Codex that tells the agent when to use it. There is no server code to install or run.
## Install
Every install signs in through your browser (OAuth). You approve the client for one Since.dev workspace, and no key is stored in a file. A free account works.
### Claude (claude.ai and the Claude apps)
Open [Since.dev in the connector directory](https://claude.ai/directory/connectors/since-dev), click Connect and sign in.
### Claude Code
Install the plugin, which adds the server and four skills:
```text
/plugin marketplace add since-dev/mcp
/plugin install since-dev@since-dev
```
Or add only the server, then run `/mcp` to sign in:
```sh
claude mcp add --transport http since https://api.since.dev/mcp
```
### Cursor
Click **Add to Cursor** above, or install the Cursor plugin ([Since-dev/cursor](https://github.com/since-dev/cursor)) to get the server, the skills and a rule that checks dependency, model and runtime changes.
### VS Code
Click **Install in VS Code** above, or run:
```sh
code --add-mcp '{"name":"since","type":"http","url":"https://api.since.dev/mcp"}'
```
### Codex
Install the plugin:
```sh
codex plugin marketplace add since-dev/mcp
```
Or add only the server and sign in:
```sh
codex mcp add since --url https://api.since.dev/mcp
codex mcp login since
```
### Gemini CLI
```sh
gemini extensions install https://github.com/since-dev/mcp
```
The extension asks for a workspace API key (see below). To sign in through the browser instead, add the server directly:
```sh
gemini mcp add --transport http since https://api.since.dev/mcp
```
### Any other MCP client
Add a remote server with this URL over Streamable HTTP and sign in when the client asks:
```text
https://api.since.dev/mcp
```
For a client that reads an `mcpServers` file, see [examples/mcp.json](examples/mcp.json). For VS Code's `.vscode/mcp.json`, see [examples/vscode-mcp.json](examples/vscode-mcp.json).
## Use an API key instead
Some clients can't sign in through a browser. For those, create a key and send it as a Bearer token:
1. Sign in at https://app.since.dev and pick the workspace the agent should use.
2. Open **API keys** (https://app.since.dev/api-keys) and choose **Create API key**. The key starts with `sc_live_` and is shown once.
3. Add the header `Authorization: Bearer <your API key>` in your client's secret settings. Never commit a key.
A key reaches only its own workspace, over the API and MCP, and any member with a seat can revoke it under **API keys**.
## What's inside
- **The server:** 3 tools, from the same record as the Since.dev API. `whats_changed` and `check_code` only read, so your client runs them without asking. `fix_code` opens fix pull requests, so your client asks before every call.
- **Skills** (Claude Code, Cursor, Codex and other clients that read Agent Skills): [`since-before-upgrading`](skills/since-before-upgrading/SKILL.md), [`since-model-retirements`](skills/since-model-retirements/SKILL.md), [`since-what-changed`](skills/since-what-changed/SKILL.md), [`since-ci-and-runtimes`](skills/since-ci-and-runtimes/SKILL.md). They tell the agent when to check: before upgrades, when code names a model, before writing against something it learned in training, and when editing CI or runtimes.
- **For Cursor:** the plugin at [Since-dev/cursor](https://github.com/since-dev/cursor) adds a rule that brings the same checks to manifest, lockfile, Dockerfile and workflow edits.
## Tools
`tools/list` returns each tool's full input schema.
### Tools
whats_changed and check_code only read, and both work on every plan; checking a connected repository (`check_code` with `repo`) is on the Business and Platform plans. fix_code writes: with `code` it returns a patch, on the Team plan and up, and with `repo` it opens fix pull requests for a person to review, on the Business and Platform plans. Each call costs credits; a bad input or a call the plan does not include is refused with a plain sentence and costs nothing.
| Tool | What it does | Key inputs |
| --- | --- | --- |
| `whats_changed` | What changed in a package, a provider, a model, a runtime or a connected repository, since your training cutoff, a date or a version, with severity, dates, replacements and cited evidence. Also lists a provider's current models to use in new code (current=true), gives one change in full with its migration steps (id), answers whether something is still supported, and lists upcoming retirements (as iCalendar too). | One of `package` (any spelling or purl), `provider`, `model`, `repo`, `surface` or `id` (one change, as a `check_code` finding names it); optional `since` (a date, a version or `cutoff:<model>`), `current` (with `provider`), `within` (for example `90d`), `kind`, `severity`, `reaches` (with `repo`), `cursor`, `limit` |
| `check_code` | Checks code against what changed, before you rely on it: a snippet you just wrote, a model id, a package version, a manifest or a whole repository. Returns what is affected, where (file and line), how severe, how many days are left, the replacement and the source. Anything Since cannot settle is `needs_review`, never a guess. It only reads. | One of `model`, `package` (with a version), `surface`, `code` (with `language`), `manifest` or `lockfile` (`path` and `content`), `repo`, or `repoUrl` (a public GitHub repository); optional `state`, `severity`, `detail` (`summary` or `full`), `limit`, `cursor` |
| `fix_code` | Fixes what check_code found: the patch for a snippet, in seconds, or a connected repository's fix pull requests, one per provider, each checked before it opens. Nothing merges: every pull request waits for a person to review it. Fixes count against the month's fix pull requests, not credits. | One of `repo` or `code` (with `language` or `path`); optional `state`, `severity`, `detail`, `limit` |
## Examples
Each step shows the `name` and `arguments` the agent sends in a `tools/call` request.
1. Before writing code against a model, check the id:
```json
{ "name": "check_code", "arguments": { "model": "<model id>" } }
```
The result lists the model's status (`supported`, `deprecated`, `retired` or `unknown`) and a finding for each change that applies, with its severity, `daysLeft`, `replacement` and cited `source`.
2. Before upgrading a package, read what changed from the version you have:
```json
{ "name": "whats_changed", "arguments": { "package": "npm:react", "since": "18.2.0" } }
```
Each change carries its canonical surface, kind, severity, dates, replacement and evidence. `package.releasesBehind` says how far behind the version is, and `coverage` says which sources were read and how fresh they are. Page with `nextCursor`.
3. See what retires in the next 90 days for a provider:
```json
{ "name": "whats_changed", "arguments": { "provider": "anthropic", "within": "90d" } }
```
4. Fix what a connected repository's check found (your client asks first):
```json
{ "name": "fix_code", "arguments": { "repo": "<repository id>" } }
```
Treat `unknown` and `needs_review` as not settled, never as fine.
## Requirements
- **A Since.dev account.** [Create one](https://app.since.dev/login?mode=signup) with email, GitHub or Google. Each account includes one Free workspace.
- **Credits.** Each call costs credits from the workspace's monthly allowance, and every response says how many are left. See [pricing](https://since.dev/#pricing).
## Support
- Documentation: [https://since.dev/docs](https://since.dev/docs), including the [MCP reference](https://since.dev/docs#mcp)
- Questions about this connection: [open an issue](https://github.com/since-dev/mcp/issues)
- Email: [support@since.dev](mailto:support@since.dev)
## License
The files in this repository are MIT licensed. See [LICENSE](LICENSE).
SHA-256: 98f6f1639c6afef024fc6f638dda07ee007204415b28ca52d83aab3a77d5034b