FO

finos/open-resource-broker

Deployment & DevOps
22 stars 15 forks Quality 83 Trend 30Apache-2.0

A unified API for orchestrating and provisioning compute capacity. Define what you need in a template, request it, track it and return it through a CLI, REST API, MCP server or native SDKs.

Overview

Unified API for orchestrating and provisioning compute capacity Open Resource Broker (ORB) is a unified API for orchestrating and provisioning compute capacity programmatically. Define what you need in a template, request it, track it, return it — through a CLI, REST API, MCP server, or native SDKs for Python, Go, TypeScript, Java, Kotlin, and .NET. ORB includes provider backends for AWS, Azure, Google Cloud, and Kubernetes, plus an extensible provider system for adding new backends. - — EC2 RunInstances, EC2Fleet, SpotFleet, Auto Scaling Groups, Lambda MicroVMs (built in; see AWS Provider Setup below) - — VM Scale Sets, single VMs, CycleCloud cluster nodes (pip install "orb-py[azure]"; see Azure Provider Guide) - — Managed Instance Groups, single Compute Engine VMs (pip install "orb-py[gcp]"; see Google Cloud Provider Guide) - — Pod, Deployment, StatefulSet, Job (pip install "orb-py[k8s]"; see Kubernetes provider docs) - — extensible via provider registry and the orb.

README

Unified API for orchestrating and provisioning compute capacity


Open Resource Broker (ORB) is a unified API for orchestrating and provisioning compute capacity programmatically. Define what you need in a template, request it, track it, return it — through a CLI, REST API, MCP server, or native SDKs for Python, Go, TypeScript, Java, Kotlin, and .NET.

ORB includes provider backends for AWS, Azure, Google Cloud, and Kubernetes, plus an extensible provider system for adding new backends.

Provider support:

Scheduler support:

  • Default — direct usage without an external scheduler, via ORB’s native request/machine API
  • IBM Spectrum Symphony (HostFactory) — see HostFactory Integration
  • Slurm Workload Manager by SchedMD — integrates via ResumeProgram/SuspendProgram power hooks; see Slurm Integration Guide
  • HTC-Grid and OpenGRIS Scaler — these grid schedulers consume ORB through the default scheduler’s native API rather than a dedicated ORB scheduler strategy; see HTC-Grid and OpenGRIS Scaler

Quick Start

pip install orb-py
orb init
orb templates generate

1. Pick a template

orb templates list

2. Request machines

orb machines request  3

3. Check status

orb requests status 

4. Return machines when done

orb machines return   ...

5. Check the return status

machines return prints a return-request id; check it the same way as step 3:

orb requests status 

Setup

Get ORB installed and configured for your environment.

Interfaces

ORB provides multiple ways to interact with your infrastructure — a CLI, a REST API, an MCP server, and native SDKs for Python, Go, TypeScript, Java, Kotlin, and .NET.

Integrations

Connect ORB to schedulers and container platforms.

Project

Architecture, development, and documentation.


License

Apache License 2.0 — see LICENSE.

Security

See SECURITY.md for responsible disclosure procedures.

View the full README on GitHub

Install

This server does not publish a one-line install command.

Open the repository installation guide New to MCP? Start with the mcpskill.org guide →

Configuration

{ "mcpServers": { "open-resource-broker": { "command": "orb", "args": ["mcp", "serve", "--stdio"] } } }