{
  "markdown": "# agentprofile\n\n![license](https://img.shields.io/badge/license-Apache--2.0-blue)\n![MCP](https://img.shields.io/badge/MCP-Streamable_HTTP-6b46c1)\n![clients](https://img.shields.io/badge/works_with-Claude_Code_·_Cursor_·_Codex-c4571a)\n![status](https://img.shields.io/badge/hosted-live-2b7a5b)\n\n**Your agent's identity, everywhere.** One profile — skills, credentials, and\nmemory — synced to every agent tool through a single MCP URL. Open source,\nzero-knowledge, and self-hostable on your own Cloudflare account.\n\n> Every AI tool you use — Claude Code, Cursor, Codex — starts from zero: its own\n> skills, its own pasted API keys, its own amnesia. agentprofile gives them one\n> shared brain.\n\n---\n\n> **Live now:** hosted at **https://agentprofile.everyai-com.workers.dev** ·\n> dashboard at [`/app`](https://agentprofile.everyai-com.workers.dev/app)\n\n## Connect (any MCP client)\n\nThe server is a **remote MCP server** (Streamable HTTP) — no install needed, just\none URL:\n\n```\nhttps://agentprofile.everyai-com.workers.dev/mcp\n```\n\nIt supports **two ways to authenticate**:\n\n- **OAuth** (recommended) — clients that support MCP OAuth discover it automatically\n  from the URL and show a consent screen.\n- **Bearer token** — run `npx @magicteams_ai/agentprofile` to get a token, or hit `POST /profiles`.\n\n<details><summary><b>Claude Code</b></summary>\n\n```bash\nclaude mcp add --transport http agentprofile https://agentprofile.everyai-com.workers.dev/mcp\n```\nOr with a bearer token:\n```bash\nclaude mcp add --transport http agentprofile https://agentprofile.everyai-com.workers.dev/mcp \\\n  --header \"Authorization: Bearer ap_…\"\n```\n</details>\n\n<details><summary><b>Cursor / other <code>mcp.json</code> clients</b></summary>\n\n```json\n{\n  \"mcpServers\": {\n    \"agentprofile\": {\n      \"url\": \"https://agentprofile.everyai-com.workers.dev/mcp\",\n      \"headers\": { \"Authorization\": \"Bearer ap_…\" }\n    }\n  }\n}\n```\n</details>\n\nOr just run **`npx @magicteams_ai/agentprofile`** and it configures every client it finds.\n\n## 60-second demo\n\n```bash\nnpx @magicteams_ai/agentprofile\n```\n\nThat creates an **anonymous profile** (no signup) on the hosted instance,\nauto-detects your installed MCP clients, and writes their config. Restart your\ntools, then:\n\n1. In **Claude Code**: *\"Remember that I prefer pnpm over npm.\"*\n2. In **Cursor**: *\"What package manager do I prefer?\"*\n\nIt recalls it. That's your profile, everywhere.\n\n## What's in this repo (Phase 1)\n\nThis is the **Phase 1** implementation from the [master plan](./docs/): a working\nend-to-end skeleton that syncs **skills and memory** across tools over MCP.\nCredentials (zero-knowledge), OAuth, semantic recall, and the skill registry land\nin later phases — see [Roadmap](#roadmap).\n\n| Path | What it is |\n|------|-----------|\n| [`apps/worker`](./apps/worker) | The Cloudflare Worker: a remote MCP server backed by one Durable Object per profile (SQLite for memory, R2 for skill bundles), plus a **landing page** (`/`) and a **live dashboard** (`/app`) with real-time WebSocket sync. |\n| [`packages/cli`](./packages/cli) | The `agentprofile` CLI: instant-profile onboarding, client auto-config, `doctor`, `skill add`. |\n\n### Web UI\n\n- **`/`** — landing page with the one-command install and the pitch.\n- **`/app`** — live dashboard. Paste your token (or hit \"Create new\") and watch skills\n  and memory update **in real time**: when any agent calls `remember`, the fact appears\n  instantly over a WebSocket. Add or delete memories and skills right from the page.\n- **`/setup-prompt`** — the \"set up with your agent\" prompt: paste it into Claude Code or\n  Cursor and your own agent installs and verifies agentprofile for you.\n\n## How it works\n\n```\nagent tool ──Streamable HTTP──▶ Worker ──idFromName(profileId)──▶ ProfileDO\n  (Claude Code / Cursor)          /mcp                            per-user SQLite\n                                                                  • facts (memory)\n                                                                  • skills\n```\n\n- **One Durable Object per user** is the source of truth. It validates the\n  profile's secret on every call and owns that profile's memory and skills.\n- **Bearer token = `ap_<profileId>.<secret>`.** The `profileId` routes to the DO;\n  the DO verifies a SHA-256 hash of the secret. No central token table.\n- **The MCP surface is 6 tools**: `get_context`, `list_skills`, `get_skill`,\n  `remember`, `recall`, `forget`. Deliberately small — every description byte is\n  paid on every client turn (pinned in tests).\n\n## Run it locally\n\n```bash\nnpm install\nnpm run dev            # starts the Worker on http://localhost:8787\n```\n\nIn another terminal:\n\n```bash\n# point the CLI at your local server\nAGENTPROFILE_SERVER=http://localhost:8787 npx @magicteams_ai/agentprofile\n```\n\nRun the tests and typecheck:\n\n```bash\nnpm --workspace apps/worker run test\nnpm --workspace apps/worker run typecheck\n```\n\n## Deploy your own (self-host)\n\nagentprofile self-hosts on **your own Cloudflare account** — the free Workers tier\ncovers personal use.\n\n```bash\ncd apps/worker\nnpx wrangler r2 bucket create agentprofile-bundles\nnpx wrangler deploy\n# then set PUBLIC_BASE_URL to your deployed URL and connect with:\nAGENTPROFILE_SERVER=https://agentprofile.<you>.workers.dev npx @magicteams_ai/agentprofile\n```\n\n## Roadmap\n\n- **P1:** MCP server + ProfileDO, 6 tools, memory + skills, instant-profile CLI, live dashboard. ✅\n- **P2:** per-client **grants + audit log** with live enforcement + dashboard access panel ✅; MCP sessions (`Mcp-Session-Id`) ✅; **semantic recall** via Workers AI embeddings (keyword fallback) ✅; **pluggable memory providers** (builtin default + Mem0 + Supermemory adapters, `/memory-config`) ✅; **OAuth 2.0 + PKCE** consent flow with discovery, dynamic registration, and consent screen ✅.\n- **P3:** zero-knowledge credentials (client-side E2E), JIT injection, approval flow.\n- **P4:** one-click Deploy-to-Cloudflare, signed skill registry, format translators.\n- **P5:** teams, SSO, hosted cloud.\n\nSee the full plan in [`docs/`](./docs).\n\n## Contributing\n\nContributions are welcome under the [DCO](https://developercertificate.org/) —\nsign off commits with `git commit -s`. See [SECURITY.md](./SECURITY.md) for\nresponsible disclosure.\n\n## License\n\n[Apache-2.0](./LICENSE).\n",
  "bytes": 6277,
  "sha": "6b51536b3faf2737479ae2a989b45dde3399230f1cd67d3c79f1972877608791",
  "repo_slug": "everyai-com/agentprofile",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_everyai_com_agentprofile_90e5641a/readme"
}