---
title: "Docs MCP"
description: "Connect Cursor, Claude Code, or VS Code to https://www.evlog.dev/mcp and your agent reads the current evlog docs, and prices your log bill, from the editor."
canonical_url: "https://www.evlog.dev/reference/mcp"
---
# Docs MCP

> Connect Cursor, Claude Code, or VS Code to https://www.evlog.dev/mcp and your agent reads the current evlog docs, and prices your log bill, from the editor.

An agent answers evlog questions from its training data, which can be a release behind the package you installed. The docs MCP server gives it the current pages instead. Add `https://www.evlog.dev/mcp` to your editor: no account, no key, read-only, over [streamable HTTP](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#streamable-http).

## Add it to your editor

### Cursor

[Add to Cursor](https://www.evlog.dev/mcp/deeplink) opens Cursor with the server filled in. Every docs page carries the same link as **Add MCP Server** in the copy menu at the top.

To add it by hand, create `.cursor/mcp.json` in your project, or `~/.cursor/mcp.json` for every project ([Cursor MCP docs](https://cursor.com/docs/mcp)):

```json [.cursor/mcp.json]
{
  "mcpServers": {
    "evlog": {
      "url": "https://www.evlog.dev/mcp"
    }
  }
}
```

### Claude Code

```bash [Terminal]
claude mcp add --transport http evlog https://www.evlog.dev/mcp
```

Add `--scope user` to make it available in every project ([Claude Code MCP docs](https://code.claude.com/docs/en/mcp)).

### VS Code

[Install in VS Code](https://www.evlog.dev/mcp/deeplink?ide=vscode), run **MCP: Add Server** from the Command Palette and pick HTTP, or commit it for the team in `.vscode/mcp.json` ([VS Code MCP docs](https://code.visualstudio.com/docs/agent-customization/mcp-servers)):

```json [.vscode/mcp.json]
{
  "servers": {
    "evlog": {
      "type": "http",
      "url": "https://www.evlog.dev/mcp"
    }
  }
}
```

### Any other client

Point any MCP client that speaks streamable HTTP at `https://www.evlog.dev/mcp`. Opening that URL in a browser brings you back to this page.

## Tools

All three are read-only. None of them reads your project: they take a page path or the numbers you pass.

<table>
<thead>
  <tr>
    <th>
      Tool
    </th>
    
    <th>
      Returns
    </th>
    
    <th>
      Input
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        list-pages
      </code>
    </td>
    
    <td>
      Every docs page: title, path, description, URL
    </td>
    
    <td>
      None
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        get-page
      </code>
    </td>
    
    <td>
      The full markdown of one page, the same bytes as <code>
        /raw/<path>.md
      </code>
    </td>
    
    <td>
      <code>
        path
      </code>
      
      , e.g. <code>
        /start/installation
      </code>
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        estimate-log-cost
      </code>
    </td>
    
    <td>
      A month of logs before and after evlog: events, GB, cost, and the basis used
    </td>
    
    <td>
      <code>
        requestsPerMonth
      </code>
      
      , plus optional <code>
        linesPerRequest
      </code>
      
       (default 4), <code>
        provider
      </code>
      
      , <code>
        perGb
      </code>
      
      , <code>
        perMillionIndexed
      </code>
      
      , <code>
        keepPercent
      </code>
      
       (default 100)
    </td>
  </tr>
</tbody>
</table>

`provider` is one of `datadog`, `grafana`, `sentry`, `posthog`, `betterstack`, `axiom`. The byte counts and the rates behind `estimate-log-cost` are on [Log cost](https://www.evlog.dev/reference/cost).

## Ask it something

Once the server is connected, name it in the prompt so the agent reads the docs instead of guessing:

```text
Using the evlog MCP, read the Nuxt integration page and add evlog to this app.
```

```text
Using the evlog MCP, what does 10 million requests a month at 4 log lines each cost on Datadog, and with evlog?
```

## MCP, skills, or llms.txt

<table>
<thead>
  <tr>
    <th>
      You want the agent to
    </th>
    
    <th>
      Use
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      Look up a page in the middle of a task
    </td>
    
    <td>
      This MCP server
    </td>
  </tr>
  
  <tr>
    <td>
      Follow the evlog conventions and review logging code
    </td>
    
    <td>
      <a href="https://www.evlog.dev/reference/agent-skills">
        Agent skills
      </a>
      
      , installed with <code>
        pnpm dlx skills add https://www.evlog.dev
      </code>
    </td>
  </tr>
  
  <tr>
    <td>
      Read the docs in a tool that has no MCP support
    </td>
    
    <td>
      <a href="https://www.evlog.dev/llms.txt" rel="nofollow">
        <code>
          llms.txt
        </code>
      </a>
      
      , or any page as markdown at <code>
        /raw/<path>.md
      </code>
    </td>
  </tr>
</tbody>
</table>

The server and the skills work together: the skills carry the patterns, the server carries the current API.

## FAQ

<accordion type="single">
<accordion-item label="Does it need an API key or an account?">

No. The server only serves the public docs, so there is nothing to authenticate.

</accordion-item>

<accordion-item label="Can it see my code or my logs?">

No. `list-pages` and `get-page` read the docs, and `estimate-log-cost` computes from the numbers in its arguments. The tools take no other input.

</accordion-item>

<accordion-item label="How fresh are the pages?">

`list-pages` and `get-page` cache for one hour, so a docs change reaches the server within an hour of deploying.

</accordion-item>
</accordion>

## Next

- [Agent skills](https://www.evlog.dev/reference/agent-skills): teach the agent the evlog conventions
- [`evlog agents`](https://www.evlog.dev/cli/agents): write those conventions into `AGENTS.md`

---

- [Agent Skills](https://www.evlog.dev/reference/agent-skills)
- [evlog agents](https://www.evlog.dev/cli/agents)


## Sitemap

See the full [sitemap](https://www.evlog.dev/sitemap.md) for all pages.
