Skip to content
Agentmart
Submit a tool

Inference AIops

Governed GPU inference ops (vLLM + Ray Serve): latency RCA, scaling, drain, 39 tools.

Connector by AIops-tools · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)
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/aiops-tools-inference-aiops

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

Governed GPU inference ops (vLLM + Ray Serve): latency RCA, scaling, drain, 39 tools.

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
23 read · 15 write · 1 delete
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Tools by what they do 39

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

Read 23 · Look things up without changing anything.

  • autoscale_config_get
  • cost_per_token
  • deployment_status
  • diagnose_engine_latency
  • diagnose_latency_spike
  • diagnose_low_utilization
  • engine_health
  • engine_inventory
  • engine_queue_depth
  • engine_request_metrics
  • gpu_utilization
  • kv_cache_stats
Show 11 more tools
  • model_info
  • model_is_sleeping
  • model_list
  • queue_depth
  • ray_cluster_resources
  • ray_dashboard_status
  • ray_job_list
  • replica_list
  • request_metrics
  • serve_deployment_list
  • undo_list

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

  • autoscale_config_update
  • deployment_redeploy
  • drain_replica
  • lora_load
  • lora_unload
  • model_deploy
  • model_sleep
  • model_wake
  • ray_job_cancel
  • replica_restart
  • routing_policy_update
  • scale_replicas_down
Show 3 more tools
  • scale_replicas_up
  • scale_to_zero
  • undo_apply

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

  • model_undeploy

Network hosts it talks to 3

  • anthropic.com · found in code
  • github.com · found in code
  • glama.ai · found in code

Files it touches

  • ~/.inference-aiops
  • ~/.inference-aiops/audit.db
  • ~/.inference-aiops/secrets.enc
  • ~/.inference-aiops/undo.db

Tools (39)

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

  • autoscale_config_get

    [READ] Autoscale bounds (min/max replicas, target ongoing requests). Args: application: Serve application name. deployment: Deployment name. target: Inference target name from config; omit for the default.

  • autoscale_config_update

    [WRITE][risk=medium] Live-tune autoscale bounds without a redeploy (reversible). Args: application: Serve application name. deployment: Deployment name. min_replicas: New floor (omit to leave unchanged). max_replicas: New ceiling (omit to leave unchanged). target_ongoing_requests: New per-replica concurrency target (omit to leave). target: Inference target name from config; omit for the default.

  • cost_per_token

    [READ] Attribute a $/1M-token unit cost from live vLLM throughput. Multiplies the current generation-throughput gauge by the supplied GPU hourly cost to derive the cost of serving 1M tokens; degrades to an ``insufficient-data`` forecast when no throughput metric is present. Args: gpu_hourly_cost: Hourly cost of a single GPU (e.g. cloud on-demand rate). num_gpus: Number of GPUs backing the deployment; defaults to 1. target: Inference target name from config; omit for the default.

  • deployment_redeploy

    [WRITE][risk=high] Force a deployment to re-apply new config. Applies the new config immediately and can drop unfinished requests — pass dry_run=True to preview. Args: application: Serve application name. deployment: Deployment name within the application. dry_run: If True, preview without redeploying. target: Inference target name from config; omit for the default.

  • deployment_status

    [READ] One deployment's status + current/target replica count. Args: application: Serve application name (from serve_deployment_list). deployment: Deployment name within the application. target: Inference target name from config; omit for the default.

  • diagnose_engine_latency

    [READ][RCA] Rank the probable cause of a latency spike for any serving engine. Correlates whichever signals the engine exposes (queue backpressure, KV/token-cache pressure, cache locality) into a ranked cause + the knob to turn — the engine-agnostic counterpart to diagnose_latency_spike (vLLM). Args: target: Inference target name from config; omit for the default.

  • diagnose_latency_spike

    [READ][RCA] Rank the probable cause of a TTFT/latency spike + the knob to turn. Correlates queue depth, KV-cache pressure/preemption, and prefix-cache locality into a ranked cause list — call this first on "why is inference slow". Args: target: Inference target name from config; omit for the default.

  • diagnose_low_utilization

    [READ][RCA] Explain an under-used GPU (batching / idle / overprovision). Args: target: Inference target name from config; omit for the default.

  • drain_replica

    [WRITE][risk=high] Drain one replica — NOT available over Ray's REST API. Ray Serve exposes no per-replica drain endpoint (only the whole-cluster declarative config); individual-replica draining is a Python-API capability only. This tool refuses with a teaching error. To retire surplus replicas, scale the deployment down — the controller drains them gracefully. The dry_run preview reports the same unavailability rather than a false green. Args: application: Serve application name. deployment: Deployment name. replica_id: Replica id (from replica_list). dry_run: If True, repor…

  • engine_health

    [READ] Liveness of the serving engine (vLLM / SGLang / TGI) via its health probe. Args: target: Inference target name from config; omit for the default.

  • engine_inventory

    [READ] Running-model identity + engine server info (engine-agnostic). vLLM / SGLang report served ids from /v1/models; TGI's single model id comes from /info. Args: target: Inference target name from config; omit for the default.

  • engine_queue_depth

    [READ] Running vs waiting requests — the leading backpressure signal (any engine). Args: target: Inference target name from config; omit for the default.

  • engine_request_metrics

    [READ] TTFT / TPOT / e2e latency + generation-token totals (where the engine exposes them). Args: target: Inference target name from config; omit for the default.

  • gpu_utilization

    [READ] Per-node GPU count, utilisation %, and memory used/total. Args: target: Inference target name from config; omit for the default.

  • kv_cache_stats

    [READ] KV-cache utilisation, prefix-cache hit rate, and preemption count. Args: target: Inference target name from config; omit for the default.

Show 24 more tools
  • lora_load

    [WRITE][risk=medium] Hot-load a LoRA adapter onto the running engine. Args: lora_name: Adapter name to register. lora_path: Local path or HF repo id of the adapter weights. target: Inference target name from config; omit for the default.

  • lora_unload

    [WRITE][risk=high] Hot-unload a LoRA adapter (traffic on it starts failing). Pass dry_run=True to preview. Args: lora_name: Adapter name to unload (from model_list). dry_run: If True, preview without unloading. target: Inference target name from config; omit for the default.

  • model_deploy

    [WRITE][risk=medium] Deploy a Serve application from an import path. The app is merged into the cluster's declarative Serve config (existing apps preserved). Replica counts come from the app's own config; set them afterward with serve scale (deployment names are known only once the app materialises). Args: application: Serve application name to create/replace. import_path: Python import path of the Serve app (e.g. 'module:app'). target: Inference target name from config; omit for the default.

  • model_info

    [READ] One model's config: max length, root/parent, permission (best-effort). Args: model_id: Model id (from model_list). target: Inference target name from config; omit for the default.

  • model_is_sleeping

    [READ] Whether the vLLM engine is suspended in Sleep Mode. Returns isSleeping: true (suspended, serving nothing), false (serving), or null when the engine did not report it — null means UNKNOWN, not awake. Sleep Mode exists only on servers started with VLLM_SERVER_DEV_MODE=1; on any other server this reports that the route is absent rather than failing vaguely. Args: target: Inference target name from config; omit for the default.

  • model_list

    [READ] All served vLLM models, LoRA adapters flagged. Args: target: Inference target name from config; omit for the default.

  • model_sleep

    [WRITE][risk=high] Suspend the engine via Sleep Mode (it stops serving requests). Frees GPU memory between bursts. level=1 offloads the weights to CPU RAM and wakes fast; level=2 discards them, so waking reloads from disk. The engine serves nothing until model_wake. Pass dry_run=True to preview. Sleep Mode exists only on servers started with VLLM_SERVER_DEV_MODE=1; on any other server this reports that the route is absent rather than failing vaguely. Args: level: 1 to offload weights to CPU RAM, 2 to discard them (default 1). dry_run: If True, preview without suspending. target:…

  • model_undeploy

    [WRITE][risk=high] Tear down a whole Serve application (removes all deployments). Irreversible without the original import path — pass dry_run=True to preview. Args: application: Serve application name (from serve_deployment_list). dry_run: If True, preview without undeploying. target: Inference target name from config; omit for the default.

  • model_wake

    [WRITE][risk=medium] Resume serving after Sleep Mode (weights return to GPU). The inverse of model_sleep. Pass dry_run=True to preview. Records no undo: vLLM never reports which sleep level the engine was at, so re-sleeping would have to guess between level 1 and level 2 — call model_sleep with the level you want instead. Sleep Mode exists only on servers started with VLLM_SERVER_DEV_MODE=1; on any other server this reports that the route is absent rather than failing vaguely. Args: dry_run: If True, preview without waking. target: Inference target name from config; omit for the def…

  • queue_depth

    [READ] Running vs waiting requests — the leading backpressure signal. Args: target: Inference target name from config; omit for the default.

  • ray_cluster_resources

    [READ] Cluster-wide CPU/GPU capacity + headroom + pending placement groups. Args: target: Inference target name from config; omit for the default.

  • ray_dashboard_status

    [READ] Serve controller health + app/deployment counts. Args: target: Inference target name from config; omit for the default.

  • ray_job_cancel

    [WRITE][risk=medium] Stop a submitted/running Ray job. Args: job_id: Job id (from ray_job_list). target: Inference target name from config; omit for the default.

  • ray_job_list

    [READ] Submitted Ray jobs: id, status, entrypoint, start time. Returns ``{"jobs": [...], "returned": N, "limit": L, "truncated": bool}``. When ``truncated`` is true there are more jobs than were returned — re-run with a higher limit rather than treating the result as the whole history. Args: target: Inference target name from config; omit for the default. limit: Maximum job rows to return. Default 100.

  • replica_list

    [READ] Replica states for one deployment (running/starting/draining). Args: application: Serve application name. deployment: Deployment name. target: Inference target name from config; omit for the default.

  • replica_restart

    [WRITE][risk=high] Restart one Serve replica — NOT available over Ray's REST API. Ray Serve exposes no per-replica restart endpoint over REST; the controller respawns unhealthy replicas on its own. This tool refuses with a teaching error. To force a cycle, scale the deployment down then up, or redeploy. The dry_run preview reports the same unavailability rather than a false green. Args: application: Serve application name. deployment: Deployment name. replica_id: Replica id (from replica_list). dry_run: If True, report availability without attempting a restart. target: In…

  • request_metrics

    [READ] vLLM TTFT / TPOT / e2e latency + generation-token totals. Args: target: Inference target name from config; omit for the default.

  • routing_policy_update

    [WRITE][risk=medium] Switch a deployment's request-routing policy. NOTE: Ray Serve's request-routing policy is a code-level option on the @serve.deployment decorator, NOT a field settable over the Dashboard REST API — there is no REST endpoint for it. This tool therefore refuses with a teaching error rather than pretend; change the policy in the deployment's source and redeploy. Args: application: Serve application name. deployment: Deployment name. policy: Desired routing policy (prefix_aware / round_robin / session_affinity). target: Inference target name from config; omit …

  • scale_replicas_down

    [WRITE][risk=high] Lower a deployment's replica count on prod (reversible → prior). Fewer replicas can strand in-flight requests — pass dry_run=True to preview. Args: application: Serve application name. deployment: Deployment name. num_replicas: New (lower) replica count. dry_run: If True, preview without scaling. target: Inference target name from config; omit for the default.

  • scale_replicas_up

    [WRITE][risk=medium] Raise a deployment's replica count (reversible → prior). Pass dry_run=True to preview: it reads the deployment's current count, so the preview reports the real from→to rather than only the requested target — and it fails here, not mid-write, if the deployment does not exist. Args: application: Serve application name. deployment: Deployment name. num_replicas: New (higher) replica count. dry_run: If True, preview without scaling. target: Inference target name from config; omit for the default.

  • scale_to_zero

    [WRITE][risk=high] Park a deployment at 0 replicas (reversible → prior count). Stops the cost bleed but adds cold-start latency and can strand the ingress — pass dry_run=True to preview. Args: application: Serve application name. deployment: Deployment name. dry_run: If True, preview without scaling to zero. target: Inference target name from config; omit for the default.

  • serve_deployment_list

    [READ] All Ray Serve deployments: status, replica count, target. Args: target: Inference target name from config; omit for the default.

  • undo_apply

    [WRITE][risk=medium] Apply a recorded undo by dispatching its inverse tool. The inverse runs through its own governed tool, so it is audited under its own name and risk level. Pass dry_run=True to preview the inverse call without executing it. A token can only be applied once. Args: undo_id: The undoId from undo_list (or an ``_undo_id`` in a write result). dry_run: If True, preview the inverse tool + params without running it. target: Passed through to the inverse tool when it accepts a target.

  • undo_list

    [READ] List recorded, not-yet-applied undo tokens (most recent first). Each entry names the original tool, the inverse tool that ``undo_apply`` would run, and a human note. Use the ``undoId`` with ``undo_apply``. Returns {"undos": [...], "returned": N, "limit": L, "truncated": bool}. ``truncated`` is *measured* (one extra row is fetched), not guessed from a length coincidence: when it is true there are MORE tokens than shown, so re-run with a higher ``limit`` rather than reporting the list as complete. Each entry carries ``effectVerified``. False means the original write lost its response, …

Signals

Stars
0
Forks
0
Open issues
0
Weekly downloads
215
Last commit
Oct 15, 2026 (13 days ago)
Last release
Oct 15, 2026 (13 days ago)
Last package publish
Oct 15, 2026 (13 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.AIops-tools/inference-aiops
Version
0.12.0
Auth
No auth
Packages
pypi inference-aiops
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 25, 2026

More from AIops-tools

Cite this page

Inference AIops MCP server. Agent Mart. https://agentmart.dev/connectors/aiops-tools-inference-aiops (last updated 2026-10-25)