返回市场
飞书项目服务器

飞书项目服务器

作者:Roland05117 星标更新:2025-11-01

项目介绍

⚠️ 项目已归档 飞书项目已正式上线MCP服务器服务。

因此,该仓库未来将不再维护或更新。
请勿提交新的问题、拉取请求或修改请求。
如需查阅历史内容,请以只读模式浏览此仓库。

👉 建议查看飞书项目的官方文档获取最新支持。

MCP飞书项目管理工具

基于MCP(模型上下文协议)协议的飞书项目管理工具允许AI助手通过MCP协议与飞书项目管理系统进行交互。

项目介绍

该项目是一个MCP服务器实现,封装了飞书项目管理的Open API,使AI助手能够获取飞书项目的视图列表和视图详情等信息。通过这一工具,AI助手可以帮助用户管理和查询飞书项目中的工作项。

使用说明

在支持MCP协议的客户端(如Claude桌面客户端CursorCline中添加此服务器到配置文件。

更多MCP客户端可以参考:https://modelcontextprotocol.io/clients

以Claude桌面客户端为例,编辑claude_desktop_config.json文件

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

mcpServers字段中添加以下配置:

{
  "mcpServers": {
    "feishuproj": {
      "command": "uvx",
      "args": ["mcp-feishu-proj@latest","--transport", "stdio"],
      "env": {
        "FS_PROJ_PROJECT_KEY": "your_project_key",
        "FS_PROJ_USER_KEY": "your_user_key",
        "FS_PROJ_PLUGIN_ID": "your_plugin_id",
        "FS_PROJ_PLUGIN_SECRET": "your_plugin_secret"
      }
    }
  }
}

支持的功能(欢迎贡献)

登录认证

  • [x] 登录和认证过程

视图功能

  • [x] 获取飞书项目的视图列表
  • [x] 获取视图的工作项列表
  • [] 创建固定视图
  • [] 更新固定视图
  • [] 创建条件视图
  • [] 更新条件视图
  • [] 删除视图

工作项管理

  • [x] 获取工作项详情
  • [x] 获取创建工作项的元数据
  • [] 创建工作项
  • [] 更新工作项
  • [] 批量更新工作项字段值
  • [] 删除工作项
  • [] 终止/恢复工作项
  • [] 获取工作项操作记录

工作项搜索

  • [] 检索指定的工作项列表(单空间)
  • [] 检索指定的工作项列表(跨空间)
  • [] 获取指定的工作项列表(单空间 - 复杂参数传递)
  • [] 检索指定的工作项列表(全局搜索)
  • [] 获取指定的相关工作项列表

附件管理

  • [] 添加附件
  • [] 文件上传
  • [] 下载附件
  • [] 删除附件

空间管理

  • [] 获取空间列表
  • [] 获取空间详情
  • [] 获取空间下的业务线详情
  • [] 获取空间内的工作项类型
  • [] 获取空间内的团队成员

角色和人员配置

  • [x] 获取流程角色配置详情

空间关联

  • [] 获取空间关联规则列表
  • [] 获取空间关联下相关工作项实例列表
  • [] 绑定空间关联示例相关工作项
  • [] 解除空间关联示例相关工作项

流程和节点

  • [] 获取工作流详情
  • [] 获取工作流详情(WBS)
  • [] 更新节点/调度
  • [] 节点完成/回退
  • [] 状态流转

流程配置

  • [] 获取工作项下的流程模板列表
  • [] 获取流程模板配置详情
  • [] 添加流程模板
  • [] 更新流程模板
  • [] 删除流程模板

子任务

  • [] 获取指定子任务列表
  • [] 获取子任务详情
  • [] 创建子任务
  • [] 更新子任务
  • [] 子任务完成/回退
  • [] 删除子任务

评论

  • [] 添加评论
  • [] 搜索评论
  • [] 更新评论
  • [] 删除评论

其他功能

  • [] 将机器人添加到群组
  • [] 获取度量图表的详细数据
  • [] 获取流程角色配置详情

开发指南

开发环境配置

  1. 克隆此仓库:
git clone https://github.com/yourusername/mcp-feishu-proj.git
cd mcp-feishu-proj
  1. 安装依赖(使用UV):
# 安装uv(如果尚未安装)
pip install uv
# 创建虚拟环境并安装依赖
uv venv
uv pip install -e .

配置说明

  1. 复制环境变量示例文件并进行配置:
cp .env.example .env
  1. 编辑.env文件,填写以下必要的配置信息:
FS_PROJ_BASE_URL=https://project.feishu.cn/
FS_PROJ_PROJECT_KEY=your_project_key
FS_PROJ_USER_KEY=你的用户密钥
FS_PROJ_PLUGIN_ID=你的插件ID
FS_PROJ_PLUGIN_SECRET=你的插件密钥

其中

  • FS_PROJ_BASE_URL飞书项目API的基本URL,默认为https://project.feishu.cn/
  • FS_PROJ_PROJECT_KEY飞书项目的标识符
  • FS_PROJ_USER_KEY: 用户标识符
  • FS_PROJ_PLUGIN_ID飞书项目开放API的插件ID
  • FS_PROJ_PLUGIN_SECRET飞书项目开放API的插件密钥

添加新功能

要添加一个新的飞书项目API功能,请按照以下步骤操作:

  1. fsprojclient.py中添加一个新API方法
  2. server.py中使用中国@mcp.tool装饰器注册新的MCP工具

飞书项目开放API参考

本项目包含飞书项目开放API的Postman集合,位于docs/open-api-postman目录中,从该目录导入文件至Postman可以快速调试飞书项目接口:

  • postman_environment.jsonPostman环境变量配置
  • postman_collection.jsonPostman API集合

容器化部署指南

Docker部署

本项目提供了Docker部署支持,并允许通过Docker容器运行MCP飞书项目服务。

前提条件

运行Docker Compose

  1. 创建.env文件,设置必要的环境变量
cp .env.example .env

然后编辑.env文件,填写您的飞书项目相关信息:

FS_PROJ_BASE_URL=https://project.feishu.cn/
FS_PROJ_PROJECT_KEY=your_project_key
FS_PROJ_USER_KEY=your_user_key
FS_PROJ_PLUGIN_ID=your_plugin_id
FS_PROJ_PLUGIN_SECRET=your_plugin_secret
  1. 使用Docker Compose启动服务
docker-compose -f docker/docker-compose.yml up -d

这将使用ghcr.io/astral-sh/uv镜像并将项目根目录挂载到容器中,直接运行本地代码便于开发和调试。Docker Compose会自动加载项目根目录下的.env文件作为环境变量。

  1. 查看日志
docker-compose -f docker/docker-compose.yml logs -f
  1. 服务终止
docker-compose -f docker/docker-compose.yml down

更多详细信息,请参阅Docker部署文档

Kubernetes部署

前提条件

  • 可用的Kubernetes集群
  • 实现VNet命令行工具
  • 拥有创建Deployment、ConfigMap和Secret的权限

部署步骤

  1. 准备Secret

首先需要创建一个包含敏感信息的Secret。由于Kubernetes Secret要求使用base64编码的值,您需要对敏感信息进行编码:

# 对敏感信息进行base64编码
echo -n "your_project_key" | base64
echo -n "your_user_key" | base64
echo -n "your_plugin_id" | base64
echo -n "your_plugin_secret" | base64

然后,更新生成的base64编码值k8s-secret.yaml文件中的相应字段。

  1. 应用配置

依次应用以下配置文件:

# 创建ConfigMap
kubectl apply -f k8s-configmap.yaml

# 创建Secret
kubectl apply -f k8s-secret.yaml

# 创建Deployment
kubectl apply -f k8s-deployment.yaml
  1. 验证部署

检查部署状态:

# 查看Deployment状态
kubectl get deployments

# 查看Pod状态
kubectl get pods

# 查看Pod日志
kubectl logs -f <pod-name>

更多详细信息,请参阅Kubernetes部署文档

贡献指南

欢迎贡献代码、报告问题或提供改进建议。请遵循以下步骤:

  1. 分叉自己的仓库
  2. 创建您的功能分支(git checkout -b feature/amazing-feature
  3. 提交更改(git commit -m 'Add some amazing feature'
  4. 推送到分支(git push origin feature/amazing-feature
  5. 创建Pull Request

许可证

本项目采用MIT许可证。详情请参阅LICENSE文档。