Keelen is an AI coding agent for GitHub. Direct and check the work in chat. Connect Claude Code or Codex. It builds internal tools via pull requests.
This listing identifies a third-party MCP server. MCPBundles is not affiliated with, sponsored by, or endorsed by the service or its operator unless stated on this page.
This server may ask you to sign in when your AI client connects.
Last probed Nov 3, 2026 · keelen.ai
43tools discovered
For AI agents — MCPBundles Directory API
For MCP client apps (human connect):
MCP connect URL: https://keelen.ai/mcp
Skill page: https://www.mcpbundles.com/skills/keelen-mcp-8b2fc2f3fe
Explore capabilities (43)
write 25
Showing 25 of 43
Showing 25 of 43 tools from the public preview. Connect the server to inspect the full live tool list.
Get3
List3
Set3
Resolve2
Other capabilities14
List Projects
write
list_projects
List the projects in this workspace, with what each one is building.
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.
For a NEW repo. Given an existing repo, import_project(repo_full_name) is
the right call — this one would create a second, empty repo beside it
(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 GitHub short repo slug (no owner); `project_kind`
Submit Request — Ask for a change in plain English: a feature, a bug fix, or a new direction.
Each call carries ONE feature or intent; a multi-feature ask belongs in
separate requests. `text` must be under 16000 characters. Returns
{thread_id, status, next_action, poll_after_seconds, next_step}; next_step
names the re-check of 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), so the status changes between calls.
`next_action` is one of: "wait" (still processing), "answer_questions"
(answer_request takes 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
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.
Keelen is an AI coding agent for GitHub. Direct and check the work in chat. Connect Claude Code or Codex. It builds internal tools via pull requests.
How do I connect Keelen to my AI agent?
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.
How many tools does Keelen provide?
Operate this server?
Request removal if you do not want Keelen listed here, or claim the listing if you want to manage it on MCPBundles.
Operate Keelen?
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.
MCPBundles publishes this directory for MCP discovery. Except where we host or operate an offering, third-party services run under their own terms. Product and company names on this page are used in a descriptive, identifying way (including under nominative fair use where applicable); they remain the property of their owners. Nothing here grants you rights in those marks, and nothing here is an offer to sell a third party's services. Terms · Request removal
More in developer tools
Other MCP servers in this category from the directory index
— 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`:
awaiting_intake_thread | awaiting_clarification | crash_capped |
noop_capped | crash_cooldown | noop_cooldown | held_on_open_pr | other).
The first reason that applies, in that order, is the one returned.
`awaiting_clarification` means the planner asked a planning question about
the item an
Reorder Roadmap — Change what gets built first.
`ordered_ids` is the desired front-to-back order of queued roadmap-item ids
(list_roadmap returns them). 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 {up
Cancel Roadmap Item — Cancel / close a single roadmap item (list_roadmap returns its id).
For a DELIVERED or duplicate item that keeps re-parking: once the work has
shipped, every expand produces no dev-ready tasks and files a recurring
`roadmap_item_parked` escalation that has to be acked. Cancelling drops the
item out of the expand queue AND resolves any open expand-lane escalation for
it. Business-level replay guard: an already expanded/cancelled item changes no
state, and the dashboard ca
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
Roll Back 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` (the web Roblox Publishing card lists published versions)
— 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 (a retry can succ
Get 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. list_roadmap returns those items.
`glm_peak_paused` is NOT a fault and sets no pa
Close Task — Close a task that should not be built — a duplicate, or work already shipped.
For a task on the board that 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 in one line.
`superseded_by_pr_number` (or `superseded_by_task_id`) record
Get Product Goal — Read a project's current product goal (the outcome work is aimed at).
The paired setter `set_product_goal` replaces the whole document rather
than appending to it, so a write without a prior read silently discards
whatever the user already recorded; adding a line means reading the current
text, editing it, and setting 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 project not
Get Product Vision — Read a project's current product vision (what the product is for).
The paired setter `set_product_vision` replaces the whole document rather
than appending to it, so a write without a prior read silently discards
whatever the user already recorded; adding a line means reading the current
text, editing it, and setting 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 projec
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 card about a roadmap item carries its
`roadmap_item_id` (null for a task-only, project-level or synthetic row),
which matches the `id` in `list_roadmap`. A "forever-paused" project with no open
`project_pause` row is surfa
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: its typed retry,
platform-policy resolution, replan, close, or supersede operation is the
correct path instead.
The ackno
Retry Blocked Task — Grant one fresh attempt after fixing a recovery-budget task block.
``escalation_id`` is 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. Business-level replay guard:
an already-retried block is not retried again; the call is not idempotent end
to end, because an auth
Rearm Roadmap Item — Run the dashboard's replay-guarded same-item dependency re-arm.
``escalation_id`` is 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. A bounded live GitHub check
may be used when the local merge state is stale, so a call can reach out
even when the re
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..32). The decision becomes a new task-plan
section; the same task lineage is requeued before the escalation resolves.
On a project that runs the ui-review evidence lifecycle (``ui-review.json``
is a retained evidence catalog), ``raise_p
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 32, 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 Project 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. Stopping a machine DESTROYS the
running process state — restoring the project later cannot bring that
execution back, so this is destru
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. Deleting ALSO permanently purges the project's stored
review artifacts. The row is retained for audit and re-importing the repo
restores that deleted row in place (unlike `archive_project` there is no
in-tool restore), but the purged art
Showing the first 25 tools — full list and schemas: Directory API.
MCPBundles probed 43 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.
What authentication does Keelen require?
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.
Don't want this listed?
Request removal from the MCPBundles directory. We stop publishing this listing on mcpbundles.com.
MCPBundles is an independent platform built on the open Model Context Protocol standard. MCPBundles is not affiliated with, sponsored by, or endorsed by Anthropic PBC.