Skip to main content

Typed Python SDK for the MettleDeck local automation API

Project description

MettleDeck Python SDK

Python client for MettleDeck's local automation API. It connects to the desktop application over the loopback interface; it does not expose MettleDeck to the local network.

Installation

pip install mettledeck

MettleDeck must be installed on the same computer. Enable Local automation API under Settings > General > Application. The first connection may ask for approval in the desktop application.

Quick start

from mettledeck import Client, Workspace

with Client.connect() as client:
    task = client.create(title="New task", workspace=Workspace.KANBAN)
    client.move(task.id, workspace=Workspace.PLANNING, planning_lane=2)

Client.connect() discovers a running application or starts the installed application. The SDK and application negotiate the newest API version they both support.

Task operations

Method Action
list_projects() List available projects
project() Read columns, tags, and the current revision
list() List tasks, optionally filtered by workspace, column, lane, or tag
get() Read one task, with optional history
create() Create a task, with optional media and attachments
update() Change supplied task fields and leave omitted fields alone
move() Move or reorder a task
watch_tasks() Poll for task snapshots when the project revision changes

Projects, columns, and tags are read-only in API v1. There is no task or project deletion endpoint. update() can clear nullable task fields and can remove media or attachments when those options are supplied explicitly.

All returned models are frozen dataclasses. Unknown response fields are ignored so an older SDK can continue to work with compatible additions to API v1.

Examples

The examples directory contains six small scripts:

  • create_task.py
  • update_task.py
  • move_task.py
  • list_tasks.py
  • add_media_and_attachments.py
  • watch_tasks.py
python -m pip install -e .
python examples/create_task.py

Development

python -m pip install -e ".[dev]"
python -m ruff check .
python -m pytest
python scripts/check_openapi.py
python -m build
python -m twine check dist/*

The API description is in openapi/mettledeck-v1.json.

License

MIT

Copyright 2026 Quantum Oblique.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mettledeck-1.0.0.tar.gz (15.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mettledeck-1.0.0-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file mettledeck-1.0.0.tar.gz.

File metadata

  • Download URL: mettledeck-1.0.0.tar.gz
  • Upload date:
  • Size: 15.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mettledeck-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e45a84ce57e4109af84ecab6f852c859e16f42fe3352db52ac103e146d849288
MD5 443036648fe07c40b3f537fbfdbf3c3d
BLAKE2b-256 b5bc187afc3298608517819168a0e49027011afe5b4ae46007226ccd84264691

See more details on using hashes here.

Provenance

The following attestation bundles were made for mettledeck-1.0.0.tar.gz:

Publisher: publish.yml on quantumoblique/mettledeck-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mettledeck-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mettledeck-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mettledeck-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b225c8ca72b700637b845bdb7ee24236ffcdb85c641ea0b69309f9953419aa7f
MD5 17c1643c0d8f91cf3cb038ad8cb883d5
BLAKE2b-256 2127cae8731525250f441df96bbe24a190ce4e0d3ce9100b742717f51939c829

See more details on using hashes here.

Provenance

The following attestation bundles were made for mettledeck-1.0.0-py3-none-any.whl:

Publisher: publish.yml on quantumoblique/mettledeck-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page