Keelen
Keelen uses Claude Code, Codex, GLM, Kimi or Grok to build internal tools and work your backlog through GitHub pull requests.
https://keelen.ai/Connect straight to this server’s public endpoint.
https://keelen.ai/mcpWe add this server to your workspace, walk through sign-in once, then open Studio with tools ready to run.
Last probed Sep 14, 2026 · keelen.ai
41tools discovered
Showing 25 of 41 from the live probe.
List Projects
List the projects in this workspace, with what each one is building.
Create Project
Start building something new: creates a GitHub repo and begins work on it. Use this ONLY when the user wants a NEW repo scaffolded. If they already have a repo, use import_project(repo_full_name) instead — this tool would create a second, empty one beside theirs (list_github_repos() browses what the workspace can see). Scaffolds a new GitHub repo, a bootstrap-mode project, and submits `build_description` as the project's first Roadmap Request. `name` is a concise Gi
Submit Request
Ask for a change in plain English: a feature, a bug fix, or a new direction. Submit ONE feature or intent per call; split a multi-feature ask into separate requests. `text` must be under 16000 characters. Returns {thread_id, status, next_action, poll_after_seconds, next_step}; follow next_step (re-check get_request_status after poll_after_seconds).
Get Request Status
Check what happened to a request, and read any questions it asked back. Intake is async (~5min cadence) - poll periodically. Read `next_action`: "wait" (still processing), "answer_questions" (call answer_request with one answer per question), "done" (see generated_roadmap_item_ids), "cancelled" (terminal, no items), "failed" (see intake_failure_reason).
Set Product Vision
Say what this product is for, so every run knows what it is building toward. `vision_md` is free-form markdown and must be non-empty. Tenant-scoped: a project not in the caller's workspace 404s. Returns {project_id, product_vision_md, updated_at, next_step}.
Set Product Goal
Set the outcome to aim at right now, so work is prioritised toward one thing. `goal_md` is free-form markdown and must be non-empty. Tenant-scoped: a project not in the caller's workspace 404s. Returns {project_id, product_goal_md, updated_at, next_step}.
List Roadmap
See what is planned for a project and in what order. Queued rows also say whether the expand picker would elect them (`electable`) and, when not, why it skips them (`skip_reason`: crash_capped | noop_capped | crash_cooldown | noop_cooldown | awaiting_intake_thread | held_on_open_pr | other). A skipped item ahead of yours does not delay it.
Reorder Roadmap
Change what gets built first. `ordered_ids` is the desired front-to-back order of queued roadmap-item ids (get them from list_roadmap). The first id becomes the highest priority — the cadence expands the lowest-priority_int queued item next. Horizon pins still dominate: a pinned-later item stays at the back and a pinned-now item at the front, regardless of position in `ordered_ids`. Ids that are unknown or no longer queued are skipped; duplicates are rejected. Returns {u
Cancel Roadmap Item
Cancel / close a single roadmap item (get its id from list_roadmap). Use this to close a DELIVERED or duplicate item that keeps re-parking: when the work already shipped, every expand produces no dev-ready tasks and files a recurring `roadmap_item_parked` escalation you have to keep acking. Cancelling drops the item out of the expand queue AND resolves any open expand-lane escalation for it. Idempotent for an already expanded/cancelled item; refuses (409) while the item
Clear Horizon Pin
Clear a queued roadmap item's horizon pin (now/next/later → none). A horizon pin dominates the queue sort, so `reorder_roadmap` cannot move a pinned item out of its band — a stale `now` pin on a delivered/duplicate item clogs the front of the queue. This unpins it and reprices the queue so the item follows plain priority order again (and reorder_roadmap can then move it). Only queued items carry a settable pin (in-flight / shipped items derive theirs), so this refuses (4
Rollback Roblox Place
Roll a Roblox project's place back to a previously-published version. For a `roblox_game` project, re-publishes the RETAINED build artifact for `version_number` (get published versions from the web Roblox Publishing card) — it never rebuilds from source, so rollback is fast + deterministic. This mints a NEW Roblox version pointing at the old build. Unknown version → 404; a version with no retained artifact → 422; a place open in Studio / rate-limited → 409 (retry); an in
Project Status
Check how a project is doing: what is in flight, what shipped, what is stuck. Returns lifecycle status, open task count, queued roadmap item count, runs today, verification pass rate, open blockers, pause state, and freshness. Zero `open_tasks` does not mean an empty roadmap: `queued_roadmap_items` counts planned work awaiting expansion, including work held while the scheduler is disabled. Use list_roadmap to inspect those items. `glm_peak_paused` is NOT a fault and set
Close Task
Close a task that should not be built — a duplicate, or work already shipped. Use this when a task on the board is obsolete: the change already landed in another PR, a sibling task covers it, or the user changed direction. The task is marked `cancelled` and keeps ALL of its history (acceptance criteria, QA steps, iterations) — nothing is deleted. `reason` is REQUIRED and is recorded on the audit trail; say why in one line. Pass `superseded_by_pr_number` (or `superseded_
Get Product Goal
Read a project's current product goal (the outcome work is aimed at). READ THIS BEFORE YOU CALL `set_product_goal`: the setter REPLACES the whole document rather than appending to it, so writing without reading first silently discards whatever the user already recorded. To add a line, read the current text, edit it, and set the full result back. Returns {project_id, product_goal_md, updated_at}. `product_goal_md` is None when no goal has been set. Tenant-scoped: a proje
Get Product Vision
Read a project's current product vision (what the product is for). READ THIS BEFORE YOU CALL `set_product_vision`: the setter REPLACES the whole document rather than appending to it, so writing without reading first silently discards whatever the user already recorded. To add a line, read the current text, edit it, and set the full result back. Returns {project_id, product_vision_md, updated_at}. `product_vision_md` is None when no vision has been set. Tenant-scoped: a
List Escalations
See what the work is stuck on and waiting for a human decision about. `project_status` only COUNTS open escalations; this returns each one with its kind, reason, detail_md, recommended_action, and (when task-scoped) the blocked task's title + PR url. A "forever-paused" project with no open `project_pause` row is surfaced as a synthetic `orphan:<project_id>` row. Each row carries a server-derived `task_retry_available` flag and an exact `next_tool`: eligible recovery bloc
Resolve Escalation
Acknowledge a handled ask only when no blocked task becomes invisible. `decision_md` is a required short note (why/how it was resolved), appended to the escalation's detail_md as an audit trail. Resolving a project_pause / orphan_pause RESUMES the project (clears the pause). A blocked task's final task_block/operator_action cannot be acknowledged: use its typed retry, platform-policy resolution, replan, close, or supersede operation instead. Idempotent. Accepts a real es
Retry Blocked Task
Grant one fresh attempt after fixing a recovery-budget task block. Pass the task_block id returned by ``list_escalations``. Eligibility, tenant, task, failure class, task status, and competing blockers are all derived server-side. This is distinct from ``resolve_escalation``, which remains acknowledgement-only for task blocks. Idempotent on replay.
Rearm Roadmap Item
Run the dashboard's idempotent same-item dependency re-arm. Pass an ``expand_produced_nothing`` or ``roadmap_item_parked`` escalation id. Keelen verifies delivered structural prerequisites, grants one bounded expand retry, preserves the roadmap item id and ``depends_on_item_ids``, and resolves the matching cards in one transaction.
Resolve Platform Policy Conflict
Resolve a platform-policy dead-end with a structured plan decision. ``decision`` is one of ``reuse_existing_evidence``, ``split_task``, ``raise_project_cap``, or ``remove_scenario``. ``raise_project_cap`` also requires ``project_cap`` (6..24). The decision becomes a new task-plan section; the same task lineage is requeued before the escalation resolves.
Set Ui Review Scenario Cap
Set this web_app project's ui-review scenario budget, or reset it. ``scenario_cap`` is an integer from 6 through 24, or ``null`` to reset to the platform default of 12. The screenshot cap derives from it and moves with it, so the two can never starve each other. Raising is always allowed, including from a completely full manifest. LOWERING is refused when the default branch already declares more scenarios or screenshots than the smaller budget allows, and is also refuse
Replan Task
Replace an unretryable blocked task without losing its lineage. Creates a fresh, explicitly planned task under the same roadmap item and attempt lineage, transfers prerequisites and downstream dependents, and cancels the stale task with supersession provenance. The old PR, task, failures, criteria, and evidence remain in the audit history; nothing is marked delivered.
Control Scheduler
Start, pause, or resume a project's autonomous work. `action` is one of: "enable" | "disable" | "resume" | "process_now". - enable/disable flip scheduler_enabled (the loop dispatches only enabled, status='active' projects). - resume clears a pause (peak/backoff/manual) so the project dispatches again. - process_now durably prioritizes and immediately attempts the next intake batch, independent of the dev scheduler switch. A gate returns a typed reason and recov
Archive Project
Archive a project (reversible shelve) — frees a project slot in-tool. Stops any in-flight machine, then flips the project to `archived`: it drops out of the per-tier project cap (freeing a slot for a new project) and the loop stops dispatching it, but the project + its history are kept and can be restored from the dashboard project page. Idempotent. Prefer this over `delete_project` unless you specifically want the project gone. Owner-scoped (an MCP key is owner-only); a
Delete Project
Soft-delete a project (the harder option) — frees a slot and hides it. Stops any in-flight machine, then flips the project to `deleted`: it disappears from `list_projects`, drops out of the project cap, and the loop stops dispatching it. The row is retained for audit but there is NO in-tool restore (unlike `archive_project`) — re-import the repo to reconnect it as a fresh project. Idempotent. Owner-scoped; a project not in the workspace 404s.
Get your MCP into directories
A working endpoint is step one. Directory coverage is the coordinated launch across ChatGPT, Claude, Cursor, the MCP Registry, and community indexes.
Directory coverage for brandsKeelen uses Claude Code, Codex, GLM, Kimi or Grok to build internal tools and work your backlog through GitHub pull requests.
Use the MCP endpoint listed on this page in your MCP client configuration. One-click install pills support Claude, Cursor, VS Code, and other hosts. Copy the remote MCP URL if your client needs a manual entry.
Operate Keelen? Verify ownership to take over this directory entry.
This server appears in the MCPBundles directory. Verify you operate it to take over the listing — name, description, logo, contact email, and skill content. We email a 6-digit code to a maintainer address your server publishes in /.well-known/security.txt or /.well-known/mcpbundles.json. Free, takes about a minute.
Other MCP servers in this category from the directory index
MCPBundles probed 41 tools on the live server. The tool list on this page reflects what was discovered at the last refresh — connect your client to see the full set available to your session.
Keelen may require signing in to the provider before tools can run. Connect through MCPBundles or your MCP client and complete any provider login when prompted.
MCPBundles is an independent platform built on the open Model Context Protocol standard. Not affiliated with Anthropic PBC or Claude.