Skip to content

iblai/api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ibl.ai

iblai/api

Operate any ibl.ai organization from your AI agent. Skills + a chat MCP server.

Skills Claude Code Cursor GitHub Copilot MCP ibl.ai License: MIT

Note: These skills and servers run against the hosted api.iblai.app environment. If you'd like a license to the full platform codebase to run locally or self-host, reach out to our team at ibl.ai/contact.


Quick Start

Before you start: you need Node.js (for npx), a skills-compatible AI agent (Claude Code, Cursor, OpenCode, and 15+ others), and an ibl.ai account. No account yet? Sign up at ibl.ai/join — it walks you through creating your own organization.

1. Install the skills

npx skills add iblai/api

This installs skills that teach your AI agent how to drive the ibl.ai platform REST API directly — configure agents, manage datasets and memory, administer users and roles, send notifications, and pull analytics — for any organization you belong to. You'll now have the /iblai-* commands in your agent.

2. Get signed in

You need an ibl.ai account with your own organization. Two ways in:

  • No account (or no org of your own)? Go to ibl.ai/join. Signing up creates your account and your organization and leaves you logged in — that's everything you need.
  • Already have an account? Sign in at login.iblai.app/me.

3. Connect it

Run the login skill once. It reads your signed-in session from login.iblai.app/me, asks which organization to use, and writes your org key, username, and a Platform API Token to .env:

/iblai-login

Every other skill then reads IBLAI_ORG, IBLAI_USERNAME, and IBLAI_API_KEY from .env and calls https://api.iblai.app with Authorization: Api-Token <key>.

What is iblai/api

A toolkit for operating the ibl.ai platform from your AI agent. Where iblai/vibe gives you UI components to build an app, iblai/api gives you skills to run the platform itself — every agent-configuration and platform-admin operation mapped to its exact REST endpoints (method, URL, body) — plus a hosted MCP server for the one runtime capability that isn't a REST call: chatting with a deployed agent.

Why it matters:

  • One skill per operation — each /iblai-* skill maps one capability, so changing an agent's LLM or pulling cost analytics is a / command, not a docs hunt
  • Any organization — authenticate once via login.iblai.app/me, then target any of your organizations by org key + Api-Token
  • Endpoint-accurate — skills carry the real api.iblai.app request shapes, so your agent calls the platform correctly the first time
  • Runtime chat included — a hosted Model Context Protocol server for chatting with deployed agents (streamed responses, tool use, RAG) — no local install
  • No UI required — drive the platform headless, from CI, a terminal, or any MCP-capable assistant

How It Works

  1. Installnpx skills add iblai/api drops the skills into your project.
  2. Connect — run /iblai-login to capture your org + username from login.iblai.app/me and store an Api-Token in .env.
  3. Operate — invoke any /iblai-* skill; it fills in your org, username, and (where relevant) the agent id, then calls api.iblai.app.
  4. Automate — chain skills, or connect the hosted chat MCP server to your assistant to talk to agents at runtime.

Skills

After installing, use these directly in your AI agent with / commands.

Setup

/iblai-login

Agent

/iblai-agent-create        /iblai-agent-datasets
/iblai-agent-settings      /iblai-agent-embed
/iblai-agent-sandbox       /iblai-agent-memory
/iblai-agent-access        /iblai-agent-history
/iblai-agent-llm           /iblai-agent-audit
/iblai-agent-prompts       /iblai-agent-evals
/iblai-agent-skills        /iblai-agent-chat
/iblai-agent-safety        /iblai-agent-disclaimers
/iblai-agent-privacy       /iblai-agent-tools
/iblai-agent-mcp

Organization (platform admin)

/iblai-org                 /iblai-rbac
/iblai-management       /iblai-crm
/iblai-integrations     /iblai-notifications
/iblai-tokens          /iblai-invites
/iblai-scim            /iblai-billing
/iblai-features

Profile

/iblai-profile             /iblai-profile-metadata

Content & discovery

/iblai-search              /iblai-course-create
/iblai-analytics           /iblai-catalog
/iblai-milestones          /iblai-credentials
/iblai-catalog-media       /iblai-catalog-invitations

What each skill does

Skill Description
/iblai-login Connect an organization — opens login.iblai.app/me, captures org + username + Api-Token into .env. Run first.
/iblai-agent-create Create a new agent from a template (then configure with the other agent skills)
/iblai-agent-settings Agent identity & capabilities — name, description, category, image, visibility, flags; fork and delete
/iblai-agent-sandbox Connect/disconnect a sandbox (Claw) instance, push config, run health checks, set the model
/iblai-agent-access Role-based access to an agent — grant editor / chat / analytics_viewer to users, groups, emails
/iblai-agent-llm Choose the agent's LLM provider and model
/iblai-agent-prompts System / proactive / study / guided prompts and suggested-prompt CRUD
/iblai-agent-skills Browse the skill catalog and assign skills to an agent (requires a sandbox)
/iblai-agent-safety Moderation & safety systems, prompts/responses, and flagged-prompt logs
/iblai-agent-privacy Privacy Router — PII detection, redact/mask/block, entity types, output filtering
/iblai-agent-disclaimers Advisory text and the User Agreement
/iblai-agent-tools Enable/disable the agent's tools
/iblai-agent-mcp MCP connectors — create, edit, enable, and complete OAuth connections
/iblai-agent-datasets Training datasets (RAG) — add files/URLs/YouTube/crawl/GitHub, train, retrain, delete
/iblai-agent-embed Embed/widget settings + backend token provisioning — CSS/JS, voice, SSO, share links
/iblai-agent-memory Agent memories and memory categories — list, filter, add, edit, delete
/iblai-agent-history Conversation history & summaries; export chat history as an async report
/iblai-agent-audit Agent audit log — who changed what (read-only)
/iblai-agent-evals Agent evaluations — datasets, experiments, LLM-as-Judge + human scoring, CSV export
/iblai-agent-chat Set up live chat with an agent — wires the iblai-agent-chat MCP server into the project
/iblai-org Org-wide settings — default agent, help center URL, chat width, feature toggles
/iblai-management Org admin — Users, Groups, Roles, Policies, Teams, Alerts
/iblai-rbac RBAC — roles, policies, groups, permission checks, agent/team sharing, student toggles
/iblai-crm CRM — people, organizations, pipelines, deals (move/won/lost), activities, tags
/iblai-integrations Account integrations — LLM keys, Data Source credentials, API tokens
/iblai-tokens Platform API Tokens — list, create (secret shown once), delete
/iblai-notifications Org notifications — counts, inbox, mark-as-read, build & send
/iblai-invites User invitations — list and send (single or CSV bulk)
/iblai-scim SCIM 2.0 directory provisioning — users (Enterprise extension), groups, departments, memberships; RBAC group assignment auto-links platforms
/iblai-billing Billing & credits — credit accounts, item paywalls, prices, checkout (auth + guest), subscriptions, access checks, revenue/subscriber reporting
/iblai-features Per-user feature config & flags — get/update (inline or feature+values), bulk-config, apps/onboarding, trial activation, platform provisioning
/iblai-profile The signed-in user's own profile — Basic, Social, Education, Experience, Resume, Memory
/iblai-profile-metadata Per-user, per-org metadata key-value store — preferences, settings, feature flags
/iblai-search Discover agents and content + personalized (RAG) recommendations — faceted search (read-only)
/iblai-analytics Analytics across agents, content, and users — KPIs, users, topics, transcripts, costs, courses, programs, audit, reports
/iblai-course-create Course Creation API — generate, edit, and publish courses (tasks, outline, structure)
/iblai-catalog Learning catalog — courses, programs, pathways, resources, skills/roles taxonomy, enrollment, eligibility, reviews
/iblai-milestones Catalog milestones — course/resource/program/pathway completions and skill points (block, course, platform, user)
/iblai-credentials Digital credentials — credential CRUD, user/group assignments, assertions, course import/export, provider config (Accredible), analytics
/iblai-catalog-media Catalog media resources — list/create/update/delete media tied to courses/units/items, multipart upload, search, by-item lookup
/iblai-catalog-invitations Catalog invitations & licensing — platform/course/program invitations (bulk, blank, redeem), licenses & assignments, access requests, suggestions

Skills live in skills/. Read them, extend them, or write your own.

Updating the skills

Each skill is one SKILL.md that maps an operation to its exact api.iblai.app endpoints (method, URL, body). Because the value is endpoint accuracy, edits must be verified against the real API — not against docs or guesswork. The full contract is in CLAUDE.md; the essentials:

  • Source of truth is the backend URLconf, not the docs. Only document an endpoint if it is registered in the backend repo's urls.py (so it actually resolves through the gateway). DM skills are derived from iblai/iblai-dm-pro; app USAGE.md files are a starting point but contain errors, gaps, and edX-only endpoints that do not belong here. Verify each endpoint's method, path, and request fields against the actual urls.py / views / serializers before shipping.
  • Mind the gateway prefix. api.iblai.app strips a prefix before routing: …/dm/… → the Data Manager service, …/edx/… → Open edX. The prefix is added at the gateway, so a backend route like /api/catalog/courses/ is documented and called as https://api.iblai.app/dm/api/catalog/courses/. When in doubt, it's a /dm endpoint.
  • Keep the canonical structure. YAML frontmatter (name, description), then ## Auth & conventions → optional concept section → ## Reads (GET/HEAD) → ## Writes (POST/PUT/PATCH/DELETE) → ## Example (one real curl) → ## Notes. Multi-resource skills group resources as ### sub-headings inside Reads/Writes — Reads/Writes is always the top-level split. Mark every destructive or outward-facing call (delete, send, invite) "confirm with the user first."
  • Describe APIs, not UIs. Never reference menus, tabs, buttons, or pages — the value is the endpoint, not the screen it used to live behind.
  • Follow the naming + terminology rules. Skill scope is encoded by prefix (iblai-agent-* = one agent, iblai-profile* = the signed-in user, bare names = org-wide). Use org / org key for a customer workspace, not "tenant" or "platform" (see the Terminology section in CLAUDE.md).

When a platform endpoint changes, update the affected SKILL.md and bump the skill count badge if you add or remove a skill. Open a PR — see the recent commits for the verification-first style expected.

MCP Server

Hosted Model Context Protocol server — no local installation required. This covers the one runtime capability the skills can't: actually talking to a deployed agent. Wire it up with /iblai-agent-chat (it writes the config below from your .env token + a chosen agent), or add it manually. (Administering the platform is the skills' job — see Skills vs MCP servers.)

Server Description Endpoint
iblai-agent-chat Talk to a deployed agent — streamed AI responses (runtime) /mcp/agent-chat/

Connect from Claude Code

claude mcp add iblai-agent-chat --transport http https://asgi.data.iblai.app/mcp/agent-chat/ --header "Authorization: Api-Token YOUR_API_TOKEN"

Connect from Claude Desktop / Cursor

{
  "mcpServers": {
    "iblai-agent-chat": {
      "transport": "streamable-http",
      "url": "https://asgi.data.iblai.app/mcp/agent-chat/",
      "headers": {
        "Authorization": "Api-Token YOUR_API_TOKEN"
      }
    }
  }
}

Skills vs MCP servers

The split is administer/use-via-REST vs chat at runtime:

  • Skills do everything you can reach over REST — create and configure agents, manage datasets, memory, users, roles, notifications, discovery/search, recommendations, user profiles and analytics, and reporting — by calling the API directly.
  • The MCP server is for the one thing that isn't a REST admin call: holding a live conversation with a deployed agent (streamed responses, tool use, RAG).

Rule: if a skill covers it, there is no server for it. That's why only iblai-agent-chat remains — the former analytics, agent-create, search, and user servers were removed once skills covered analytics, agent creation, discovery + recommendations (/iblai-search), and user profile + analytics (/iblai-profile).

Authentication

Everything authenticates the same way:

  • Base URL: https://api.iblai.app
  • Header: Authorization: Api-Token <key> on every request
  • Org & username: from login.iblai.app/me — each organization you belong to shows its key (e.g. enterprise, iblai, or a UUID)
  • Api-Token: /iblai-login mints your first token from your signed-in session; afterward /iblai-tokens lists, creates, and rotates tokens. The secret is shown once.

/iblai-login does all of this for you — get signed in (via ibl.ai/join if you're new, or login.iblai.app/me if you have an account), then run it and it writes IBLAI_ORG, IBLAI_USERNAME, and IBLAI_API_KEY to .env. Never commit .env — it is in .gitignore.

Resources

License

MIT — see LICENSE. © ibl.ai

About

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

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors