devin-slack-connector
A Model Context Protocol (MCP) server designed to bridge interactions between the Devin AI agent and Slack workspaces. This integration automates the broadcasting of initiated tasks into designated Slack channels, ensures bidirectional context threading between Devin's operational logs and Slack conversations, and provides robust management capabilities for active Devin session metadata.
Author

kazuph
Quick Info
Actions
Tags
@kazuph/mcp-devin: AI Agent Orchestration via Slack Conduit
This repository houses a TypeScript implementation of an MCP server specifically engineered to synchronize workflows between the Devin AI platform and Slack team communication channels.
Key functionalities facilitated by this server include:
- Initiating autonomous Devin workflows and immediately publishing the resultant tasks as structured messages within Slack.
- Enabling seamless message exchange between active Devin processes and their corresponding Slack conversational threads.
- Offering sophisticated mechanisms for overseeing and updating the status of these interconnected sessions.
Core Capabilities
Slack Interoperability Layer
- Automated task dissemination to Slack, invariably tagging the Devin agent (e.g., using
@Devinmentions). - Preservation of conversational continuity by mapping Devin session context directly to Slack threads.
- Security and integration achieved via a configured Slack Bot User OAuth Token.
Exposed MCP Toolkit
create_devin_session: Establishes a fresh Devin operational context, posts the initial directive to a specified Slack destination, and returns both the session ID and the Slack message pointer.send_message_to_session: Submits arbitrary input to a running Devin instance, with an optional parameter to concurrently append the message to the linked Slack thread.get_devin_session: Retrieves comprehensive metadata for a given session, optionally including the recent conversational history from Slack.list_devin_sessions: Generates an inventory of all currently managed Devin engagements.get_organization_info: Fetches configuration details pertaining to the connected Devin organizational entity.
Implementation Guidance
To set up the development environment, execute the following command:
pnpm install
For compilation into deployable JavaScript:
pnpm run build
For development cycles featuring automatic recompilation upon source modification:
pnpm run watch
Configuration Directives
MCP Server Registration
Integration requires adding a specific stanza to your overarching MCP configuration file, mapping the server entry:
"devin-mono": {
"command": "node",
"args": ["/path/to/mcp-devin/build/index.js"],
"env": {
"DEVIN_API_KEY": "your-devin-api-key",
"DEVIN_ORG_NAME": "Your Organization",
"SLACK_BOT_TOKEN": "xoxb-your-slack-bot-token",
"SLACK_DEFAULT_CHANNEL": "general"
}
}
Environmental Prerequisites
The following runtime variables must be accurately supplied within the environment block:
DEVIN_API_KEY: Mandatory credential for authenticating with the Devin service.DEVIN_ORG_NAME: (Optional) Identifies the operating business unit; defaults to "Default Organization".DEVIN_BASE_URL: (Optional) Specifies the root endpoint for the Devin API; defaults to "https://api.devin.ai/v1".SLACK_BOT_TOKEN: Essential Slack Bot User OAuth Token (must start withxoxb-).SLACK_DEFAULT_CHANNEL: The initial channel target for system output. Can be specified by ID (e.g.,C123ABC456) or by name (e.g.,general).
Deployment Method (Claude Desktop)
To enable this functionality within the Claude Desktop client, update your local configuration file:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Ensure the mcpServers object includes the following reference:
{
"mcpServers": {
"@kazuph/mcp-devin": {
"command": "/path/to/@kazuph/mcp-devin/build/index.js"
}
}
}
Diagnostic Procedures
Because MCP communication utilizes standard input/output streams, debugging can be opaque. We strongly advise leveraging the official MCP Inspector, which is accessible via the package script:
pnpm run inspector
Executing this command will provide a local URL allowing visualization of the communication streams in a web browser.
