agentsclimarketplace

Iblai api agent access

Skill iblai/api/skills/iblai-api-agent-access

Agent skills + a chat MCP server to operate the ibl.ai platform via its REST API. Install: npx skills add iblai/api

Install
npx -y skills add iblai/api --skill iblai-api-agent-access

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Manage role-based access to an ibl.ai agent via the platform API — list role policies, search users/groups, and grant/revoke editor, chat, or analytics_viewer roles for users, groups, and emails. Use when controlling who can edit, chat with, or view analytics for an agent.

SKILL.md

3.5 KB, as published. Nobody here has run it

iblai-api-agent-access

Manage role-based access control that decides who can edit, chat with, or view analytics for an agent. Searches resolve users and groups; every grant and revoke flows through the single mentor-access/ write endpoint. Use when controlling who can edit, chat with, or view analytics for an agent.

Auth & conventions

  • Base URL: https://api.iblai.app
  • Header: Authorization: Api-Token $IBLAI_API_KEY on every request.
  • Path vars: {org} = $IBLAI_ORG, {username} = $IBLAI_USERNAME, {mentor} = the agent's unique id (e.g. d17dc729-60fd-4363-81a0-f67d9318b03e).
  • Access writes go through one endpoint — POST https://api.iblai.app/dm/api/core/rbac/mentor-access/ — keyed by the numeric mentor_id, adding/removing users, groups, and emails per role.
  • Not connected yet? Run /iblai-api-login first to populate IBLAI_ORG, IBLAI_USERNAME, and IBLAI_API_KEY.

Reads

  • GET …/users/{username}/mentors/{mentor}/settings/ — resolve the numeric mentor_id.
  • GET https://api.iblai.app/dm/api/core/rbac/mentor-access/?mentor_id={id}&platform_key={org} — list current role policies.
  • POST https://api.iblai.app/dm/api/core/rbac/permissions/check/ — can the user search users/groups?
    {
      "platform_key": "string (required)",
      "resources": ["/users/", "/groups/"]
    }
    
  • GET https://api.iblai.app/dm/api/core/platform/users/?platform_key={org}&platform_org={org}&query={q}&page=1&page_size=20&return_policies=false — user autocomplete.
  • GET https://api.iblai.app/dm/api/core/rbac/groups/?platform_key={org}&name={q}&page=1&page_size=20&include_users=true — group autocomplete.

Writes

  • POST https://api.iblai.app/dm/api/core/rbac/mentor-access/ — grant / revoke access (all access changes go through this one endpoint):
    {
      "platform_key": "string (required)",
      "mentor_id": "number (required)",
      "role": "editor | chat | analytics_viewer (required)",
      "users_to_add": "number[]",
      "users_to_remove": "number[]",
      "groups_to_add": "number[]",
      "groups_to_remove": "number[]",
      "emails_to_add": "string[]",
      "usernames_to_add": "string[]"
    }
    

Example

Grant a user (id 4218) the chat role and revoke a group (id 91) on the agent:

curl -X POST \
  "https://api.iblai.app/dm/api/core/rbac/mentor-access/" \
  -H "Authorization: Api-Token $IBLAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform_key": "'"$IBLAI_ORG"'",
    "mentor_id": 1057,
    "role": "chat",
    "users_to_add": [4218],
    "groups_to_remove": [91]
  }'

Notes

  • The write endpoint takes the numeric mentor_id, not the {mentor} UUID — resolve it from the settings/ read first.
  • One role per POST: send role as editor, chat, or analytics_viewer and the add/remove arrays apply to that role only.
  • Use permissions/check/ before searching — if the user lacks access to /users/ or /groups/, skip the corresponding autocomplete.
  • emails_to_add and usernames_to_add invite by identifier without a prior id lookup; users and groups are added/removed by numeric id from the search reads.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.