This MCP server enables seamless integration between Devin AI and Slack, allowing you to create Devin sessions, post tasks to Slack channels, and maintain conversation threads between both platforms. The server acts as a bridge that synchronizes communication across these environments.
Before installing the MCP server, make sure you have:
npm install @kazuph/mcp-devin
# or
pnpm add @kazuph/mcp-devin
The server requires several environment variables to function properly:
DEVIN_API_KEY
: Your Devin API keySLACK_BOT_TOKEN
: Your Slack Bot User OAuth Token (starts with xoxb-)SLACK_DEFAULT_CHANNEL
: Default Slack channel for messages (e.g., general
or channel ID)DEVIN_ORG_NAME
: (Optional) Your organization name, defaults to "Default Organization"DEVIN_BASE_URL
: (Optional) Base URL for the Devin API, defaults to "https://api.devin.ai/v1"To use with Claude Desktop, add the server configuration to your Claude config file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"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"
}
}
}
}
The MCP server provides several tools to interact with Devin AI and Slack:
The create_devin_session
tool creates a new Devin session and posts the task to Slack:
// Example parameters
{
"task": "Create a simple React component",
"channelId": "C123ABC456" // Optional, defaults to SLACK_DEFAULT_CHANNEL
}
This will:
Use send_message_to_session
to send a message to an existing Devin session:
// Example parameters
{
"sessionId": "session-123",
"message": "Can you add TypeScript typing to the component?",
"slackTs": "1234567890.123456" // Optional, for posting to a Slack thread
}
This will send the message to the Devin session and optionally post it to the corresponding Slack thread.
Retrieve details about a specific session with get_devin_session
:
// Example parameters
{
"sessionId": "session-123",
"includeSlackHistory": true // Optional, to include Slack message history
}
List all available Devin sessions with list_devin_sessions
:
// No parameters required
{}
Retrieve information about your Devin organization with get_organization_info
:
// No parameters required
{}
If you encounter issues with the MCP server, you can use the MCP Inspector for debugging:
npx @modelcontextprotocol/inspector
The Inspector provides a browser interface to monitor and debug the communication between Claude and the MCP server.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"cursor-rules-mcp": {
"command": "npx",
"args": [
"-y",
"cursor-rules-mcp"
]
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.