Skip to main content

swarmd-sdk

Python client for the Swarmd Agent Registry API, with OAuth2 client-credentials authentication, thread-safe token caching and automatic retries built in.

pip install swarmd-sdk

Requires Python 3.9+.

Quick start

from uuid import UUID
from swarmd_sdk import SwarmDClient

with SwarmDClient(
    agent_id="your-agent-id",
    client_secret="your-client-secret",
) as client:
    for agent in client.get_agent_subscriptions(UUID("123e4567-e89b-12d3-a456-426614174000")):
        print(f"{agent.name}: {agent.agent_card_url}")

SwarmDClient.from_env() builds the same client from the environment instead:

SWARMD_AGENT_ID=your-agent-id
SWARMD_CLIENT_SECRET=your-client-secret

# Needed only to receive lifecycle callbacks on /admin/webhook
# (subscription / agent / tenant state changes). Issued alongside the
# client secret at registration. Without it your agent still works, but
# won't refresh itself on platform events.
SWARMD_WEBHOOK_SECRET=your-webhook-secret

# Optional
# SWARMD_BASE_URL=https://api.swarmd.ai
# SWARMD_TOKEN_URL=https://auth.swarmd.ai/realms/swarmd/protocol/openid-connect/token
# SWARMD_TIMEOUT=30
# SWARMD_MAX_RETRIES=3

What's in the box

SwarmDClient, SwarmDConfig registry client and its configuration
SwarmDRuntime, create_admin_app agent runtime and its admin/webhook app
AgentDirectory discovery over the agents you are subscribed to
McpClient and friends MCP servers vended through the platform
OAuth2TokenManager token acquisition and refresh, used by the client
CorrelationIdMiddleware, correlation_id_var request correlation across agents
verify_webhook signature verification for lifecycle callbacks

Errors are typed: AuthenticationError, TokenRefreshError and APIError (which carries status_code and response_body), all deriving from SwarmDSDKError.

The package ships type information (py.typed), so it type-checks under mypy and pyright without stubs.

Framework integrations

Documentation and support

Full documentation is at docs.swarmd.ai. For help, email support@swarmd.ai.

MIT licensed.

Metadata

Release files for swarmd-sdk 0.4.2

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

Source distribution (sdist)

Source distribution for swarmd-sdk 0.4.2
File Size Uploaded Provenance
swarmd_sdk-0.4.2.tar.gz 40.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for swarmd-sdk 0.4.2
File Interpreter ABI Platform
swarmd_sdk-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 84.5 kB

Release files / swarmd_sdk-0.4.2.tar.gz

Download URL swarmd_sdk-0.4.2.tar.gz
Size 40.6 kB
Tags Source
SHA-256 checksum
How to use checksums
b8ef6e7e9581a783bb38da6e1b83b0743f7c824e15967329069672ece80690e1
BLAKE2b-256 checksum
How to use checksums
40303cba4816299d094dff1431dfd6c76b14a68010e1cea91f5443d908caf631
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / swarmd_sdk-0.4.2-py3-none-any.whl

Download URL swarmd_sdk-0.4.2-py3-none-any.whl
Size 43.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9c8c473cb4549ff73872e0b03649bb34103db6af1f542c9f0b3a3d52c7f16ec7
BLAKE2b-256 checksum
How to use checksums
367b974801384d4ca0d2cddc54a985e156f7f30ae549874d97cc488d9ce45107
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for swarmd-sdk 0.4.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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