# Your agent can ask Ranetrace what needs a look

Connect your AI agent to Ranetrace's MCP server and it reads the same verdicts you see on the dashboard: what was found, why it matters and what to do. Errors, monitors and notification rules, for the one website you choose.

```bash
claude mcp add --transport http ranetrace https://api.ranetrace.com/mcp
```

MCP docs: https://ranetrace.com/docs/mcp-server

## One question, two tool calls

A real session against Ledgerly, a demo website. The tool output is unedited, shortened only to the parts the agent used.

**You:** Which of my monitors needs a look?

Tool call: `get-monitor-status-tool`

```text
## broken-links
**Severity:** warning
**Needs a look:** yes
**Headline:** "1 broken link"

**Found:** "Your pages have 1 broken link, to your own page."
```

(Six more monitors, all ok or advisory.)

**Agent:** One monitor needs a look: a broken link on your own site. Let me find it.

Tool call: `get-broken-links-tool`

```text
## Broken links
- "https://ledgerly.app/images/team/old-office.jpg" (internal, status 404, "image") found on "https://ledgerly.app/"
```

**Agent:** Your homepage links to /images/team/old-office.jpg, which answers 404. Point it at the image's new location, restore the file, or remove the link. Everything else is fine: the site was up for the whole last 24 hours at 351ms on average, and the certificate is valid for another 60 days. Lighthouse performance is 83 out of 100, which has room to improve but is not urgent.

## Both sides of your app, verdict first

- **Your website:** uptime, performance, Lighthouse, the certificate, the domain, broken links and DNS. Works for any website Ranetrace monitors, no SDK needed.
- **Your code:** errors with their stack traces, activity and notes, searchable by message, class or file. Needs the Laravel or PHP SDK in your application. For example, from the same demo website: "Stripe webhook signature verification failed", 3 occurrences.

Your notification rules too. They cover all your websites, so a change made through one connection applies to every website you have.

## You decide what it can do

- **One website per connection.** The connection reaches that website and nothing else in your account.
- **Read-only unless you allow writes.** With writes on, it can resolve, snooze and ignore errors, add notes and change your notification rules.
- **No token to copy.** Your agent asks, and you approve it in your browser.
- **Revoke any connection** from your account, whenever you like.

Ranetrace has no AI built in. It answers your agent the way it answers you.

## Skills for your coding agent

The Laravel SDK ships agent skills that teach a coding agent to install and configure it: error tracking, logging, events, analytics, JavaScript errors and the worker. They install with the package, and Laravel Boost hands them to your agent.

- [ranetrace-analytics](https://ranetrace.com/.well-known/agent-skills/ranetrace-analytics/SKILL.md): Set up and configure Ranetrace's privacy-first website analytics with bot detection, the opt-in human-verification beacon, path filtering, and custom request filters.
- [ranetrace-error-tracking](https://ranetrace.com/.well-known/agent-skills/ranetrace-error-tracking/SKILL.md): Track, investigate, and manage application errors with Ranetrace, and work with the hosted Ranetrace MCP server, including connecting an MCP client over OAuth and fixing a connection that fails, the tools for AI-assisted debugging, the search_tools and execute_tools flow for state changes, the monitored website's verdicts (uptime, performance, Lighthouse, certificate, domain, broken links, DNS) and the notification rules.
- [ranetrace-event-tracking](https://ranetrace.com/.well-known/agent-skills/ranetrace-event-tracking/SKILL.md): Track custom application events like sales, signups, and user actions with Ranetrace's privacy-first event system.
- [ranetrace-javascript-errors](https://ranetrace.com/.well-known/agent-skills/ranetrace-javascript-errors/SKILL.md): Capture client-side JavaScript errors with breadcrumbs, deduplication, and sampling using Ranetrace's Blade directive.
- [ranetrace-logging](https://ranetrace.com/.well-known/agent-skills/ranetrace-logging/SKILL.md): Send application logs to Ranetrace via the auto-registered logging channel, and integrate it with Laravel's logging stack.
- [ranetrace-worker](https://ranetrace.com/.well-known/agent-skills/ranetrace-worker/SKILL.md): Set up, schedule and troubleshoot the Ranetrace worker (ranetrace:work) that flushes buffered errors, events, logs, analytics and JavaScript errors to the API. Use when buffers grow without draining, features show as paused, or nothing reaches Ranetrace.

Skills index (JSON): https://ranetrace.com/.well-known/agent-skills/index.json

The frontmatter of ranetrace-worker/SKILL.md, as the package ships it:

```yaml
---
name: ranetrace-worker
description: >-
  Set up, schedule and troubleshoot the Ranetrace worker (ranetrace:work) that
  flushes buffered errors, events, logs, analytics and JavaScript errors to the
  API. Use when buffers grow without draining, features show as paused, or
  nothing reaches Ranetrace.
---
```

## Connect your agent

### Claude

Add Ranetrace as a custom connector in Claude on the web, desktop or mobile, and paste this URL.

```text
https://api.ranetrace.com/mcp
```

### Claude Code

Run this in your terminal.

```bash
claude mcp add --transport http ranetrace https://api.ranetrace.com/mcp
```

### ChatGPT

Turn on developer mode in ChatGPT's settings, create a connector, paste this URL and choose OAuth. Developer mode is on Plus, Pro, Business, Enterprise and Edu plans, and on Business or Enterprise an admin may need to allow custom connectors. ChatGPT asks you to confirm each change before it makes it.

```text
https://api.ranetrace.com/mcp
```

### Codex

Run these in your terminal. The login opens your browser to approve the connection. The Codex IDE extension reads the same config.

```bash
codex mcp add ranetrace --url https://api.ranetrace.com/mcp
codex mcp login ranetrace
```

### Cursor

Add this to ~/.cursor/mcp.json, or to .cursor/mcp.json in a project.

```json
{
  "mcpServers": {
    "ranetrace": {
      "url": "https://api.ranetrace.com/mcp"
    }
  }
}
```

### VS Code

Add this to .vscode/mcp.json in a workspace, or to the mcp.json in your user profile.

```json
{
  "servers": {
    "ranetrace": {
      "type": "http",
      "url": "https://api.ranetrace.com/mcp"
    }
  }
}
```

### Gemini CLI

Run this in your terminal, then run /mcp auth ranetrace inside Gemini CLI to approve the connection.

```bash
gemini mcp add --scope user --transport http ranetrace https://api.ranetrace.com/mcp
```

Any MCP client that supports OAuth can connect the same way. These seven are the ones shown here.

## Frequently asked questions

### Which agents can connect?

Any MCP client that supports OAuth over Streamable HTTP. Claude, Claude Code, ChatGPT, Codex, Cursor, VS Code and Gemini CLI are the ones shown on this page.

### Can my agent see my other websites?

No. A connection reaches the one website you pick when you approve it. Connect again to give an agent another website.

### Can my agent change things?

Only if you allow writes when you approve the connection. A read-only connection is not even offered the tools that change something.

### Does it cost extra?

No. The MCP server is part of every plan, and of the free trial.

### Is my ingest key the same as an agent credential?

No. RANETRACE_KEY sends data in from your application. An agent connects over OAuth instead, and sending it the ingest key returns an error that says how to connect.

The same page in a browser: https://ranetrace.com/ai-agents
