Skip to main content
Glama

devin-mcp

MCP server for creating, monitoring, and managing Devin AI sessions.

Tools

delegate

Create a Devin session and monitor it until completion. Runs as a background task with live progress updates (status changes, messages).

Supports all Devin session options:

Parameter

Description

prompt

The instruction for Devin to execute (required)

title

Custom session name (auto-generated if omitted)

snapshot_id

Restore from a previous snapshot

playbook_id

Associated playbook identifier

tags

Session categorization labels

max_acu_limit

Resource consumption ceiling

idempotent

Prevent duplicate sessions with the same prompt

unlisted

Hide session from listings

knowledge_ids

Knowledge bases to include (None uses all, [] uses none)

secret_ids

Secrets to include (None uses all, [] uses none)

get_session

Retrieve details about an existing Devin session, including its status, messages, and metadata.

Parameter

Description

session_id

The identifier of the session to retrieve (required)

list_sessions

List Devin sessions with optional filtering. Useful for finding session IDs to inspect or resume.

Parameter

Description

limit

Maximum number of sessions to return (default 100)

offset

Pagination offset (default 0)

tags

Filter sessions by tags

user_email

Filter sessions by creator's email

resume_session

Send a message to an existing Devin session and monitor it until completion. Runs as a background task. Use this to wake a sleeping session or send follow-up instructions to a running one.

Parameter

Description

session_id

The identifier of the session to message (required)

message

The message to send (required)

Related MCP server: AgentHub

Requirements

  • Python 3.13+

  • Devin API key (starts with apk_)

Usage

Claude Code

claude mcp add devin -e DEVIN_API_KEY=apk_your_key_here -- uvx --from git+https://github.com/desertaxle/devin-mcp devin-mcp

Standalone

Run the MCP server directly:

uvx --from git+https://github.com/desertaxle/devin-mcp devin-mcp

Development

Install dev dependencies:

uv sync

Run tests:

uv run pytest

Run linter, formatter, and type checker:

uv run prek run --all-files

Available Tools

4 tools
delegateA

Delegate a task to Devin and monitor until completion.

Creates a new Devin session with the given prompt and monitors it until the session reaches a terminal state (finished, blocked, or expired). Progress updates are reported as the session executes.

Args: prompt: The instruction for Devin to execute. title: Custom session name. Auto-generated if not provided. snapshot_id: Restore from a previous snapshot. playbook_id: Associated playbook identifier. tags: Session categorization labels. max_acu_limit: Resource consumption ceiling (positive integer). idempotent: If true, prevents duplicate sessions with same prompt. unlisted: If true, hides session from listings. knowledge_ids: Knowledge bases to include. None uses all, empty list uses none. secret_ids: Secrets to include. None uses all, empty list uses none. progress: FastMCP Progress dependency for reporting status updates.

Returns: Final session details including status, messages, and metadata.

Inputs: prompt (required), tags, title, unlisted, +6 more. Returns: object

get_sessionA

Retrieve details about an existing Devin session.

Use this to inspect the current status, messages, and metadata of a session. This is useful for checking whether a session is still running, has finished, or has gone to sleep due to ACU limits.

Args: session_id: The identifier of the session to retrieve.

Returns: Session details including status_enum, messages, title, tags, and metadata. The status_enum field indicates the session state: working, blocked, expired, finished, suspend_requested, resume_requested, or resumed.

Inputs: session_id (required). Returns: object

list_sessionsA

List Devin sessions with optional filtering.

Use this to find sessions by tags or email, or to get an overview of recent sessions. Useful for finding session IDs to inspect or resume.

Args: limit: Maximum number of sessions to return (default 100). offset: Pagination offset (default 0). tags: Filter sessions by these tags. user_email: Filter sessions by the creator's email address.

Returns: A dict with a 'sessions' key containing a list of session summaries, each with session_id, status_enum, title, tags, and other metadata.

Inputs: tags, limit, offset, user_email. Returns: object

resume_sessionA

Send a message to a Devin session and monitor it until completion.

Use this to resume a session that has gone to sleep (e.g. due to ACU limits) or to send follow-up instructions to a running session. Sending a message to a sleeping session will wake it up. After sending the message, the session is monitored until it reaches a terminal state.

Args: session_id: The identifier of the session to message. message: The message to send (e.g. instructions to continue work). progress: FastMCP Progress dependency for reporting status updates.

Returns: Final session details including status, messages, and metadata.

Inputs: message (required), session_id (required). Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.4/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: get_session inspects a single session, list_sessions finds sessions, delegate creates and runs a new task, and resume_session continues an existing one. No two tools overlap in a way that would cause misselection.

    Naming Consistency4/5

    Three tools follow the verb_noun pattern (get_session, list_sessions, resume_session), but 'delegate' is a bare verb without a noun, deviating slightly from the otherwise consistent style. The names are still predictable and readable.

    Tool Count5/5

    Four tools is well-scoped for a Devin session management server. Each tool covers a distinct lifecycle action without redundancy, fitting comfortably within the ideal 3-15 range.

    Completeness4/5

    The set covers create (delegate), read (get_session, list_sessions), and update via message (resume_session), but lacks a delete/cancel operation for sessions. This is a minor gap that agents could work around.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers