Skip to content

For agents

Connect your agent to this site

Everything on this site about Leevon Levasseur is open to your agent: over MCP, with three tools, or over a plain HTTP API. No key, no sign-in. Copy the block for your client and ask away.

The MCP server

The server speaks the Model Context Protocol over Streamable HTTP at the URL below. It is stateless, so every request stands on its own and no session is issued.

Endpoint
https://leevonlevasseur.com/mcp
The tools the server offers
ToolInputReturns
search_kbquery, and an optional limit (1 to 50, default 5)The best-matching sections of the site, each with a link to its heading.
get_pagepath, such as /resumeOne page in full, section by section.
askquestion, up to 2,000 charactersThe guide's answer, with the pages it drew on as citations.

Every page in the knowledge base is also an MCP resource, so a client that lists resources sees the site's pages by URL and can read any of them in full.

Connect a client

Each block below is complete. Paste it, and the server shows up as personal-site with its three tools.

Claude Code
claude mcp add --transport http personal-site https://leevonlevasseur.com/mcp
Claude Desktop
Settings → Connectors → Add custom connector
Name: personal-site
URL: https://leevonlevasseur.com/mcp
Cursor (.cursor/mcp.json)
{
  "mcpServers": {
    "personal-site": {
      "url": "https://leevonlevasseur.com/mcp"
    }
  }
}
Any Streamable HTTP client
{
  "mcpServers": {
    "personal-site": {
      "type": "http",
      "url": "https://leevonlevasseur.com/mcp"
    }
  }
}
A client that only starts local commands
{
  "mcpServers": {
    "personal-site": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://leevonlevasseur.com/mcp"
      ]
    }
  }
}
curl
curl -sS https://leevonlevasseur.com/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

The curl request answers in a text/event-stream body: one data: line holding the JSON-RPC result with search_kb, get_page and ask. No initialize call is needed first, because the server keeps no session.

Limits

  • Ten asks a minute. Each IP gets ten ask calls per minute, shared with POST /api/v1/ask. Past that, the call fails with 429 and Retry-After: 60.
  • One daily model budget. The whole site shares one cap on model calls per UTC day. Once it is spent, ask still answers, with no error and no citations, and the answer is:
    I'm resting until tomorrow. I've answered as many questions as I can today, so ask me again after midnight UTC.
    search_kb and get_page call no model and keep working.
  • Would rather use HTTP? The same data is at /api/v1, described by the OpenAPI document at /api/v1/openapi.json and rendered below.

The HTTP API

Four routes under /api/v1: list the pages, read one, search, and ask. The reference below is rendered from /api/v1/openapi.json, the document the server generates from the schemas it validates with, so what you read here is what it answers.

Loading the API reference…