puzzlebox

puzzlebox

3.4

If you are the rightful owner of puzzlebox and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Puzzlebox is an MCP server that hosts finite state machines as dynamic resources, allowing clients to subscribe and receive updates when states change.

Puzzlebox is a Model Context Protocol (MCP) server designed to facilitate coordination among multiple agents by hosting finite state machines (FSMs) as dynamic resources. It allows clients to subscribe to these resources and receive updates when their states change. This server is particularly useful in scenarios where multiple teams or agents need to coordinate their efforts over long-term projects, such as enterprise-level software development. Puzzlebox enables process-aware collaboration without the risk of hallucination, ensuring that transitions between project phases are managed effectively. By using finite state machines, Puzzlebox provides a structured approach to managing complex workflows, allowing for clear state transitions and actions. Clients can connect to the server, register puzzles, and perform actions that may change the state of these puzzles, with the server ensuring the validity of each action. This setup is ideal for scenarios where teams need to pass the torch between different phases of a project, ensuring that each phase is completed before moving on to the next.

Features

  • Supports multiple client connections for shared dynamic resources.
  • Manages puzzle instances and exposes tools for adding and managing puzzles.
  • Exposes registered puzzles as resources with subscription capabilities.
  • Ensures valid state transitions with optional exit and enter guards.
  • Provides a structured approach to managing complex workflows.

Tools

  1. add_puzzle

    Add a new instance of a puzzle (finite state machine).

  2. get_puzzle_snapshot

    Get a snapshot of a puzzle (its current state and available actions).

  3. perform_action_on_puzzle

    Perform an action on a puzzle (attempt a state transition).

  4. count_puzzles

    Get the count of registered puzzles.