AI-native git hosting — repos, PRs, issues, CI gates, and AI code review over MCP (60 tools).
Connect Remote server
claude mcp add --transport http gluecron https://gluecron.com/mcp
{
"mcpServers": {
"gluecron": {
"url": "https://gluecron.com/mcp"
}
}
}
{
"servers": {
"gluecron": {
"type": "http",
"url": "https://gluecron.com/mcp"
}
}
}
Settings > Connectors > Add custom connector
URL: https://gluecron.com/mcp
Tools 80 found in our last check
merjax_repo_searchSearch Merjax repositories by keyword (name + description), case-insensitively. Returns public repos plus any private repos owned by the authenticated caller. Default 20 per page, max 50; `total` is the full match count and `nextOffset` pages through it.
merjax_repo_read_fileRead a single file from a repository at a given ref (branch / tag / commit). Private repos are readable when the authenticated caller has access. Returns the text content (binary files rejected).
merjax_repo_list_issuesList open issues for a public repository. Returns up to 50 ordered by most-recent.
merjax_repo_explain_codebaseReturn the cached AI 'explain this codebase' Markdown for a public repo (most recent commit). Returns null when no cached explanation exists yet.
merjax_repo_healthCompute the current health report for a public repo: overall score (0-100), letter grade, per-category breakdown (security/testing/complexity/dependencies/documentation/activity), and a list of insights to fix next. Backed by computeHealthScore in src/lib/intelligence.ts.
merjax_create_issueCreate a new issue on a Merjax repository. Requires authenticated caller with write access on the target repo. Returns {number, url}.
merjax_comment_issueAdd a comment to an existing issue. Requires authenticated caller with write access. Returns {commentId}.
merjax_close_issueClose an open issue. Requires authenticated caller with write access. Idempotent — closing an already-closed issue is a no-op. Returns {state}.
merjax_reopen_issueReopen a previously closed issue. Requires authenticated caller with write access. Idempotent. Returns {state}.
merjax_create_prOpen a new pull request. `head_branch` is required; `base_branch` defaults to the repo default branch. Requires authenticated caller with write access. Returns {number, url}.
merjax_get_prFetch the full detail record of a pull request (title, body, state, branches, draft, author, timestamps), plus `mergeable` (true / false / null unknown) and `mergeState` from the same conflict probe the merge gate uses: status up-to-date | clean | conflicts | unknown, the unreso…
merjax_list_prsList pull requests on a repo, filtered by state (open|closed|merged|all). Authenticated callers only. Returns up to 50 summary rows.
merjax_comment_prAdd a comment to a pull request. Requires authenticated caller with write access. Returns {commentId}.
merjax_merge_prMerge an open PR. Enforces the same checks as the HTTP merge flow: not a draft, head SHA resolves, GateTest+AI-review hard gates pass, branch-protection rules satisfied. M3: soft-blocks when the pre-merge risk score is `critical` unless `confirm_high_risk: true` is passed. Retur…
merjax_close_prClose an open pull request without merging. Requires authenticated caller with write access. Idempotent. Returns {state}.
merjax_fork_repoFork a repository to the authenticated caller's namespace. Mirrors POST /:owner/:repo/fork. Returns {owner, repo, url}. Requires 'repo' scope.
merjax_delete_repoDelete a repository — a SOFT delete (2026-10-19): it disappears at once from git, web, REST, MCP, CI, webhooks, search and pages, its name stays reserved, and it can be restored with merjax_restore_repo until restorable_until (90 days by default). Queued/running CI is cancelled…
merjax_update_repoUpdate repository description / visibility / default_branch / automation dials / merge-conflict AI mode / GateTest switch. Requires 'admin' access on the repo (owner, org owners/admins, admin collaborators) and 'repo' scope. Returns {ok: true}; with gate_test_enabled, also gate_…
merjax_search_reposSearch repositories by owner, name, owner/name or description, case-insensitively: every public repo, plus the private ones you own or collaborate on when authenticated. Omit `query` (authenticated) to list YOUR repositories — the ones you own or were invited to — instead of sea…
merjax_whoamiWho this connector is on this Merjax instance: the signed-in username and email, whether that account is a site admin, the token's scopes, and how many repositories it owns or collaborates on. Call it first when a repository seems missing — the answer is usually which account au…
merjax_clone_urlReturn the authenticated HTTPS clone URL for a repo + a credential-helper hint. Use this instead of embedding tokens in URLs. Returns {url, owner, repo, defaultBranch, hint} using the repo's stored casing.
merjax_create_deploy_tokenMint a short-lived, repository-scoped HTTPS clone credential (a deploy token) for a sandbox or CI box that has no PAT. By default it returns NO token: {id, exchangeUrl, exchangeExpiresAt, gitConfig, url}. Run the gitConfig lines right before the first clone/fetch (the URL is sin…
merjax_create_repo_tokenMint a fine-grained repository token (`gcft_…`) for ONE repository and return it once. It authenticates the REST API (/api/v2 and the GitHub-compatible /api/v3), git over HTTPS and the container registry (images under owner/repo, by contents) for that repository only. `permissio…
merjax_list_repo_tokensList the fine-grained repository tokens you have minted (never the secret): repository, permissions, state (active / expired / revoked), expiry and last use. Needs 'repo' scope.
merjax_revoke_repo_tokenRevoke one of your fine-grained repository tokens by id (from merjax_list_repo_tokens). It stops working on its next use. Needs 'repo' scope. Audit-logged.
merjax_list_tokensList your own tokens (never a secret): type, name, status (active / expiring / expired / revoked / never_used / stale), last 4 characters, scopes or permissions, repository, expiry, last use (time, IP, client), use count and rotation state. `type` is pat (personal access token,…
merjax_get_tokenOne of your tokens by type and id (from merjax_list_tokens): everything list shows plus the audit trail (create, edits with a before/after diff, rotations, revocation). Never the secret. `type` is pat (personal access token, glc_), repo (repository token, gcft_) or deploy (deplo…
merjax_rotate_tokenRotate one of your tokens: mint a new secret with the same name, scopes / permissions, repository and expiry, returned ONCE as `token`. `grace_seconds` (default 0, max 604800 = 7 days) keeps the old secret working that long; 0 kills it now. Rotating again ends an earlier grace p…
merjax_revoke_tokenRevoke one of your tokens by type and id. It stops working on its next use; this cannot be undone. `type` is pat (personal access token, glc_), repo (repository token, gcft_) or deploy (deploy token, gcdt_). PATs need 'admin' scope; repository and deploy tokens need 'repo'. Audi…
merjax_list_repo_secretsList a repository's workflow secrets — NAMES ONLY, with created/updated times; values are never returned. Use it to check that a secret such as CRON_SECRET exists before a workflow needs it. Needs admin access to the repository and 'repo' scope. Returns {repository, total_count,…
merjax_set_repo_secretCreate or replace one workflow secret on a repository, used in workflows as ${{ secrets.NAME }}. The name is saved upper-cased (cron_secret → CRON_SECRET); trailing spaces/newlines are removed from the value. The value is WRITE-ONLY: it is encrypted at rest and never returned, l…
merjax_delete_repo_secretDelete one workflow secret from a repository by name (cron_secret is read as CRON_SECRET). Idempotent: deleting a secret that is already gone succeeds with deleted:false, already_deleted:true, so a retry is safe. Workflows that reference it stop receiving it. Needs admin access…
merjax_list_deleted_reposList deleted repositories you can restore or purge: your personal ones and those of organizations you own (a site admin may pass all: true for the whole instance). Each has its id, full_name and restorable_until — after that date it is purged automatically. Read-only. Needs 'rep…
merjax_restore_repoRestore a deleted repository by id (from merjax_list_deleted_repos) before its restorable_until date: git data, LFS objects, issues, PRs, collaborators and webhooks come back exactly as they were. Cancelled CI runs stay cancelled and stopped webhook deliveries are not re-sent. R…
merjax_purge_repoPERMANENTLY delete an already-deleted repository now, instead of waiting for its restore window to end. IRREVERSIBLE: the git data, LFS objects, issues, PRs, releases, packages, CI history and settings are removed and cannot be restored (data already in the instance's backups ag…
merjax_list_variablesList Actions configuration variables (${{ vars.NAME }}) with their values. Pass owner + repo for a repository variable, owner + repo + environment for an environment variable, or org for an organisation variable (organisation variables need an admin-scoped token). Admin of the r…
merjax_get_variableRead one Actions variable by name. Pass owner + repo for a repository variable, owner + repo + environment for an environment variable, or org for an organisation variable (organisation variables need an admin-scoped token). Not found is an error. Returns {name, value, createdAt…
merjax_set_variableCreate or replace an Actions variable (plain text, not for secrets — use merjax_set_repo_secret). Pass owner + repo for a repository variable, owner + repo + environment for an environment variable, or org for an organisation variable (organisation variables need an admin-scoped…
merjax_delete_variableDelete an Actions variable by name. Pass owner + repo for a repository variable, owner + repo + environment for an environment variable, or org for an organisation variable (organisation variables need an admin-scoped token). A variable that does not exist is a not-found error,…
merjax_delete_branchDelete a branch the way `git push --delete` would: write access, then branch protection (allow_deletion), rulesets and the push inspection apply; webhooks and CI fire. The default branch is never deleted. Pass expected_sha to delete only if the branch still points there. A missi…
merjax_edit_commentReplace the text of a comment on an issue or pull request (by comment id). Its author or a repository writer only; the previous text is kept in the edit history; the same text again is `unchanged`; a concurrent edit is a conflict, never overwritten. Mentions the edit adds are no…
merjax_delete_commentDelete a comment on an issue or pull request (by comment id), with its edit history. Its author or a repository writer only. A missing comment is a not-found error, never reported as deleted. Mirrors DELETE /api/v3/repos/:o/:r/issues/comments/:id. Audit-logged (who wrote it, nev…
merjax_list_token_spendToday's model spend (UTC day), the daily bucket in force and the state (active | suspended) of every personal access token of yours, as /settings/tokens/spend shows it. Canary tokens are not listed: they never authenticate. Needs `user` scope. Returns {platformDefaultCents, toke…
merjax_set_token_bucketSet the daily model-spend bucket of one of your personal access tokens: daily_cents (1–1000000; 0 = the platform default; -1 = no bucket) or daily_usd ("2.50", "default", "none"). The call that would cross the bucket is refused and the token suspends itself until resumed. Anothe…
merjax_resume_tokenResume one of your personal access tokens that suspended itself (daily bucket spent, or the tripwire): it authenticates again; today's spend still counts against its bucket, so raise the bucket first with merjax_set_token_bucket if it is spent. A suspended token cannot make this…
merjax_list_loop_secretsList the secrets a hosted Claude loop (or an organisation) holds — names and dates, never values. Pass loop (the hosted Claude loop's id, from /connect/claude/deploy) for the loop's own secret — its owner only — or org (organisation slug, admin-scoped token) for an organisation-…
merjax_set_loop_secretCreate or replace a secret a hosted Claude loop runs with (reaches it as process.env.NAME at invoke time only; sealed at rest, scrubbed from its logs). Pass loop (the hosted Claude loop's id, from /connect/claude/deploy) for the loop's own secret — its owner only — or org (organ…
merjax_delete_loop_secretDelete a hosted-loop (or organisation-level) secret by name. Pass loop (the hosted Claude loop's id, from /connect/claude/deploy) for the loop's own secret — its owner only — or org (organisation slug, admin-scoped token) for an organisation-level secret every loop of the organi…
merjax_list_ai_workspacesThe three provider workspaces every model call is billed to by its purpose (ws-control-plane, ws-hosted-loops, ws-ci-gates): each with its daily spend limit, rate limit, today's spend and calls (UTC day), and the platform ceiling above all three. Site admins with an admin-scoped…
merjax_set_ai_workspace_quotaSet a provider workspace's daily spend limit (cents, UTC day) and calls per minute; 0 = no cap at that level (the platform ceiling still applies). Site admins with an admin-scoped token only. Safe to retry: the same numbers again change nothing. Audit-logged. Mirrors PUT /api/v2…
merjax_press_kill_switchPress the platform kill switch: pause every model call and suspend every personal access token minted or used in the last N hours (KILL_SWITCH_WINDOW_HOURS, default 24), platform-wide. Git, CI, merges and deploys are unaffected. One forensic audit row (security.kill_switch) name…
merjax_undo_kill_switchUndo the last kill switch press: give every token it suspended its previous expiry back and unpause AI (unless AI was already paused before the press, which stays as it was). A press already undone, or none at all, is a precondition failure. Site admins with an admin-scoped toke…
merjax_set_pr_ai_settingsChoose the model for a pull request's AI tasks (review, risk summary, CI fixes, conflict proposals): a model id from the catalog, or null / "" to inherit the repository's or the platform's choice. Write access to the repository. run_via ("subscription" or "api": where AI runs an…
merjax_import_actionSite admins only (needs an 'admin'-scoped token). Import a third-party GitHub Action at ONE tag, branch or full commit SHA into the Merjax mirror namespace (gluecron-actions/<owner>--<repo>), so workflows that say `uses: owner/repo@ref` can run it. Workflow runs never fetch from…
merjax_revoke_all_credentialsSite admins only (needs an 'admin'-scoped token). Revoke every browser session, personal access token (repository tokens included) and OAuth grant — for every user (scope 'platform') or for one (scope 'user' + username). Optionally force a password reset (old password stops work…
merjax_backup_statusSite admins only (needs an 'admin'-scoped token). Backup and restore-drill health: whether the newest backup set is verified on an offsite target and how old it is, whether offsite copies are immutable (Object Lock), when a restore drill last passed, whether the backup worker is…
merjax_learning_statusSite admins only (needs an 'admin'-scoped token). Whether CI failures are being turned into lessons: classified failures, lesson.pattern events (matched to a docs/ops/CI_GATE_LESSONS.md row, or candidates), recurring candidates, and failures left without a lesson for over an hou…
merjax_security_ioc_hitsSite admins only (needs an 'admin'-scoped token). Campaign indicator-of-compromise hits: pushes, token uses and repositories that matched a reviewed signature in src/lib/security/campaign-iocs.json (e.g. the Gheist campaign: ci-sync-XXXXXX branches, sync-check.yml, user agent 'g…
merjax_label_issueAttach one or more labels to an issue. Labels are created if they don't yet exist on the repo. Requires 'repo' scope. Returns {labels}.
merjax_unlabel_issueDetach a label from an issue. Idempotent. Requires 'repo' scope. Returns {removed: boolean}.
merjax_assign_issueAssign (or, with remove: true, unassign) users on an issue or pull request. Real assignees since 2026-10-12 — up to 10 per thread, only users who can read the repository; the old `assignee:<username>` labels were migrated. Pass `assignee` (one username) or `assignees` (array). `…
merjax_search_issuesSearch issues by title/body keyword on a single repo, filtered by state. Returns ranked rows.
merjax_request_changesRequest changes on a PR. Records a 'changes requested' review by the caller, which holds the PR on every merge path (web button, API, MCP merge, merge queue, merge train, autopilot) until the caller approves or someone with write access dismisses it (merjax_dismiss_review), and…
merjax_dismiss_reviewDismiss the standing 'changes requested' reviews on a PR (all of them, or one reviewer's), so they no longer hold the merge. Requires 'repo' scope and write access; the reason is required and audited.
merjax_search_prsSearch pull requests by title/body keyword on a repo.
merjax_list_pr_commentsList every comment on a pull request in chronological order: general comments (kind `issue_comment`), inline review comments (`review_comment`: path, line, thread {id, inReplyToId, position, replies, resolved, resolvedAt, resolvedBy}) and review summaries (`review`: state approv…
merjax_open_draft_prOpen a draft pull request. Same payload as merjax_create_pr but forces is_draft=true. Useful for AI-in-progress PRs that shouldn't run mergeability checks yet.
merjax_set_pr_draftMark a pull request ready for review (draft=false) or convert it back to a draft (draft=true). Same rule as the web 'Ready for review' button: the caller needs write access and must be the PR author or the repository owner; only an open PR changes; marking ready starts the AI re…
merjax_generate_pr_descriptionGenerate an AI commit-message-style description for a diff. Uses src/lib/ai-commit-message.ts under the hood; gracefully degrades to a heuristic when ANTHROPIC_API_KEY is missing. Returns {subject, body}.
merjax_update_pr_branchBring a PR branch up to date with its base: merge the base into the head server-side (the PR page's 'Update branch'). Never a force-push — the new head is a merge commit moved through the push gates, so it gets CI. On conflict nothing changes and `conflictFiles` lists the paths.…
merjax_list_pr_conflictsWhat stands between a PR and a clean merge, as the merge gate, the PR page and the Conflicts tab see it (one shared probe): status up-to-date | clean | conflicts | unknown, `mergeable`, the base/head shas the answer is for, files settled with no one in the loop (ruleSettled: eac…
merjax_resolve_pr_conflictSave a resolution for ONE conflicted file of a PR, as a draft for the exact (base_sha, head_sha) pair merjax_list_pr_conflicts returned (a moved branch is refused: reload). Pass exactly one of: `content` (the whole resolved file — no conflict markers, at most 512 KiB), `choices`…
merjax_commit_pr_conflict_resolutionCommit the saved resolutions for a PR's conflicts ON THE PR HEAD as a two-parent merge commit (old head, base tip) — never on the base branch — moved through the push gates so CI runs on it before anything merges. Every unresolved file needs a draft (merjax_resolve_pr_conflict)…
merjax_list_ready_to_mergePull requests that are green and clean and that nobody has merged: open, not a draft, CI green at the head, no gate failing or running, no standing request for changes, branch protection satisfied, no conflicts (the merge gate's own conflict probe), and auto-merge NOT armed. Eac…
merjax_repo_ratingThe repository's letter rating A+/A/B/C/D/F — the health report's grade (the same number merjax_repo_health and the /health page show; A is 85+) — with the score, the six categories (score, weight, points still available), `to_a`: the ordered list of concrete items that move the…
merjax_propose_pr_conflict_resolutionAsk AI (Opus 5.5) to PROPOSE a resolution for each conflict block of a PR's text files — the Conflicts tab's 'Propose resolutions' button. Nothing is committed: each proposal (the block's lines, an explanation, a confidence 0..1) is stored for the (base, head) pair and shown on…
merjax_update_prEdit a pull request's title, body, base branch and/or draft state. Title / body / base: the PR's author or anyone with write access; draft: the same rule as merjax_set_pr_draft (write access and the PR author or repo owner; marking ready starts the AI review). Needs 'repo' scope…
merjax_set_auto_mergeArm (enabled: true) or disarm (enabled: false) auto-merge on one PR: it merges by itself through the full gated merge chain (CI, required checks, branch protection, CODEOWNERS, risk) once CI and every required check are green and no reviewer with write access has changes request…
merjax_get_pr_checksList every check at a PR's current head — workflow runs, gates and commit statuses — with status, conclusion, whether branch protection requires it, and the run's log URL; plus each required check's state (passing / pending / failing / missing) and the merge gate's own CI verdic…
merjax_rerun_failed_jobsRe-run a failed or cancelled workflow run at the SAME commit (same inputs, same PR merge preview) — the run page's Re-run. Merjax re-runs every job of the run (per-job re-run does not exist yet); a successful or still-running run is refused. Joins an identical queued run instead…
Details
| Endpoint | https://gluecron.com/mcp (Streamable HTTP) |
| First published | 14 Jul 2026 |
| Last updated | 14 Jul 2026 |
| Registry name | com.gluecron/gluecron |
More developer tools servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
