alphaswarm-ml-mcp
Catalog date: 2026-06-24.
Dedicated MCP server publishing the data.ml.* tool slice — Predictor
Hub lookups, AlphaBacktestExperiment dispatch, walk-forward run
inspection, finetune trainer status, model serving (vLLM / Ollama /
KServe). Piggybacked on the alphaswarm-core pod (same FastAPI app,
distinct route prefix and aud claim).
This is the MLOps slice's RFC 9728 / RFC 8707 conformant endpoint —
see the mcp-rfc-conformance rule in the private alphaswarm_internal repo.
(As of 2026-07-19, alphaswarm/.cursor/rules/ only carries a pointer to
this SSoT repo.)
Identity
| Field | Value |
|---|---|
| Service id | alphaswarm-ml-mcp |
| Role | mcp |
| Package | alphaswarm_models/ (tools); served from alphaswarm/ml_mcp/ |
| Image (key) | (piggybacked on api) |
| Built from | alphaswarm_platform/Dockerfile (target api) |
Wire
| Field | Value |
|---|---|
| Protocol | HTTP/1.1 + WebSocket (MCP) |
| Port | 8000 (shared with alphaswarm-core) |
| Health | GET /mcp/ml/tools (lists tool registrations) |
| Discovery | GET /.well-known/oauth-protected-resource/mcp/ml (RFC 9728 metadata) |
| Audience claim | dedicated per-MCP aud per AGENTS rule 49 |
Tool registrations
| Tool prefix | Concept doc |
|---|---|
data.ml.models.* | ml-framework.md |
data.ml.deployments.* | ml-framework.md |
data.ml.skills.* | mlops-service.md |
data.ml.serving.* | ml-framework.md |
data.ml.hetegnn.* | analysis-framework.md |
data.ml.predict, data.ml.forecast, data.ml.classify, data.ml.segment, data.ml.analyze, data.ml.compile | ml-framework.md |
Verified against the registered tool names in
alphaswarm/data/mcp/tools/ml.py
(and hetegnn.py) — the tool slice does not currently expose
data.ml.predictors.*, data.ml.experiments.*, or data.ml.finetune.*
prefixes despite the Predictor Hub / AlphaBacktestExperiment / finetune-trainer
concepts existing in alphaswarm_models.
Deployment surfaces
| Surface | Where |
|---|---|
| Compose | folded into api |
| Kustomize | folded into base/alphaswarm-core/ |
| AlphaSwarm CR | folded into AlphaSwarmMonolith — no dedicated toggle; scales with spec.apiReplicas since AQPMonolithSpec has no mlMcp field |
Dependencies
Upstream:
mlflow(5000) — experiment + model registry.postgres— Predictor Hub catalog.polaris/minio— feature store reads.bentoml/kserve(when serving backend = remote) — model invocations.
Downstream:
- Agentic plane (
alphaswarm/agents/) — ML calls go through DataMCP, never direct ORM imports. alphaswarm-ideresearch copilot.
Operations
router_completeonly: any LLM call from inside the MCP registrations goes throughalphaswarm/llm/providers/router.py(rule 2).- OOD guard + circuit breaker: the MLSkillRuntime applies
rules/ood_guard.pyand the circuit breaker before model calls. - Audit: every tool invocation lands an
agent_runs_v2row.
See also
mlops-service.md— MLOps service contract.data-mcp.md— DataMCPTool boundary.mcp-rfc-conformance(privatealphaswarm_internalrepo) — RFC 9728 + RFC 8707 conformance. (As of 2026-07-19,alphaswarm/.cursor/rules/only carries a pointer to this SSoT repo.)