# iGloo > iGloo is a community platform (courses, events, chat, gamified progression) that AI agents can run end-to-end over MCP. Deploy a community, register members, publish posts, schedule events, build courses, wire reward ladders and member-capture webhooks — all from natural language. Payments stay in GoCushy. ## Connect over MCP - Endpoint: https://app.iglooapp.com/api/mcp - Transport: streamable HTTP (POST) - Auth: Authorization: Bearer — mint one at https://app.iglooapp.com/account/developer (shown once) - A key acts as its owner and can only touch communities that user owns or admins. - Machine manifest (no auth): https://app.iglooapp.com/api/mcp (GET) Claude Desktop / Claude Code config: { "mcpServers": { "igloo": { "url": "https://app.iglooapp.com/api/mcp", "headers": { "Authorization": "Bearer igloo_YOUR_KEY" } } } } Any other client: JSON-RPC over HTTP with the Bearer header and Accept: application/json, text/event-stream. tools/list enumerates; tools/call runs one. ## Mental model - A community is the unit; addressed by URL slug (e.g. "founder-fastlane"). Call list_communities FIRST to learn the user's slugs — almost every tool takes community_slug. - Expedition = a 5-level gamified progression. Attach a reward to a level with set_level_reward: text (a promise), course (auto-enrol), chat (owner DMs the member), or webhook (signed POST). Rewards fire automatically on level-up. - Onboarding = up to 5 joining questions + a member.joined webhook that captures every new member into a CRM/autoresponder. - A course is courses → modules → lessons, and the whole tree is built here: create_course, then create_module per section, then create_lesson per lesson (plain-text body; a pasted YouTube/Vimeo/Wistia/Loom link auto-converts to an embed). set_course_drip controls release, publish_course makes it visible, get_course reads it back. No web UI step is required. - Payments are NOT in MCP: sell access by creating a GoCushy product for the community/course; iGloo grants entitlements from GoCushy's webhook. ## Tools (30) - list_communities — communities this key can act on, with role + slug - create_community — deploy a new community; the key's owner owns it - community_stats — member / post / course / event counts - list_posts — recent posts, with comment counts and which await your reply - read_post — one post and its whole comment thread - list_comments — every recent comment across the community, flagged unanswered - reply_to_post — comment on a post as you - reply_to_comment — answer one person in a thread, as you - search_community — keyword search across posts AND comments, best match first - list_pending_members — the join queue, with each person's joining answers - approve_member — let someone in from the join queue, or decline them - list_pending_posts — posts held for review, with their full text - approve_post — publish a held post, or reject it - list_conversations — yOUR OWN chat threads: who, last message, unread - read_conversation — read one of your own threads (does not mark it read) - send_chat_message — reply in one of your own threads, as you - invite_member — register a person by email (account auto-created, unique handle) - create_post — publish a post; broadcast=true notifies every member - create_event — schedule an event (Zoom/Meet/custom link, optional weekly repeat) - create_course — create a course, then fill it with create_module + create_lesson - create_module — add a module (section) to a course; appends by default - create_lesson — add a lesson to a module: text body, video embed, runtime - set_course_drip — release schedule: none / days after enrolment / fixed date - publish_course — publish or unpublish a course - get_course — read a course back: modules, lessons, order, drip, published - list_level_rewards — read the Expedition reward ladder + usable course slugs - set_level_reward — set a level's reward (text | course | webhook | chat) - get_onboarding — read joining questions + the member-capture webhook - configure_onboarding — set ≤5 joining questions + the member.joined webhook - set_labels — rename tabs + the 5 Expedition level names Write tools are owner/admin-only and fail with a message that tells you exactly what to fix (e.g. a bad course_slug returns the list of valid slugs). ## Webhooks out (non-MCP integration) Two events flow OUT of iGloo to your systems, HMAC-signed (x-igloo-signature: sha256=): - member.joined — {event, member:{email,name,handle}, answers:{...}} — autoresponder/CRM capture - reward.unlocked — fired when a member reaches a level with a webhook reward ## Recipes Copy-paste prompts that drive the tools (launch a community, build a course by typing, member capture, reward ladder, weekly rhythm, cohort onboarding, audit): - https://app.iglooapp.com/developers - Everything in one file (this doc + all recipes inline): https://app.iglooapp.com/llms-full.txt ## Notes - Keys are hashed at rest (SHA-256); the plaintext is never stored. - create_post bodies are plain text (blank lines = paragraphs); a bare media/video URL on its own line auto-embeds (YouTube/Vimeo/Wistia/Loom, images, audio, mp4). - The embeddable read-only community widget lives at https://app.iglooapp.com/embed/.