MCP Server for the kChat API.
-
kchat_list_channels
- List public channels
- Optional inputs:
limit
(number, default: 100, max: 200): Maximum number of channels to returnpage
(number, default: 0): Pagination page
- Returns: List of channels with their IDs and information
-
kchat_post_message
- Post a new message to a kChat channel
- Required inputs:
channel_id
(string): The ID of the channel to post totext
(string): The message text to post
- Returns: Message post
-
kchat_reply_to_thread
- Reply to a specific message thread
- Required inputs:
channel_id
(string): The channel containing the threadthread_id
(string): The parent message IDtext
(string): The reply text
- Returns: Message post
-
kchat_add_reaction
- Add an emoji reaction to a message
- Required inputs:
post_id
(string): The message IDreaction
(string): Emoji name without colons
- Returns: Reaction
-
kchat_get_channel_history
- Get recent messages from a channel
- Required inputs:
channel_id
(string): The channel ID
- Optional inputs:
limit
(number, default: 10): Number of messages to retrieve
- Returns: List of messages with their content and metadata
-
kchat_get_thread_replies
- Get all replies in a message thread
- Required inputs:
thread_id
(string): The parent message ID
- Returns: List of replies with their content and metadata
-
kchat_get_users
- Get list of workspace users with basic profile information
- Optional inputs:
limit
(number, default: 100, max: 100): Maximum number of users to returnpage
(number, default: 0): Pagination page
- Returns: List of users with their basic profiles
-
kchat_get_user_profile
- Get detailed profile information for a specific user
- Required inputs:
user_id
(string): The user's ID
- Returns: Detailed user profile information
-
kchat_send_direct_message
- Send a direct message to a user by username
- Required inputs:
username
(string): The username of the user to send the message totext
(string): The message text to send
- Returns: Message post
-
Create a kChat token linked to your user:
- Visit the API Token page
- Choose "kChat" scope
Create a kChat token linked to a bot:
- Visit your kChat webapp and click on New > Integrations > Bot accounts > Add bot accounts
-
Get your kChat team name from your kChat url (eg. https://your-team.kchat.infomaniak.com/your-team/channels/town-square url have
your-team
team)
Add the following to your claude_desktop_config.json
:
{
"mcpServers": {
"kchat": {
"command": "npx",
"args": [
"-y",
"@infomaniak/mcp-server-kchat"
],
"env": {
"KCHAT_TOKEN": "your-token",
"KCHAT_TEAM_NAME": "your-team"
}
}
}
}
{
"mcpServers": {
"kchat": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KCHAT_TOKEN",
"-e",
"KCHAT_TEAM_NAME",
"infomaniak/mcp-server-kchat"
],
"env": {
"KCHAT_TOKEN": "your-token",
"KCHAT_TEAM_NAME": "your-team"
}
}
}
}
KCHAT_TOKEN
: Required. Your kChat token.KCHAT_TEAM_NAME
: Required. Your kChat team unique name.
If you encounter permission errors, verify that:
- All required scopes are added to your kChat token
- The token and team name are correctly copied to your configuration
Docker build:
docker build -t infomaniak/mcp-server-kchat -f Dockerfile .
This MCP server is licensed under the MIT License.