Skip to content
Agentmart
Submit a tool

LLM CLI Gateway

One MCP endpoint for Claude Code, Codex, Gemini, Grok and Mistral CLIs, with durable async jobs.

Connector by verivus-oss · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 16
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/verivus-oss-llm-cli-gateway

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

One MCP endpoint for Claude Code, Codex, Gemini, Grok and Mistral CLIs, with durable async jobs.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
29 read · 7 write · 32 delete
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Tools by what they do 68

Read from the source code; the running server may list different tools.

Read 29 · Look things up without changing anything.

  • approval_list
  • cli_versions
  • compare_answers
  • config_status
  • explain_effective_config
  • job_result
  • job_status
  • list_available_models
  • list_models
  • llm_job_result
  • llm_job_status
  • llm_job_watch
Show 17 more tools
  • llm_process_health
  • llm_request_list
  • llm_request_result
  • provider_admin_list
  • provider_admin_run
  • provider_subcommand_contract
  • provider_subcommand_drift
  • provider_subcommands_list
  • provider_tool_capabilities
  • provider_version_guard
  • review_changes
  • session_get
  • session_list
  • upstream_contracts
  • validation_receipt
  • workspace_get
  • workspace_list

Write 7 · Create, change, send or run things.

  • config_ack_stale
  • config_publish
  • config_sync
  • grok_api_request
  • session_create
  • session_set_active
  • workspace_register_existing_repo

Delete 32 · Delete, drop, revoke or wipe things.

  • ask_model
  • claude_request
  • claude_request_async
  • cli_upgrade
  • codex_fork_session
  • codex_request
  • codex_request_async
  • config_init
  • config_recover_kit_attempt
  • config_rollback
  • consensus_check
  • cursor_request
Show 20 more tools
  • cursor_request_async
  • devin_request
  • devin_request_async
  • gemini_request
  • gemini_request_async
  • grok_request
  • grok_request_async
  • llm_job_cancel
  • mistral_request
  • mistral_request_async
  • provider_admin_mutate
  • red_team_review
  • route_request
  • route_request_async
  • second_opinion
  • session_clear_all
  • session_delete
  • synthesize_validation
  • validate_with_models
  • workspace_create

Network hosts it talks to 55

  • agentclientprotocol.com · found in code
  • aigrants.in · found in code
  • aimaker.substack.com · found in code
  • anthropic.com · found in code
  • antigravity.google · found in code
  • api.github.com · found in code
  • api.x.ai · found in code
  • api2.cursor.sh · found in code
  • arxiv.org · found in code
  • augmentcode.com · found in code
  • bing.com · found in code
  • chat.openai.com · found in code
  • chatgpt.com · found in code
  • cli.devin.ai · found in code
  • code.claude.com · found in code
  • cursor.com · found in code
  • dev.to · found in code
  • developers.openai.com · found in code
  • docs.anthropic.com · found in code
  • docs.claude.com · found in code
  • docs.cursor.com · found in code
  • docs.devin.ai · found in code
  • docs.mistral.ai · found in code
  • docs.portkey.ai · found in code
  • docs.temporal.io · found in code
  • docs.x.ai · found in code
  • duanlightfoot.com · found in code
  • example.test · found in code
  • example.trycloudflare.com · found in code
  • facebook.com · found in code
Show 25 more hosts
  • fast.io · found in code
  • github.com · found in code
  • gitlab.com · found in code
  • hexdocs.pm · found in code
  • hidekazu-konishi.com · found in code
  • instagram.com · found in code
  • learn.chatgpt.com · found in code
  • llm-cli-gateway.dev · found in code
  • medium.com · found in code
  • mindstudio.ai · found in code
  • mistral.ai · found in code
  • natesnewsletter.substack.com · found in code
  • platform.claude.com · found in code
  • pub.towardsai.net · found in code
  • pydantic.dev · found in code
  • reddit.com · found in code
  • searchconsole.googleapis.com · found in code
  • spring.io · found in code
  • static.devin.ai · found in code
  • token.actions.githubusercontent.com · found in code
  • unit-test.trycloudflare.com · found in code
  • unscriptedcoding.medium.com · found in code
  • vercel.com · found in code
  • verivus.ai · found in code
  • x.ai · found in code

Files it touches

  • ~/.npmrc
  • /dev/fd
  • /dev/null
  • /dev/shm
  • /home/user/.grok/leader-branch.sock
  • /home/werner/.llm-cli-gateway/config.toml
  • /home/werner/.llm-cli-gateway/run.sh
  • /proc/self/fd
  • /proc/stat
  • /srv/repos/internal/verivusai-labs/rvwr/CLAUDE.md
  • /srv/repos/internal/verivusai-labs/rvwr/llm-cli-gateway
  • /srv/repos/internal/verivusai-labs/rvwr/llm-cli-gateway/AGENTS.md
  • /srv/repos/internal/verivusai-labs/rvwr/llm-cli-gateway/docs/guides/BEST_PRACTICES.md
  • /tmp/a
  • /tmp/a.png
  • /tmp/agent.toml
  • /tmp/append.txt
  • /tmp/b
  • /tmp/dash.sock
  • /tmp/debug.log
  • /tmp/detector-fix-changed-files.txt
  • /tmp/detector-fix-round2-delta.patch
  • /tmp/detector-fix-round2-evidence.md
  • /tmp/detector-fix.patch
  • /tmp/devin.toml
  • /tmp/extra
  • /tmp/ffci-provider-help
  • /tmp/gw-mistral-kit-home-abc
  • /tmp/gw-mistral-kit-home-abc/.vibe
  • /tmp/leader.sock
  • /tmp/out.txt
  • /tmp/plugA
  • /tmp/prompt.md
  • /tmp/prompt.txt
  • /tmp/schema.json
  • /tmp/session.json
  • /tmp/sys.txt
  • /tmp/work
  • /tmp/workspace
  • /var/tmp

Tools (68)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • approval_listApproval decisionsread-only

    List recent MCP-managed approval decisions recorded by the gateway (approvalStrategy: mcp_managed).

  • ask_modelAsk one modelcan change or delete data

    Ask one provider CLI a question through the simplified validation surface (starts a validation job).

  • claude_requestClaude Code requestcan change or delete data

    Run a Claude Code CLI request synchronously (when async jobs are enabled, auto-defers to a pollable job past the sync deadline; otherwise runs to completion). Requires exactly one of prompt or promptParts.

  • claude_request_asyncClaude Code request (async job)can change or delete data

    Start a Claude Code CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • cli_upgradeUpgrade provider CLIcan change or delete data

    Plan (dryRun, default true) or execute an upgrade for one provider CLI using its native update mechanism.

  • cli_versionsProvider CLI versionsread-only

    Report installed provider CLI versions, availability, and login status for all registered CLI providers (claude|codex|gemini|grok|mistral|devin|cursor) or one.

  • codex_fork_sessionFork Codex sessioncan change or delete data

    UNAVAILABLE from the gateway: `codex fork` is an interactive subcommand requiring a controlling terminal, which an MCP server cannot provide, so every call fails fast with an explanation instead of spawning a child that cannot succeed. To continue an existing Codex conversation use codex_request with a real Codex session UUID or resumeLatest: true, which run `codex exec resume` and work headlessly. Retained because Codex exposes no non-interactive fork today; this prompt remains argv-bound and still rejects oversized UTF-8 input as non-retryable input_too_large before the unavailability check,…

  • codex_requestCodex requestcan change or delete data

    Run an OpenAI Codex CLI request synchronously (when async jobs are enabled, auto-defers to a pollable job past the sync deadline; otherwise runs to completion). Requires exactly one of prompt or promptParts.

  • codex_request_asyncCodex request (async job)can change or delete data

    Start an OpenAI Codex CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • compare_answersCompare answers (local)read-only

    Summarize agreement/differences between caller-provided answers LOCALLY — does not call any provider.

  • config_ack_staleAcknowledge stale Personal Agent Config

    Acknowledge the current stale Personal Agent Config release for at most 24 hours.

  • config_initInitialize Personal Agent Configcan change or delete data

    Initialize or clone the local Personal Agent Config baseline. This never activates a release by itself.

  • config_publishPublish Personal Agent Config

    Push the clean local Personal Agent Config baseline to its configured Git upstream without force-pushing.

  • config_recover_kit_attemptRecover unadmitted Personal Agent Config Kit attemptcan change or delete data

    Fence and release one exact unadmitted durable Kit attempt after the previous gateway process has been stopped. Copy the execution and attempt identity from local session_get output. This action is local-only and cannot recover an existing durable job.

  • config_rollbackRollback Personal Agent Config

    Atomically activate an already verified retained Personal Agent Config release.

Show 53 more tools
  • config_statusPersonal Agent Config statusread-only

    Show Personal Agent Config state without exposing baseline paths or local machine binding values.

  • config_syncSync Personal Agent Config

    Synchronize, verify, compile, and atomically activate a Personal Agent Config release. It never pushes.

  • consensus_checkConsensus checkcan change or delete data

    Ask provider CLIs whether they agree or disagree with a claim (starts validation jobs).

  • cursor_requestCursor Agent CLI requestcan change or delete data

    Run a Cursor Agent request synchronously (auto-defers to a pollable job past the sync deadline when async jobs are enabled; otherwise runs to completion). Default `cli` uses headless print mode (`cursor-agent --print`); gated `acp` uses native `cursor-agent acp` and accepts prompt, model, a gateway ACP session, and a registered workspace alias.

  • cursor_request_asyncCursor Agent CLI request (async)can change or delete data

    Start a Cursor Agent CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • devin_requestDevin CLI requestcan change or delete data

    Run a Cognition Devin CLI request synchronously (auto-defers to a pollable job past the sync deadline when async jobs are enabled; otherwise runs to completion). Headless print mode (`devin -p`).

  • devin_request_asyncDevin CLI request (async)can change or delete data

    Start a Cognition Devin CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • explain_effective_configExplain effective Personal Agent Configread-only

    Explain the selected Personal Agent Config release and context provenance without returning local paths or instruction text.

  • gemini_requestGemini requestcan change or delete data

    Run a Google Antigravity CLI (`agy`) request through the Gemini-compatible gateway tool synchronously (when async jobs are enabled, auto-defers to a pollable job past the sync deadline; otherwise runs to completion). Requires exactly one of prompt or promptParts.

  • gemini_request_asyncGemini request (async job)can change or delete data

    Start a Google Antigravity CLI (`agy`) request as a durable background job through the Gemini-compatible gateway tool. Poll with llm_job_status, collect with llm_job_result.

  • grok_api_requestGrok API request

    Run an xAI Grok API request synchronously through the Responses API. Requires exactly one of prompt or promptParts. Registered only when [providers.xai] is configured and its API-key env var is present.

  • grok_requestGrok requestcan change or delete data

    Run an xAI Grok CLI request synchronously (when async jobs are enabled, auto-defers to a pollable job past the sync deadline; otherwise runs to completion). Requires exactly one of prompt or promptParts.

  • grok_request_asyncGrok request (async job)can change or delete data

    Start an xAI Grok CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • job_resultValidation job resultread-only

    Collect a VALIDATION job's normalized provider output — distinct from llm_job_result, which returns raw provider request job output.

  • job_statusValidation job statusread-only

    Check a VALIDATION job's status (jobs started by validate_with_models/ask_model/etc.) — distinct from llm_job_status, which tracks provider request jobs.

  • list_available_modelsAll provider modelsread-only

    List models and capabilities for every available provider CLI (takes no arguments; complements per-provider list_models).

  • list_modelsProvider modelsread-only

    List models, aliases, and defaults for one provider (claude|codex|gemini|grok|mistral|devin|cursor, or an enabled API provider name), or omit cli to list all providers. API providers are returned under an `apiProviders` array.

  • llm_job_cancelCancel async jobcan change or delete data

    Cancel a running gateway async or deferred-sync job by jobId.

  • llm_job_resultAsync job resultread-only

    Retrieve captured stdout/stderr for a gateway async or deferred-sync job by jobId. Use rawOutput:true with independent stream offsets for resumable pages.

  • llm_job_statusAsync job statusread-only

    Check lifecycle status and bounded privacy-safe normalized progress for a gateway async or deferred-sync job by jobId.

  • llm_job_watchWatch async job progressread-only

    Wait briefly for privacy-safe normalized progress on an owned async job. When the MCP request carries a progress token, notifications are emitted only while this watch request remains active.

  • llm_process_healthGateway process healthread-only

    Report gateway process health: async-job manager state, the resolved durable persistence configuration, and flight-recorder health on that configured engine.

  • llm_request_listPersisted request listingread-only

    List recent persisted requests (sync and async) newest-first WITHOUT a correlation id, to find one. Returns metadata only; pass a returned correlationId to llm_request_result for the prompt/response, or a returned asyncJobId to llm_job_status.

  • llm_request_resultPersisted request lookupread-only

    Read back any persisted request (sync or async) from the flight recorder by correlationId, including prompt and response. Local callers can also include the linked complete job record.

  • mistral_requestMistral Vibe requestcan change or delete data

    Run a Mistral Vibe CLI request synchronously (when async jobs are enabled, auto-defers to a pollable job past the sync deadline; otherwise runs to completion). Requires exactly one of prompt or promptParts. Defaults to --agent accept-edits (auto-accepts file edits; dangerous ops such as shell stay gated).

  • mistral_request_asyncMistral Vibe request (async job)can change or delete data

    Start a Mistral Vibe CLI request as a durable background job. Poll with llm_job_status, collect with llm_job_result.

  • provider_admin_listProvider admin operations catalogread-only

    List provider CLI admin operations (auth status, model list, mcp list, plugin list, doctor, etc.) available on the installed CLIs, projected from runtime discovery. Read-only.

  • provider_admin_mutateRun mutating provider admin operation (gated)can change or delete data

    Execute a MUTATING provider CLI admin operation (mcp add/remove, login/logout, plugin install/remove, session delete/archive, ...). Disabled unless [admin] allow_mutating_cli_admin_ops=true; routed through approval and audited.

  • provider_admin_runRun read-only provider admin operationread-only

    Execute a READ-ONLY provider CLI admin operation (from provider_admin_list) and return redacted output. Rejects mutating operations.

  • provider_subcommand_contractProvider subcommand contractread-only

    Return the detailed read-only contract for exactly one declared provider CLI subcommand.

  • provider_subcommand_driftProvider subcommand driftread-only

    Probe declared provider subcommand --help surfaces and return compact drift rows without raw help output.

  • provider_subcommands_listProvider subcommands catalogread-only

    Return a compact, filterable read-only catalog of declared provider CLI subcommands without flags or raw help.

  • provider_tool_capabilitiesProvider tool capabilitiesread-only

    Report provider tool/feature capabilities and discovered local skill/tool integrations for claude|codex|gemini|grok|mistral|devin|cursor|grok_api, or an enabled API provider name.

  • provider_version_guardProvider version guardread-only

    Compare installed provider CLI versions against their contracted targets, and optionally check whether a newer version is published. Reports which providers drifted and which can be upgraded, plus the exact upgrade command for each.

  • red_team_reviewRed-team reviewcan change or delete data

    Challenge a plan, answer, or document for risks and failure modes via provider CLIs (starts validation jobs).

  • review_changesReview repository changesread-only

    Capture one complete, immutable Git evidence artifact, fence it as untrusted data, and start independent read-only provider reviews. Includes committed, staged, unstaged, and untracked changes without truncation.

  • route_requestLeast-cost route (sync)can change or delete data

    Least-cost routing: pick the cheapest eligible (provider, model) candidate that meets the caller's quality tier, capability, and budget constraints, then dispatch it through the normal provider path. Returns the provider response plus a `routing` block (chosen candidate, cost estimate + basis/confidence, rejections, reroutes). Registered only when [least_cost].enabled is true.

  • route_request_asyncLeast-cost route (async)can change or delete data

    Async least-cost routing: select the cheapest eligible (provider, model) candidate synchronously, enqueue it for background execution, and return a pollable job handle plus the `routing` block. Poll with llm_job_status, collect with llm_job_result. Registered only when [least_cost].enabled is true and async jobs are enabled.

  • second_opinionSecond opinioncan change or delete data

    Ask one provider CLI to review an answer (starts a validation job; poll job_status, collect job_result).

  • session_clear_allClear sessionscan change or delete data

    Delete all gateway session records, optionally scoped to one provider. The tool result confirms record deletion; worktree cleanup observers run asynchronously and may still be in progress. Worktree cleanup runs per session on the processing host for file-backed and PostgreSQL session managers. Both managers stage a caller-hidden cleanup tombstone before cleanup runs and retain a failed removal for retry by the host that owns the worktree, finalizing the record only once Git no longer registers the worktree, read back rather than inferred from the recorded path being absent. File-backed TTL evi…

  • session_createCreate session record

    Create a gateway session record for a provider. NOTE: this is gateway bookkeeping (a plain UUID), not a provider-native session; Codex resume needs a real Codex UUID.

  • session_deleteDelete sessioncan change or delete data

    Delete a gateway session record by ID. The tool result confirms record deletion; worktree cleanup observers run asynchronously and may still be in progress. Worktree cleanup runs on the processing host for file-backed and PostgreSQL session managers. Both managers stage a caller-hidden cleanup tombstone before cleanup runs and retain a failed removal for retry by the host that owns the worktree, finalizing the record only once Git no longer registers the worktree, read back rather than inferred from the recorded path being absent. File-backed TTL eviction uses the same tombstone retry path. De…

  • session_getGet sessionread-only

    Get one gateway session record by session ID, including recent request history when available.

  • session_listList sessionsread-only

    List gateway session records and the active session per provider, optionally filtered by provider.

  • session_set_activeSet active session

    Set or clear the active session for a provider; the active session is used when a request omits sessionId.

  • synthesize_validationSynthesize validationcan change or delete data

    Run an explicit judge model over validation results. General validation uses caller-supplied terminal results; review_changes rebuilds its question and results from the owned durable run.

  • upstream_contractsProvider CLI contractsread-only

    Return the gateway's declared provider CLI contracts; with probeInstalled true, diff against installed --help surfaces to detect flag drift.

  • validate_with_modelsMulti-model validationcan change or delete data

    Ask two or more provider CLIs to independently validate a question. Starts validation jobs — poll with job_status, collect with job_result (not llm_job_*).

  • validation_receiptValidation receiptread-only

    Retrieve the canonically hashed immutable receipt of a terminal cross-LLM validation run by validationId. Returns minted | pending | expired_unminted (no receipt exists and none can be minted) | verification_failed (a stored receipt does not verify against its run) | not_found (own-or-not-found).

  • workspace_createCreate workspacecan change or delete data

    Create a remote HTTP/OAuth workspace alias by creating a new local folder or git repo under a configured allowed root. Not for stdio/local provider path access. Requires LLM_GATEWAY_WORKSPACE_ADMIN=1 and OAuth scope workspace:admin.

  • workspace_getGet workspaceread-only

    Inspect a registered remote HTTP/OAuth workspace alias. Does not list files. Not needed for stdio/local provider calls; do not use workspace_* tools to fix local path access.

  • workspace_listList workspacesread-only

    List registered workspace aliases for remote HTTP/OAuth provider calls. Does not browse files. Stdio/local callers should not use workspace_* tools to fix provider path access; pass local workingDir/addDir/includeDirs directly.

  • workspace_register_existing_repoRegister workspace

    Register an existing local Git repo as a remote HTTP/OAuth workspace alias. Not for stdio/local provider path access. Requires LLM_GATEWAY_WORKSPACE_ADMIN=1 and OAuth scope workspace:admin.

Signals

Stars
16
Forks
0
Open issues
0
Last commit
Sep 9, 2026 (1 month ago)
Last release
Sep 9, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.verivus-oss/llm-cli-gateway
Version
1.17.1
Auth
No auth
Packages
npm llm-cli-gateway
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from verivus-oss

Cite this page

LLM CLI Gateway MCP server. Agent Mart. https://agentmart.dev/connectors/verivus-oss-llm-cli-gateway (last updated 2026-10-24)