https://github.com/iblai/api
Agent skills + a chat MCP server to operate the ibl.ai platform via its REST API. Install: npx skills add iblai/api
https://github.com/iblai/api
agent-skills ai-agents claude-code cursor github-copilot ibl-ai llm mcp model-context-protocol rest-api skills
Last synced: 1 day ago
JSON representation
Agent skills + a chat MCP server to operate the ibl.ai platform via its REST API. Install: npx skills add iblai/api
- Host: GitHub
- URL: https://github.com/iblai/api
- Owner: iblai
- License: mit
- Created: 2025-12-19T20:13:28.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2026-06-12T18:54:21.000Z (9 days ago)
- Last Synced: 2026-06-12T20:22:02.736Z (9 days ago)
- Topics: agent-skills, ai-agents, claude-code, cursor, github-copilot, ibl-ai, llm, mcp, model-context-protocol, rest-api, skills
- Homepage:
- Size: 130 KB
- Stars: 14
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# iblai/api
Operate any ibl.ai organization from your AI agent. Skills + a chat MCP server.
[](https://skills.sh/iblai/api)
[](https://claude.ai)
[](https://cursor.com)
[](https://github.com/features/copilot)
[](https://modelcontextprotocol.io)
[](https://ibl.ai)
[](LICENSE)
> **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](https://ibl.ai/contact).
---
## Quick Start
**Before you start:** you need [Node.js](https://nodejs.org) (for `npx`), a skills-compatible AI agent ([Claude Code](https://claude.ai/code), Cursor, OpenCode, and [15+ others](https://skills.sh)), and an ibl.ai account. **No account yet?** Sign up at [ibl.ai/join](https://ibl.ai/join) — it walks you through creating your own organization.
### 1. Install the skills
```bash
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. Connect an organization
Run the login skill once. It opens [login.iblai.app/me](https://login.iblai.app/me), you sign in via SSO, it asks which of your organizations to use, and it writes your **org key**, **username**, and a **Platform API Token** to `.env`:
```text
/iblai-login
```
> **First time?** No ibl.ai account → start at [ibl.ai/join](https://ibl.ai/join) (it leads you through creating your organization), then run `/iblai-login`. Already signed in but only see the shared **`main`** organization? That's not your own workspace — create your own org first; `/iblai-login` handles it.
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 `.
## What is iblai/api
A toolkit for operating the [ibl.ai](https://ibl.ai) platform from your AI agent. Where [`iblai/vibe`](https://github.com/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. **Install** — `npx 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
```text
/iblai-login
```
### Agent
```text
/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)
```text
/iblai-org /iblai-rbac
/iblai-management /iblai-crm
/iblai-integrations /iblai-notifications
/iblai-tokens /iblai-invites
/iblai-scim /iblai-billing
/iblai-features
```
### Profile
```text
/iblai-profile /iblai-profile-metadata
```
### Content & discovery
```text
/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/`](./skills). Read them, extend them, or write your own.
## 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](#skills-vs-mcp-servers).)
| Server | Description | Endpoint |
|--------|-------------|----------|
| [iblai-agent-chat](./mcp/iblai-agent-chat) | Talk to a deployed agent — streamed AI responses (runtime) | `/mcp/agent-chat/` |
### Connect from Claude Code
```bash
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
```json
{
"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 ` on every request
- **Org & username:** from [login.iblai.app/me](https://login.iblai.app/me) — each organization you belong to shows its **key** (e.g. `enterprise`, `iblai`, or a UUID)
- **Api-Token:** your **first** token comes from the platform admin (or `login.iblai.app`); once you're connected, `/iblai-tokens` lists, creates, and rotates tokens. The secret is shown once.
The `/iblai-login` skill walks through all of this and writes `IBLAI_ORG`, `IBLAI_USERNAME`, and `IBLAI_API_KEY` to `.env`. Never commit `.env` — it is in `.gitignore`.
## Resources
- [skills.sh/iblai/api](https://skills.sh/iblai/api) — install skills with `npx skills add iblai/api`
- [iblai/vibe](https://github.com/iblai/vibe) — companion toolkit for *building* ibl.ai apps (UI components + Claude Code skills)
- [login.iblai.app/me](https://login.iblai.app/me) — your account, organizations, and org keys
- [docs.ibl.ai](https://docs.ibl.ai) — platform documentation
## License
MIT — see [LICENSE](LICENSE). © [ibl.ai](https://ibl.ai)
