porch

About porch

porch is a gateway that lets AI agents read public websites through the Model Context Protocol (MCP).

The porch user agent

When an agent calls a tool, the gateway fetches that one page from the site, on demand. It identifies itself as:

Mozilla/5.0 (compatible; porch/0.1.0; +https://porch.pseudofreedom.com/about)

It only makes GET requests, fetches one page per tool call, never crawls basic-tier sites, caches pages for a few minutes, and refuses private network addresses.

Opting out

To block the gateway from a site, add this to robots.txt:

User-agent: porch
Disallow: /

Pages can also opt out individually with <meta name="robots" content="noai"> or the response header X-Robots-Tag: noai.

Site manifest

Site owners can declare named tools in /.well-known/mcp.json (or /mcp.json). Tools read same-site paths only; the manifest is declarative and no code is ever executed. JSON Schema: https://porch.pseudofreedom.com/schema/manifest.v1.json.

{
  "version": 1,
  "name": "Yi Zhang",
  "description": "Career, resume and writing of Yi Zhang, software engineer.",
  "tools": [
    {
      "name": "get_career_timeline",
      "description": "Every role Yi has held, with dates and location.",
      "source": "/data/timeline.json"
    },
    {
      "name": "get_role",
      "description": "Details of one role.",
      "inputSchema": {
        "type": "object",
        "properties": { "company": { "type": "string", "enum": ["meta", "unit21", "wise"] } },
        "required": ["company"]
      },
      "source": "/company/{company}/"
    }
  ],
  "includeGenericTools": true
}

JSON sources can be narrowed with a filter, for example "filter": {"field": "company", "equals": "{company}"} (operators: equals, contains; from selects a nested array). The gateway also reads /llms.txt for the site summary and page list.

Verified sites

Owners can sign in, add their site, and create one DNS record, mcp.example.com CNAME <token>.edge.porch.pseudofreedom.com. That record proves control of the domain and serves the endpoint at https://mcp.example.com. Verified sites also get keyword search, headless rendering for JavaScript-only pages, a longer cache with a purge button, and usage analytics. It's free.