Skip to main content

Model Context Protocol (MCP)

Early Access

Try our newest feature! Only available through reach out. Contact us to join the early access program and get priority support.

Unizo offers an MCP server that integrates communication platforms with any LLM provider supporting the MCP protocol. This enables your AI agent to send messages, manage channels, and automate communication workflows across Slack, Microsoft Teams, Discord, and other messaging platforms via a single MCP server.

Supported Tools & Use Cases

The following tools are available in the Communication MCP Server:

Tool NameDescription
list_channelsBrowse and search channels across communication platforms
send_messageSend messages to channels or direct messages with rich formatting
create_channelCreate new channels or conversation spaces
list_messagesRetrieve and search message history
manage_membersAdd or remove members from channels
schedule_messageSchedule messages for future delivery

list_channels

Browse and search channels across communication platforms

Parameters:

  • integration: Target communication platform integration (required)
  • channel_type: Filter by channel type (public, private, direct)
  • name_pattern: Search channels by name pattern
  • include_archived: Include archived channels
  • member_id: Filter channels by member presence
  • page: Pagination control
  • limit: Number of results per page

send_message

Send messages to channels or direct messages with rich formatting

Parameters:

  • integration: Target communication platform integration (required)
  • channel_id: Destination channel or user ID (required)
  • text: Message content (required)
  • format: Message format (plain, markdown, rich)
  • attachments: Files or documents to attach
  • mentions: Users or groups to mention
  • thread_id: Reply to specific thread
  • priority: Message priority indicator

create_channel

Create new channels or conversation spaces

Parameters:

  • integration: Target communication platform integration (required)
  • name: Channel name (required)
  • description: Channel purpose and description
  • is_private: Create private vs public channel
  • members: Initial members to add
  • topic: Channel topic or purpose
  • retention_policy: Message retention settings

list_messages

Retrieve and search message history

Parameters:

  • integration: Target communication platform integration (required)
  • channel_id: Channel to search (required)
  • search_query: Text search within messages
  • time_range: Time period to search
  • sender_id: Filter by message sender
  • has_attachments: Filter messages with attachments
  • limit: Maximum messages to return

manage_members

Add or remove members from channels

Parameters:

  • integration: Target communication platform integration (required)
  • channel_id: Target channel (required)
  • action: Operation type (add, remove, update_role)
  • members: List of member IDs (required)
  • role: Member role (admin, member, viewer)
  • notification: Notify members of changes

schedule_message

Schedule messages for future delivery

Parameters:

  • integration: Target communication platform integration (required)
  • channel_id: Destination channel (required)
  • text: Message content (required)
  • send_at: Scheduled send time (required)
  • timezone: Timezone for scheduling
  • repeat: Recurrence pattern (once, daily, weekly)
  • mentions: Users to mention in scheduled message

Installation

Prerequisites

  • A Unizo API key
  • An active Communications integration (Slack, Google Chat, Microsoft Teams)
  • Node.js v20 or higher

MCP Configuration

Here is an example configuration for setting up the Unizo SCM MCP server:

{
"mcpServers": {
"unizo-comms": {
"command": "npx",
"args": [
"mcp-remote",
"http://api.unizo.ai/mcp/comms",
"--allow-http",
"--header",
"apikey:${UNIZO_API_KEY}"
],
"env": {
"UNIZO_API_KEY": "your_api_key"
}
}
}
}

Client Setup

For detailed setup instructions with specific AI clients:

Environment Variables

The following environment variables are required:

Error Handling

All tools return errors in a consistent format:

{
"error": {
"code": "CHANNEL_NOT_FOUND",
"message": "Channel 'team-updates' not found"
}
}

Common error codes:

  • INTEGRATION_NOT_FOUND: Invalid communication platform integration ID
  • CHANNEL_NOT_FOUND: Channel does not exist or access is denied
  • USER_NOT_FOUND: User is not found or inaccessible
  • MESSAGE_FAILED: Message could not be delivered
  • RATE_LIMIT_EXCEEDED: Too many requests sent to the API
  • UNAUTHORIZED: Invalid credentials or insufficient permissions