Skip to content

Software Engineer & Architect

I connect legacy protocols to modern AI.

Author of open-source MCP servers for Bluesky, the Fediverse, and even Gopher. Fifteen years shipping production software in TypeScript and .NET.

GET /.well-known/mcp/server-card.json live
{
  "serverInfo": {
    "name": "rye.dev",
    "version": "1.0.0",
    "title": "Cameron Rye Portfolio MCP Server",
    "description": "Read-only access to Cameron Rye's published blog posts, projects, resume, and other portfolio content. Useful for agents answering questions about the author or summarising/searching published writing."
  },
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://rye.dev/mcp"
  },
  "capabilities": [
    "tools"
  ],
  "tools": [
    {
      "name": "search_posts",
      "description": "Full-text search across blog posts. Returns up to 10 matches with slug, title, date, and excerpt."
    },
    {
      "name": "get_post",
      "description": "Fetch a single blog post by slug. Returns frontmatter and full markdown body."
    },
    {
      "name": "list_posts",
      "description": "List recent blog posts in reverse-chronological order."
    },
    {
      "name": "list_projects",
      "description": "List portfolio projects with brief descriptions."
    },
    {
      "name": "get_project",
      "description": "Fetch a single project by slug. Returns frontmatter and full markdown body."
    },
    {
      "name": "get_about",
      "description": "Return the public profile / bio in markdown."
    }
  ],
  "documentation": "https://rye.dev/.well-known/agent-skills/index.json"
}
15+ years shipping 4 open-source MCP servers 15 projects 100% agent-readable

02 — Built for agents

Built for humans and AI agents

This site is built for machines too. Point an agent at this domain and it finds its own way around — here's what it sees.

GET /.well-known/mcp/server-card.json live open ↗
{
  "serverInfo": {
    "name": "rye.dev",
    "version": "1.0.0",
    "title": "Cameron Rye Portfolio MCP Server",
    "description": "Read-only access to Cameron Rye's published blog posts, projects, resume, and other portfolio content. Useful for agents answering questions about the author or summarising/searching published writing."
  },
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://rye.dev/mcp"
  },
  "capabilities": [
    "tools"
  ],
  "tools": [
    {
      "name": "search_posts",
      "description": "Full-text search across blog posts. Returns up to 10 matches with slug, title, date, and excerpt."
    },
    {
      "name": "get_post",
      "description": "Fetch a single blog post by slug. Returns frontmatter and full markdown body."
    },
    {
      "name": "list_posts",
      "description": "List recent blog posts in reverse-chronological order."
    },
    {
      "name": "list_projects",
      "description": "List portfolio projects with brief descriptions."
    },
    {
      "name": "get_project",
      "description": "Fetch a single project by slug. Returns frontmatter and full markdown body."
    },
    {
      "name": "get_about",
      "description": "Return the public profile / bio in markdown."
    }
  ],
  "documentation": "https://rye.dev/.well-known/agent-skills/index.json"
}

03 — Expertise

Technical Expertise

Protocols & AI

Model Context Protocol A2A ActivityPub AT Protocol Gopher OAuth/OIDC

Building

TypeScript Rust .NET / C# Preact Edge / Cloudflare Workers

Systems

Agent infrastructure API & protocol design libSQL/Turso RAG Distributed state

05 — Contact

Let's Connect

I'm not looking for new roles right now, but I'm always happy to talk shop — my open-source projects, MCP servers, or anything you've read here.

or view my resume