Build a Mattermost AI Bot with DeepSeek
Step-by-step guide to running a DeepSeek-powered AI bot on Mattermost with LangBot: model setup, bot credentials, networking, testing and troubleshooting.
This recipe puts a DeepSeek model behind a Mattermost bot. LangBot receives messages from Mattermost, runs them through a pipeline, and sends the answer back, so you do not write any platform code.
Use DeepSeek models directly with LangBot's built-in Agent: no separate agent platform needed, with optional knowledge bases, MCP tools and Skills.
What you need
- A running LangBot instance: LangBot Cloud (no server needed) or a self-hosted deployment with Docker or
uvx langbot. - A DeepSeek account or server you can call from LangBot.
- A Mattermost bot account (role
Member) and its access token, plus your Mattermost server URL.
Networking
LangBot only needs to reach your Mattermost server; Mattermost does not need to reach LangBot.
1. Add the DeepSeek model
- Create an API key in the DeepSeek console.
- In LangBot, open Models, add an LLM model with the provider set to DeepSeek and request URL
https://api.deepseek.com, then paste the API key and the model ID. - Enable Tool Use if the model supports function calling; MCP tools, Skills and the sandbox need it.
- Typical model IDs are
deepseek-chatanddeepseek-reasoner; check DeepSeek's documentation for the current list.
2. Create a pipeline
Open Pipelines in the LangBot WebUI, create a pipeline (or edit the default one) and set AI as follows.
| Field | Value |
|---|---|
| Runner | Local Agent (built-in Agent) |
| Model | The model you just added. You can add fallback models. |
| Prompt | Instructions: who the bot is, tone, what it must not do. |
| Knowledge Bases | Optional. Attach a knowledge base so answers come from your documents. |
3. Create the Mattermost bot
- Create the bot account in Mattermost (choose
post:allfor direct messages) and copy its token; it is shown only once. - Create a bot with the Mattermost adapter, enter the server address and token, and bind a pipeline.
4. Bind and test
Open the bot, select the pipeline you created, save and make sure the bot is enabled.
Send the bot a direct message, or mention it in a channel it has joined.
Troubleshooting
- 401 errors: the API key is wrong or has no balance in the DeepSeek console.
- Administrator-related features are not supported; keep the bot role as
Member. - Disable streaming on the bot if your pipeline or AI provider does not support it.
- Check Monitoring in the WebUI: every message, pipeline run and error is recorded there.
FAQ
Do I need a server with a public IP for Mattermost?
No. LangBot only needs to reach your Mattermost server; Mattermost does not need to reach LangBot.
Does the Mattermost bot support streaming replies?
Yes. Enable streaming on the bot; the AI back end must also stream. See the platform feature matrix for details.
Can the same DeepSeek setup serve other platforms too?
Yes. A pipeline can be bound to many bots, so one configuration can answer on several platforms at once.
Related guides
- Full Mattermost setup guide
- Model configuration
- Other AI back ends on Mattermost: Dify · n8n · Coze · Langflow · OpenAI (ChatGPT models)
- DeepSeek on other platforms: Telegram · Discord · Slack · Lark (Feishu) · DingTalk · WeCom (internal app)
Build a KOOK AI Bot with DeepSeek
Step-by-step guide to running a DeepSeek-powered AI bot on KOOK with LangBot: model setup, bot credentials, networking, testing and troubleshooting.
Build a a website chat widget AI Bot with DeepSeek
Step-by-step guide to running a DeepSeek-powered AI bot on a website chat widget with LangBot: model setup, bot credentials, networking, testing and troubleshooting.
