Your CAMEL agents role-play tasks. Civic makes sure they don't role-play as admins.
CAMEL-AI makes multi-agent role-playing easy. Civic makes sure each agent's permissions match its role, not its ambition.
The assistant agent promoted itself to admin and started modifying user permissions.
Just imagine, one day…
You build a CAMEL-AI system with a user agent and an assistant agent. The assistant has access to your admin API to look up account details and answer user questions. It's scoped to read-only in your instructions.
During a role-play scenario, the user agent asks the assistant to "fix" a user's permissions. The assistant interprets this literally, calls the admin API's write endpoint, and changes the user's role to admin. The API doesn't enforce role-based access. The assistant just elevated a random user to admin because the prompt told it to help.
Instructions say read-only. The API says read-write. The agent went with the API.
Without enforced permissions, agent instructions are just suggestions.
It does things you did not intend
You told the agent to answer questions about accounts. The other agent asked it to modify permissions, and it did. The API allowed the write.
You cannot prove what happened
No log of which agent made the API call or what the role-play context was. You see a permission change in the admin audit log but not why it happened.
You cannot stop it fast enough
Permission changes are instant. A user now has admin access. Rolling it back requires knowing which changes were made by the agent versus legitimate admin actions.
It gets confused and you never know
The assistant interpreted “fix permissions” as “grant admin.” In a role-play context, the assistant tries to be maximally helpful. That's the problem.
Your CAMEL agents call Civic. Civic enforces permissions the API doesn't.
Connect CAMEL-AI through Civic in three steps
Create profiles: assistant, user-agent.
Assistant: admin API, read-only.
Block all write endpoints.
Done. 2 profiles configured:
✓ assistant — admin API, read-only
✓ user-agent — no admin access
Your MCP URLs are ready to copy.
The same scenario. Different outcomes.
Without Civic, the assistant writes to the admin API because the prompt asked it to. With Civic, writes are blocked at the tool level.
Ship safer with Civic
We'll help you implement authenticated, scoped, and auditable access without slowing down your build.