{
  "markdown": "# krexel-mcp\n\n> Ship AND edit static sites from any AI assistant that speaks the\n> [Model Context Protocol](https://modelcontextprotocol.io/).\n\n`krexel-mcp` is the official MCP server for\n[Krexel](https://krexel.com) — a \"your AI ships and edits your live site\"\nAPI. Point any MCP-compatible client (Claude Desktop, Cursor, Windsurf,\nVS Code) at this server and your assistant can deploy, list, edit,\nrollback, and inspect sites just by talking.\n\n## Quickstart\n\nAdd `krexel-mcp` to your MCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"krexel\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"krexel-mcp\"],\n      \"env\": {\n        \"KREXEL_API_URL\": \"https://api.krexel.com\",\n        \"KREXEL_API_KEY\": \"krx_live_••••••••••••••••\",\n        \"KREXEL_MASTER_KEY\": \"<your-32-byte-hex-key>\"\n      }\n    }\n  }\n}\n```\n\nRestart your client. The assistant now sees nine Krexel tools.\n\n## Tools\n\n| Tool           | What it does                                                                 |\n| -------------- | ---------------------------------------------------------------------------- |\n| `ship_site`    | Upload a built site folder. Returns a `deploy_id` and preview URL.           |\n| `edit_file`    | Patch a deployed site (create / replace / replace_all / delete). 0.1 deploy. |\n| `list_files`   | List the files in a deployed site (path + size + sha256).                    |\n| `read_file`    | Read one file's content from a deployed site.                                |\n| `list_deploys` | List recent deploys from local state. Optional domain filter.                |\n| `get_logs`     | Fetch build logs for a deploy.                                               |\n| `rollback`     | Mark a previous deploy as the current good version.                          |\n| `set_env`      | Encrypt and persist an env var for a domain (AES-256-GCM).                   |\n| `get_status`   | Return account, deploy count, plan, and state directory.                     |\n\n### The conversational-edit flow\n\n1. AI calls `list_files(deploy_id)` to see what files exist on the site.\n2. AI calls `read_file(deploy_id, path)` to read the file it wants to change.\n3. AI generates the new content itself, then calls\n   `edit_file(deploy_id, op: \"replace\", file, find, value, message)`.\n4. Krexel ships the patch as a new deploy — live in ~8 seconds, 0.1 deploy\n   against the customer's quota. The new `deploy_id` and `parent_deploy_id`\n   are returned so the AI can chain further edits on top.\n\nThe AI is the brain. Krexel is the hands.\n\nAll tools take plain JSON arguments and return JSON. Tool schemas are\ndiscoverable via the standard MCP `tools/list` request.\n\n## Configuration\n\n| Env var             | Required | Default                  | Notes                                                                                                     |\n| ------------------- | -------- | ------------------------ | --------------------------------------------------------------------------------------------------------- |\n| `KREXEL_API_URL`    | no       | `https://api.krexel.com` | Base URL of the Krexel orchestrator API.                                                                  |\n| `KREXEL_API_KEY`    | no*      | `~/.krexel/auth.json`    | Account API key. Forwarded as `Authorization: Bearer ***` to every API call. *Required unless saved by `krexel login`. |\n| `KREXEL_MASTER_KEY` | yes*     | —                        | 32-byte hex string for env-var encryption. *Required for `set_env`.                                       |\n\nState files are written under `$KREXEL_HOME` (default `~/.krexel/`).\n\n## License\n\nMIT © [Syfer](https://krexel.com)\n",
  "bytes": 3656,
  "sha": "26d19056d45ce501b81dc8ca4da01fe6b9f2b71ef311dc4ba867c3dd3601febc",
  "repo_slug": "syfer-web/krexel-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_syfer_web_krexel_mcp_98e9bac5/readme"
}