Content
# 🔌 Bitrix24 Stdio MCP Server
MCP server for working with Bitrix24 via incoming webhook.
It allows connecting Bitrix24 to Stdio MCP-compatible AI clients, such as Manus, Claude Desktop, and other tools that can work with Model Context Protocol.
The server accesses Bitrix24 REST API through the webhook URL and provides data in a format convenient for AI agents.
## ⚙️ Capabilities
Currently, the server provides the following tools:
- **get_me** — user profile, on behalf of whom the webhook was created (`profile`).
- **get_task** — one or several tasks by ID (up to 10 per call).
- Example arguments: `{ "id": [9483, 9484] }`.
- **search_tasks** — tasks, search.
- **search_groups** — work groups and projects, search.
- **get_group** — one or several groups/projects by ID.
- Example arguments: `{ "ids": [286, 190] }`.
- **get_kanban_stages_by_group** — kanban stages of tasks for one or several groups.
- Example arguments: `{ "ids": [286, 190] }`.
- **get_task_comments** — task comments in the **new task card** (task chat).
## 🚀 Installation and Launch
### 🧩 Configuration for Manus / Claude Desktop / Cursor
Example MCP configuration:
```json
{
"mcpServers": {
"bitrix24": {
"command": "npx",
"args": ["-y", "@x0333/bitrix24-mcp-server@latest"],
"env": {
"B24_BASE": "https://your-domain.bitrix24.ru/rest/USER_ID/WEBHOOK_CODE/"
}
}
}
}
```
After that, the AI client can call the server tools and receive data from Bitrix24.
## 🔑 How to Get Webhook URL in Bitrix24
1. Open your Bitrix24 portal.
2. Go to the **Developers** section (`https://your-bitrix-domain.com/devops/`).
3. **Other** -> **Incoming webhook**.
4. Grant the webhook the necessary rights (which ones exactly - I'm not sure, choose based on logic and security).
5. Copy the **URL for calling REST API**.
It usually looks like this:
```text
https://domain.bitrix24.ru/rest/1/abcdef12345/
```
This URL is what needs to be passed to the `B24_BASE` variable when adding the MCP server.
## 🛠️ Development
Tech stack: Node.js ≥ 20, TypeScript, [FastMCP](https://github.com/punkpeye/fastmcp).
```bash
pnpm install
pnpm build # tsc → dist/
pnpm start # requires B24_BASE
pnpm typecheck
```
Local launch:
```bash
B24_BASE="https://your-domain.bitrix24.ru/rest/USER_ID/WEBHOOK_CODE/" pnpm start
```
Publishing to npm — workflow `[.github/workflows/publish-npm.yml](.github/workflows/publish-npm.yml)` when pushing to `main` with a change in `package.json` (version must be higher than on npm).
## 📄 License
MIT