Patronage Loop
Project-scoped marketing operations through Patronage Loop's remote MCP server.
Installing this plugin configures the portable Patronage Loop skill and the remote Patronage Loop MCP endpoint together. Browser authentication is handled by Patronage Loop; never paste API keys into an agent conversation. No bundled .plugin file is required.
Install in an Agent Plugins client
Install the repository root, https://github.com/patronage/loop-plugin, in a client that supports Agent Plugins 1.0.0. The root plugin.json, skills/, and mcp.json are the canonical portable package. The client discovers OAuth from the remote MCP endpoint and owns authorization and credential storage.
Install in Codex CLI or Desktop
Use Codex CLI 0.147.0 or newer. Codex 0.144.x drops the RFC 9207 iss value from the loopback callback and cannot persist this OAuth connection; Loop does not weaken issuer validation to accommodate that client bug.
Add the Patronage marketplace, install the plugin, and start browser authentication:
codex plugin marketplace add patronage/loop-plugin --ref main
codex plugin add patronage-loop@loop-plugin
codex mcp login patronage-loop
Codex selects an available loopback callback port automatically. No global callback-port preference or setup script is required. The Codex adapter requests only offline_access loop:read loop:execute initially; Loop advertises its full capability catalog and returns exact insufficient_scope challenges when a later operation needs loop:write or loop:admin. The OAuth client is the Patronage-published profile https://loop.patronage.com/oauth/codex-client-metadata.json; it is not an OpenAI identity or endorsement.
The browser success page confirms only that the OAuth callback reached Codex. Setup is complete only after codex mcp list reports OAuth for patronage-loop instead of Not logged in, and a new Codex task can call projects_list successfully.
For direct CLI setup instead of plugin installation:
codex mcp add patronage-loop --url https://loop.patronage.com/mcp --oauth-client-id https://loop.patronage.com/oauth/codex-client-metadata.json
codex mcp login patronage-loop --scopes offline_access,loop:read,loop:execute
codex mcp logout patronage-loop clears local OAuth credentials but does not revoke the Loop Agent Connection.
Install in Claude Code
Add the Patronage marketplace, install the plugin, and start browser authentication:
claude plugin marketplace add patronage/loop-plugin
claude plugin install patronage-loop@loop-plugin
claude mcp login plugin:patronage-loop:patronage-loop
Restart Claude Code if the plugin does not become available immediately.
Cursor and Grok Bot
The public Cursor Marketplace listing is not live. Do not treat the Cursor storefront or plugin search as an install path.
Loop has no Dynamic Client Registration endpoint. Cursor and Grok Bot authenticate with the Patronage-published Cursor client ID https://loop.patronage.com/oauth/cursor-client-metadata.json. That URL is a Patronage identity, not a Cursor or xAI identity. Grok Bot uses this same Cursor client and Cursor's Agents callback.
Add this to Cursor MCP settings or ~/.cursor/mcp.json, then choose Connect or Authenticate:
{
"mcpServers": {
"patronage-loop": {
"url": "https://loop.patronage.com/mcp",
"auth": {
"CLIENT_ID": "https://loop.patronage.com/oauth/cursor-client-metadata.json"
}
}
}
}
A team or repository marketplace import of this package installs the Cursor adapter, which already carries that client ID. Restart Cursor after installation.
This repository is generated release output. Source changes are managed by Patronage and synchronized through a verified release process. Use Issues for bugs and feature requests. Public pull requests are not accepted.
Licensed under the MIT License.