{
  "markdown": "# plori\n\n**plori (plori.ai): a cloud AI agent with its own persistent environment - durable disk, real CLI tools, and memory.**\n\n[plori](https://plori.ai) provides the agent: each one gets a persistent machine with a real\ndisk, real tools, and memory of its own. Idle agents scale to\nzero. You talk to your agents in the web app, or drive them from your own tools over\nMCP and REST.\n\nThis repository is the integration front door. The product itself lives at\n[plori.ai](https://plori.ai); the remote MCP server lives at `https://api.plori.ai/mcp`.\n\n## Connect your MCP client\n\nplori is a **remote** MCP server (streamable HTTP). There is nothing to install or run\nlocally. Sign-in happens in your browser via OAuth 2.1 the first time your client\nconnects; headless environments can use an API key instead.\n\n**Claude Code**\n\n```sh\nclaude mcp add --transport http plori https://api.plori.ai/mcp\n```\n\n**Cursor**\n\nUse the one-click [Add to Cursor](https://plori.ai/mcp) button, or add manually:\n`Settings -> MCP -> Add server` with URL `https://api.plori.ai/mcp`.\n\n**VS Code**\n\n```sh\ncode --add-mcp '{\"name\":\"plori\",\"type\":\"http\",\"url\":\"https://api.plori.ai/mcp\"}'\n```\n\n**Codex CLI**\n\n```sh\ncodex mcp add plori --url https://api.plori.ai/mcp\ncodex mcp login plori\n```\n\nCodex auto-detects plori's OAuth on `login`. One-install alternative with the skill\nbundled: `codex plugin marketplace add plori-ai/codex-plugin` then `codex plugin add\nplori@plori`.\n\n**Cline**\n\nFollow [llms-install.md](./llms-install.md), written for Cline's automated installer.\n\n**Any other client**\n\nNative streamable-HTTP clients connect to `https://api.plori.ai/mcp` directly. Clients\nthat only speak stdio can bridge with the [`plori-mcp` npm package](https://www.npmjs.com/package/plori-mcp)\n(a thin wrapper around `mcp-remote` with the endpoint pinned; this repository is its source):\n\n```sh\nnpx plori-mcp\n# headless / CI: authenticate with an API key instead of the OAuth flow\nnpx plori-mcp --header \"Authorization: Bearer plori_sk_...\"\n# equivalent, without the wrapper:\nnpx mcp-remote https://api.plori.ai/mcp\n```\n\nAPI keys are minted in [Dashboard -> Settings](https://plori.ai/dashboard/settings) on\na registered account.\n\n## Or skip MCP: your own terminal\n\nThe [plori CLI](https://www.npmjs.com/package/@plori/cli) is not an MCP client. It is a\ndoor of its own, and it opens the same live session the web app shows: the recent\nhistory, a prompt, streaming output, and the approval queue in one place. A turn you\nsend in the terminal appears in an open browser tab as it streams.\n\n```sh\ncurl -fsSL https://plori.ai/install.sh | sh\nplori login && plori attach <agent-name>\n```\n\nThe installer drops one static binary in `~/.local/bin` and needs no Node; if that\ndirectory is not on your PATH yet, the script prints the line to add. `npm i -g\n@plori/cli` works too. The argument to `attach` is an agent name, an agent id, or a\nsession id, so a session id copied out of the web app works on its own. `Ctrl-D`\ndetaches and leaves the run going on the server.\n\nThe terminal does not give the agent access to your local files. The shell, the disk,\nand the files are the agent's own cloud environment.\n\n## Verify the connection\n\nAsk your client:\n\n> List my plori agents and tell me how many credits I have left.\n\nYou should see `list_agents` and `get_credits` tool calls and a real answer.\n\n## What the tools do\n\nThe server exposes 23 tools in five groups:\n\n- **Agents**: list, inspect, create, and delete agents; the Plori Router chooses the model per task.\n- **Runs**: invoke an agent and read its reply (blocking or fire-and-forget), list\n  runs, fetch a past result, or cancel an in-flight run.\n- **Human-in-the-loop**: list an agent's pending questions and answer them.\n- **Scheduling**: schedule a deferred run so an agent works while you are away.\n- **Workflows**: list every workflow or filter by holding agent / the unassigned bucket\n  (`list_workflows` with optional `agent_id` UUID or `\"none\"`), read one with the step\n  projection pinned for execution (`get_workflow`) or read an exact version's full\n  definition (`get_workflow_version`), edit a draft under compare-and-swap\n  (`edit_workflow`), create one for an agent to build (`create_workflow`, with optional\n  `agent_id`), run a built workflow now as a real, billed execution (`run_workflow`),\n  and read recent execution history (`list_workflow_executions`) or poll one execution's\n  status, timing, credits, and per-step input/output payloads (`get_workflow_execution`).\n\nAccount reads round out the set: `get_credits`, `get_usage`, `get_disk`, and\n`list_connections` — your third-party OAuth providers with status, authorization and\nexpiry times, and the scopes configured for each. Tokens and client secrets are never\nreturned.\n\nCosts: creating and running agents spends plori credits from your account. Reading\n(lists, results, balances) is free. The [pricing page](https://plori.ai/pricing) has\nthe details; revoke a client's access any time in your client's settings, or revoke\nthe API key in Dashboard -> Settings.\n\n## For AI agents reading this\n\nThe machine-readable entry points:\n\n- Front door: [plori.ai/agents.md](https://plori.ai/agents.md)\n- Site index: [plori.ai/llms.txt](https://plori.ai/llms.txt)\n- Skill: [SKILL.md](https://plori.ai/.well-known/agent-skills/plori/SKILL.md)\n  (index: `/.well-known/agent-skills/index.json`)\n- MCP server card: `https://api.plori.ai/mcp/server-card`\n- OAuth discovery: RFC 9728 protected-resource metadata on `api.plori.ai`, dynamic\n  client registration supported\n- Registry entry: [`ai.plori/plori`](https://registry.modelcontextprotocol.io/v0/servers?search=ai.plori/plori)\n  in the official MCP Registry\n\nEvery page on plori.ai is also served as Markdown: append `.md` to the path or send\n`Accept: text/markdown`.\n\n## Docs and support\n\n- [Connect guide](https://plori.ai/mcp) (per-client, kept current)\n- [Docs](https://plori.ai/docs)\n- [Privacy](https://plori.ai/privacy) and [terms](https://plori.ai/terms)\n- Questions: [agent@plori.ai](mailto:agent@plori.ai)\n",
  "bytes": 6056,
  "sha": "bf193b7de8b29a247c36ae1cc1ad4ee6f998e25d0146cf1893f1c2f2e61a007e",
  "repo_slug": "plori-ai/plori",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_plori_plori_47abfda0/readme"
}