Skip to main content
Glama
sipyourdrink-ltd

Bernstein - Multi-agent orchestration

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
bernstein_health

Liveness check — always succeeds if the MCP server is running.

    Use this to verify the Bernstein MCP connection is still alive.

    Returns:
        JSON with status "ok".
    
bernstein_run

Start an orchestration run by posting a task to the Bernstein server.

    Args:
        goal: Description of what you want Bernstein to accomplish.
        role: Specialist role to assign (backend, frontend, qa, security, …).
        priority: 1=critical, 2=normal, 3=nice-to-have.
        scope: Task scope — small, medium, or large.
        complexity: Task complexity — low, medium, or high.
        estimated_minutes: Rough time estimate in minutes.

    Returns:
        JSON with the created task ID, title, and status.
    
bernstein_status

Return a summary of all task counts from the Bernstein server.

    Returns:
        JSON with total, open, claimed, done, failed counts plus
        a per-role breakdown.
    
bernstein_tasks

List tasks from the Bernstein server.

    Args:
        status: Optional filter — open, claimed, in_progress, done,
            failed, blocked, or cancelled.

    Returns:
        JSON array of task objects.
    
bernstein_cost

Return cost summary (total USD spent and per-role breakdown).

    Returns:
        JSON with total_cost_usd and per-role cost breakdown.
    
bernstein_stop

Request a graceful Bernstein shutdown by writing a SHUTDOWN signal.

    Writes ``.sdd/runtime/signals/SHUTDOWN`` in the project directory,
    which the orchestrator detects and shuts down gracefully.

    Args:
        workdir: Project root directory (default: current directory).

    Returns:
        Confirmation message.
    
bernstein_approve

Approve a pending or blocked task, marking it complete.

    This is used for approval gates — when a task is awaiting human
    sign-off before proceeding.

    Args:
        task_id: ID of the task to approve.
        note: Optional approval note recorded as the result summary.

    Returns:
        JSON with the updated task status.
    
bernstein_create_subtask

Create a subtask linked to a parent task.

    Agents call this to decompose their current work into subtasks
    during execution.  The parent task is automatically transitioned
    to WAITING_FOR_SUBTASKS status.

    Args:
        parent_task_id: ID of the parent task that this subtask belongs to.
        goal: Description of what the subtask should accomplish.
        role: Specialist role to assign (backend, frontend, qa, …).
        priority: 1=critical, 2=normal, 3=nice-to-have.
        scope: Task scope — small, medium, or large.
        complexity: Task complexity — low, medium, or high.
        estimated_minutes: Rough time estimate in minutes.

    Returns:
        JSON with the created subtask ID, parent_task_id, title, and status.
    
load_skill

Load a skill pack body (and optionally a reference or script).

    Agents receive only a compact skill index in their system prompt.
    Call this tool to fetch the full ``SKILL.md`` body for a skill
    when you decide it's relevant to the current task. Pass
    ``reference`` to get a deeper-context file or ``script`` to read
    the content of an executable helper.

    Args:
        name: Skill name (matches the index entry, e.g. ``"backend"``).
        reference: Optional filename under ``references/`` — for
            example ``"python-conventions.md"``.
        script: Optional filename under ``scripts/`` — for example
            ``"lint.sh"``. The script content is returned as text; the
            MCP harness does not execute it.

    Returns:
        JSON with ``name``, ``body``, ``available_references``,
        ``available_scripts``, and the optional fetched content.
    
bernstein_scenarios

List all Bernstein scenarios known to the local library.

    Returns:
        JSON array of scenario summaries (id, name, description, tags,
        task_count, roles).
    
bernstein_scenario

Invoke a Bernstein scenario by id, spawning one task per template.

    Args:
        scenario_id: Identifier from the scenario library
            (e.g. ``"pr-review-comprehensive"``).
        context: Free-form context (the trigger event summary, for
            example) appended to each task's description.
        pr_number: PR number to inject when triggered by GitHub.
        branch: Branch override.

    Returns:
        JSON with ``orchestration_id``, ``scenario_id``, ``task_count``,
        ``estimated_minutes`` and ``task_ids``.
    
bernstein_scenario_status

Aggregate the status of all tasks of a running scenario.

    Args:
        orchestration_id: Value returned by ``bernstein_scenario``.

    Returns:
        JSON with status counts and per-task details.
    

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sipyourdrink-ltd/bernstein'

If you have feedback or need assistance with the MCP directory API, please join our Discord server