1. Conduid
  2. Developer Tools
  3. Docket
MCP server · Developer Tools

Docket

docket is a distributed background task system for Python

80Excellent

Scored 6 days ago · breakdown

About Docket

Docket is an MCP server published by chrisguidry in the Developer Tools category: docket is a distributed background task system for Python.

The repository has 148 stars and 15 forks, with the last commit 3 days ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/chrisguidry/docket

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Docket

Powered by Claude · Grounded in docs

I know everything about Docket. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 5 hours ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • !No dynamic code executionSource scan found eval or shell execution. Review how tool inputs reach it before granting credentials.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

rust/v0.3.0rust/v0.3.0 - Chunky · 9 Oct 2026What's Changed Cancel the tasks that clear() removes, in both languages by @chrisguidry in https://github.com/chrisguidry/docket/pull/536 Wait for each test subscription's confirmation before it reports ready by @chrisguidry in…
python/v0.27.0python/v0.27.0 - Chunky · 9 Oct 2026What's Changed Cancel the tasks that clear() removes, in both languages by @chrisguidry in https://github.com/chrisguidry/docket/pull/536 Wait for each test subscription's confirmation before it reports ready by @chrisguidry in…
rust/v0.2.0rust/v0.2.0 - Crab cam · 7 Oct 2026Thanks @nicolopignatelli for being the first outside contributor to fix a bug in our baby Rust implementation! What's Changed Publish docket-rs only through crates.io trusted publishing by @chrisguidry in…
python/v0.26.2python/v0.26.2 - Die Another Day · 7 Oct 2026What's Changed Build docket-rs, the Rust implementation of docket by @chrisguidry in https://github.com/chrisguidry/docket/pull/522 Pin the crates.io publish job's actions and document every feature by @chrisguidry in…
rust/v0.1.0rust/v0.1.0 - Crabtastic · 6 Oct 2026:crab: What's Changed Build docket-rs, the Rust implementation of docket by @chrisguidry in https://github.com/chrisguidry/docket/pull/522 Pin the crates.io publish job's actions and document every feature by @chrisguidry in…

README

Docket is a distributed background task system for Python functions with a focus on the scheduling of future work as seamlessly and efficiently as immediate work.

PyPI - Version PyPI - Python Version GitHub main checks Codecov PyPI - License Documentation

At a glance

from datetime import datetime, timedelta, timezone

from docket import Docket


async def greet(name: str, greeting="Hello") -> None:
    print(f"{greeting}, {name} at {datetime.now()}!")


async with Docket() as docket:
    await docket.add(greet)("Jane")

    now = datetime.now(timezone.utc)
    soon = now + timedelta(seconds=3)
    await docket.add(greet, when=soon)("John", greeting="Howdy")
from docket import Docket, Worker

async with Docket() as docket:
    docket.register(greet)
    async with Worker(docket) as worker:
        await worker.run_until_finished()
Hello, Jane at 2025-03-05 13:58:21.552644!
Howdy, John at 2025-03-05 13:58:24.550773!

Check out our docs for more details, examples, and the API reference.

Why docket?

⚡️ Snappy one-way background task processing without any bloat

📅 Schedule immediate or future work seamlessly with the same interface

⏭️ Skip problematic tasks or parameters without redeploying

🌊 Purpose-built for Redis streams

🧩 Fully type-complete and type-aware for your background task functions

💉 Dependency injection like FastAPI, Typer, and FastMCP for reusable resources

Installing docket

Docket is available on PyPI under the package name pydocket. It targets Python 3.10 or above.

With uv:

uv pip install pydocket

or

uv add pydocket

With pip:

pip install pydocket

Docket requires Redis 6.2 or later, or Valkey 8.0 or later. Docket is tested with:

  • Redis 6.2 and 8.10, and Redis 8.10 in cluster mode
  • Valkey 8.0 and 9.1
  • In-memory backend via burner-redis for testing

For testing without Redis, use the in-memory backend:

from docket import Docket

async with Docket(name="my-docket", url="memory://my-docket") as docket:
    # Use docket normally - all operations are in-memory
    ...

See Testing with Docket for more details.

Hacking on docket

We use uv for project management. The repository is a uv workspace, and the Python package lives in its python/ directory. From a clone of the repository:

uv sync
cd python
uv run pytest

We aim to maintain 100% test coverage, which is required for all PRs to docket. We believe that docket should stay small, simple, understandable, and reliable, and that begins with testing all the dusty branches and corners. This will give us the confidence to upgrade dependencies quickly and to adapt to new versions of Redis over time.

To work on the documentation locally, from the repository root:

uv sync
uv run zensical serve

This will start a local preview server. The docs are built with Zensical and configured in mkdocs.yml.

README fetched from the repository 5 hours ago. The original is authoritative.

Questions

About Docket

How do I install Docket?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Docket safe to use with an AI agent?

Its trust score is 80 out of 100 (excellent). It passes 4 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Docket still maintained?

Yes — the latest release is rust/v0.3.0 (9 Oct 2026), and the last commit was 3 days ago. The repository has 148 stars and 24 open issues.