mcpField
M
Mcp Server For Bitrix24

Mcp Server For Bitrix24

本地服务
github.com/stemirkhan生产力439 周前更新

关于 Mcp Server For Bitrix24

Mcp Server For Bitrix24 通过 webhook 将 MCP 客户端连接到 Bitrix24 的任务、工作组和用户功能,适用于任务管理与组织数据查询,并提供任务字段校验和历史记录。

主要功能

  1. 01创建、更新、关闭和重新打开任务
  2. 02列出任务及任务历史
  3. 03创建和列出工作组
  4. 04列出用户并查看用户字段
  5. 05按 Bitrix24 字段校验任务字段

适用场景

  1. 01管理任务状态和负责人
  2. 02查看任务随时间的变更
  3. 03创建用于项目组织的工作组

MCP 相关

将 Bitrix24 的任务、工作组和用户操作作为 MCP 工具提供。通过 STDIO 使用 MCP/JSON-RPC,并要求配置 Bitrix24 webhook URL。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"bitrix24": {
"command": "npx",
"args": [
"-y",
"mcp-bitrix24"
],
"env": {
"BITRIX24_WEBHOOK_URL": "<BITRIX24_WEBHOOK_URL>"
}
}
}
}
启动命令npx -y mcp-bitrix24
需要配置的环境变量
BITRIX24_WEBHOOK_URL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcp-bitrix24

工具

12

收录的工具列表 · 更新于 2 周前

参数类型必填说明
titlestring是
fieldsobject否
group_idnumber否
descriptionstring否
responsible_idnumber否

详细介绍

mcp-bitrix24

用于 Bitrix24 任务、工作组和用户的 MCP 服务。通过 STDIO 实现 MCP/JSON-RPC。

功能

  • 任务:创建、更新、关闭、重新打开、列出
  • 工作组:创建、列出
  • 用户:列出、当前用户、可用字段
  • 任务字段:可用字段 + 对 create_task.fields 进行验证

要求

  • Node.js >= 18
  • Bitrix24 webhook URL

安装 / 构建

npm install
npm run build

通过 npm 运行:

npx mcp-bitrix24

配置

通过环境变量设置 Bitrix24 webhook URL:

BITRIX24_WEBHOOK_URL=https://<your-domain>/rest/<user_id>/<webhook>/

Codex MCP 配置示例:

[mcp_servers.bitrix24]
command = "npx"
args = ["-y", "mcp-bitrix24"]

[mcp_servers.bitrix24.env]
BITRIX24_WEBHOOK_URL = "https://<your-domain>/rest/<user_id>/<webhook>/"

工具

任务
  • create_task

    • 输入:title(字符串,必填)、description?(字符串)、responsible_id?(数字)、group_id?(数字)、fields?(对象)
    • 输出:{ task_id: number }
    • 注意:如果提供了 fields,会根据 get_task_fields 验证键。
  • update_task

    • 输入:task_id(数字,必填)+ 以下至少一项:title?、description?、responsible_id?、group_id?
    • 输出:{ task_id: number }
  • close_task

    • 输入:task_id(数字,必填)
    • 输出:{ task_id: number }
  • reopen_task

    • 输入:task_id(数字,必填)
    • 输出:{ task_id: number }
  • list_tasks

    • 输入:responsible_id?(数字)、group_id?(数字)、start?(数字)、limit?(数字)
    • 输出:{ tasks: [{ id, title, status }] }
  • get_task_fields

    • 输入:{}
    • 输出:{ fields: { [field: string]: object } }
  • list_task_history

    • 输入:task_id(数字,必填)、filter?(对象)、order?(对象)
    • 输出:{ list: [ { id, createdDate, field, value, user } ] }
工作组
  • create_group

    • 输入:name(字符串,必填)、description?(字符串)
    • 输出:{ group_id: number }
  • list_groups

    • 输入:limit?(数字)
    • 输出:{ groups: [{ id, name }] }
用户
  • list_users

    • 输入:
      • filter?(对象)
      • sort?(字符串)
      • order?("ASC" | "DESC")
      • admin_mode?(布尔值)
      • start?(数字)
      • limit?(数字)
    • 输出:{ users: [{ id, name, last_name, email?, active }] }
    • 注意:filter 支持 Bitrix24 user.get 筛选条件(包括 >=、%、@ 等前缀)。 start 控制分页(Bitrix 每页返回 50 条记录);limit 是 API 响应后的本地切片数量。
  • get_user_fields

    • 输入:{}
    • 输出:{ fields: { [field: string]: string } }
  • get_current_user

    • 输入:{}
    • 输出:{ user: { id, name, last_name, email?, active } }

架构

整洁架构分层:

  • mcp/ — 协议、传输、服务端
  • adapters/ — 将 MCP 工具映射到领域
  • domain/ — 实体、服务、端口
  • infrastructure/ — Bitrix24 REST 客户端

开发说明

  • 输入验证使用 zod。
  • 传输方式:仅 STDIO。
  • 构建:tsc(npm run build)。

贡献

请参阅 CONTRIBUTING.md 了解指南。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。