# generate_llms_txt

Generate a production-ready llms.txt file for any URL so AI crawlers (ChatGPT, Claude, Perplexity) can index the site cleanly. Fetches the page, extracts title/description/key links, and emits the standard llms.txt markdown format. Output is a single text blob ready to drop at site-root/llms.txt. Useful for: getting a client's site indexed by AI, drafting llms.txt for your own project, or auditing how an AI crawler would see a competitor.

Agent View of the PolicyLayer registry record for `generate_llms_txt`. HTML page: https://policylayer.com/tools/io-github-pipeworx-io-19hz/generate-llms-txt

## Facts

- Tool: `generate_llms_txt`
- Server: 19hz (`https://gateway.pipeworx.io/19hz/mcp`) — https://policylayer.com/tools/io-github-pipeworx-io-19hz.md
- Homepage: https://github.com/pipeworx-io/mcp-19hz
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server auth posture: open
- Server CORS policy: *
- Server rate-limited: yes
- Parameters: 2 (1 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `url` | string | yes | Full URL of the site to summarize, e.g. "https://example.com" or a specific landing page. |
| `max_links` | number | no | Maximum number of link entries to include (default 25, max 50). |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "generate_llms_txt",
    "arguments": {
      "url": "<url>"
    }
  }
}
```

## Why generate_llms_txt is rated Medium

This tool generates a structured llms.txt file for placement at a site root, enabling AI crawler discovery. It reads a URL and produces formatted output suitable for writing. Since it creates/generates new data (the llms.txt file content) without destructive effects or code execution, this is a Write operation.

From the tool's own definition: "Tool generates and creates a file-ready text output ('emits the standard llms.txt markdown format', 'Output is a single text blob ready to drop at site-root/llms.txt'), which constitutes content creation/modification."

Risk signals: Accepts URL/endpoint input (url) · Admin/system-level operation

## Use case

AI agents use generate_llms_txt to create or update resources in 19hz, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your 19hz environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches 19hz:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "generate_llms_txt": {
      "limits": [
        {
          "counter": "generate_llms_txt_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on 19hz (31)

- `forget` — Destructive — https://policylayer.com/tools/io-github-pipeworx-io-19hz/forget.md
- `polymarket_arbitrage` — Financial — https://policylayer.com/tools/io-github-pipeworx-io-19hz/polymarket-arbitrage.md
- `polymarket_edges` — Financial — https://policylayer.com/tools/io-github-pipeworx-io-19hz/polymarket-edges.md
- `ai_visibility_check` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/ai-visibility-check.md
- `ask_pipeworx` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/ask-pipeworx.md
- `ask_pipeworx_grounded` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/ask-pipeworx-grounded.md
- `bet_research` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/bet-research.md
- `compare_entities` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/compare-entities.md
- `deep_research` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/deep-research.md
- `discover_tools` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/discover-tools.md
- `entity_profile` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/entity-profile.md
- `events` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/events.md
- `list_subscriptions` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/list-subscriptions.md
- `pipeworx_trending` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/pipeworx-trending.md
- `polymarket_edge_tracker` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/polymarket-edge-tracker.md
- `polymarket_kalshi_spread` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/polymarket-kalshi-spread.md
- `recall` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/recall.md
- `recent_alerts` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/recent-alerts.md
- `recent_changes` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/recent-changes.md
- `regions` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/regions.md
- `resolve_entity` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/resolve-entity.md
- `scan_competitor_ai_presence` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/scan-competitor-ai-presence.md
- `scan_dependency` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/scan-dependency.md
- `search_within` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/search-within.md
- `suggest_questions` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/suggest-questions.md
- `validate_claim` — Read — https://policylayer.com/tools/io-github-pipeworx-io-19hz/validate-claim.md
- `pipeworx_feedback` — Write — https://policylayer.com/tools/io-github-pipeworx-io-19hz/pipeworx-feedback.md
- `polymarket_fill_risk` — Write — https://policylayer.com/tools/io-github-pipeworx-io-19hz/polymarket-fill-risk.md
- `remember` — Write — https://policylayer.com/tools/io-github-pipeworx-io-19hz/remember.md
- `subscribe` — Write — https://policylayer.com/tools/io-github-pipeworx-io-19hz/subscribe.md
- …and 1 more: https://policylayer.com/tools/io-github-pipeworx-io-19hz.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-pipeworx-io-19hz · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-pipeworx-io-19hz
