Skip to main content

servo-client

Python and CLI access to Servo's hosted robot policy service.

pip install 'servo-client>=0.7,<0.8'
export SERVO_BASE_URL="https://<your-servo-control-plane>"
servo login
servo account
servo key create --label yam-cell-01
export SERVO_API_KEY="sk_servo_..."

Register a Bimanual YAM on its robot computer, then list compatible models:

servo robot setup yam-cell-01 \
  --config /opt/yam/configs/yam_left.yaml \
  --config /opt/yam/configs/yam_right.yaml \
  --region us-west-2

servo model list yam-cell-01

Run pi0.5 with the calibrated robot object from your application:

import os

import servo
from my_robot_app import open_yam

sv = servo.Servo(
    base_url=os.environ["SERVO_BASE_URL"],
    api_key=os.environ["SERVO_API_KEY"],
)
robot = sv.robots.attach("yam-cell-01", runtime=open_yam)
model = sv.models.get("pi0.5")
deployment = model.deploy(robot=robot).wait(timeout_s=900)
policy = deployment.policy(robot, instruction="place the red lid on the black box")
check = robot.check(policy)
print(check.completed, len(check.chunks), check.steps)
robot.run(policy, seconds=120)

open_yam is the factory function that opens the calibrated YAM runtime. Servo recognizes its camera, joint-state, command, and close methods directly. --config accepts your local hardware configuration files (or placeholder files for testing), which Servo hashes to record an immutable fingerprint. Calibration and device configuration stay in your application.

Save deployment.id and reuse it with sv.deployments.get(deployment_id). Review active capacity with servo deployment list, and stop unused capacity with servo deployment stop <deployment-id>.

Requires Python 3.12+, a Servo control-plane URL, and an organization API key.

Quickstart · Robots and calibration

Third-party notices

The Linux platform wheels ship Tailscale's tailscaled and tailscale executables (servo/_native/), redistributed unmodified under the BSD 3-Clause license. The license, patent grant, and the notices for the dependencies compiled into them are installed with the package under servo/licenses/tailscale/.

Metadata

Release files for servo-client 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for servo-client 0.7.0
File Size Uploaded
servo_client-0.7.0.tar.gz 846.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for servo-client 0.7.0
File Interpreter ABI Platform
servo_client-0.7.0-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
servo_client-0.7.0-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
servo_client-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 77.3 MB

Release files / servo_client-0.7.0.tar.gz

Download URL servo_client-0.7.0.tar.gz
Size 846.7 kB
Tags Source
SHA-256 checksum
How to use checksums
504a8b2a168ab945e85db0ef03eff07e0eeae016da56b488fda312b400249acd
BLAKE2b-256 checksum
How to use checksums
f837d14cf7f5ae641c6bf4e7cf90ffdaee54209babe5803289b64862af7f2bfa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / servo_client-0.7.0-py3-none-manylinux_2_28_x86_64.whl

Download URL servo_client-0.7.0-py3-none-manylinux_2_28_x86_64.whl
Size 39.3 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
56dec33152f7b160170b7698a894165447cf4f00a3e5ed409a329a6b6853dc1e
BLAKE2b-256 checksum
How to use checksums
2f14bca404cfd1136a1ed53c2edca456cfeb56e43ba9564d409992b0bec16e16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / servo_client-0.7.0-py3-none-manylinux_2_28_aarch64.whl

Download URL servo_client-0.7.0-py3-none-manylinux_2_28_aarch64.whl
Size 36.2 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
f1aeb69a8d30c8d29b8fd9077f2890964add079866f7a49c31def678bff53dce
BLAKE2b-256 checksum
How to use checksums
07c4ff50750dc081466bc346461f69aabd2f18d7a0034d4942b034bdc97bfab4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / servo_client-0.7.0-py3-none-any.whl

Download URL servo_client-0.7.0-py3-none-any.whl
Size 971.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
32656ad529c5ac1c4da87909b1de85cd6c51425c9ef4fa016a2e2102b7b16fd6
BLAKE2b-256 checksum
How to use checksums
be89701c67085ea725ec2ba9b01cba6e92406a05bfc6b299960e8240ac58c04f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page