返回市场
云雀-MCP服务器

云雀-MCP服务器

作者:junyuan-qi5 星标更新:2025-03-03

项目介绍

Lark MCP Server

Lark/Feishu 的 Model Context Protocol (MCP) 服务器实现,使兼容 MCP 的应用程序能够与 Lark 的各种协作功能进行交互。

概述

Lark MCP Server 通过实现 Model Context Protocol (MCP) 规范,在 AI 模型和 Lark 协作平台之间提供了一个桥梁。此服务器允许 AI 助手:

  • 向 Lark 用户发送消息
  • 获取日历事件
  • 创建新的日历事件
  • 将参与者添加到日历事件中

该服务器使用标准 I/O(标准输入输出)传输层与 MCP 客户端通信,使其与支持 MCP 标准的各种 AI 模型实现兼容。

特性

  • 消息发送:AI 模型可以向 Lark 用户发送直接消息
  • 日历管理
    • 列出特定时间范围内的事件
    • 创建具有可定制详细信息的新日历事件
    • 将各种类型的参与者添加到事件中(用户、组、会议室、外部电子邮件)

预备条件

  • Node.js v18 或更高版本
  • 具有适当权限的已注册 Lark/Feishu 应用程序
  • 日历操作的用户访问令牌

安装

  1. 克隆仓库:

    git clone https://github.com/junyuan-qi/lark-mcp-server.git
    cd lark-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    npm run build
    

使用方法

连接 MCP 客户端

服务器通过标准输入输出(stdio)进行通信。MCP 客户端可以通过启动子进程并使用其 stdin/stdout 通道进行通信来连接服务器。

与 Claude Desktop 集成

你可以通过配置 Claude Desktop 应用来识别并使用 Lark MCP 服务器,从而将此 MCP 服务器与 Claude Desktop 集成。

1. 配置 Claude Desktop 以识别 Lark MCP 服务器

你可以在 Claude Desktop 应用的设置中找到 claude_desktop_config.json

  1. 打开 Claude Desktop 应用,并从左上角菜单栏启用开发者模式。
  2. 启用后,打开设置(同样从左上角菜单栏),导航到开发者选项,你会找到编辑配置按钮。点击它会打开 claude_desktop_config.json 文件,允许你进行必要的编辑。

或者,你也可以直接从终端打开 claude_desktop_config.json

对于 macOS:

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

对于 Windows:

code %APPDATA%\Claude\claude_desktop_config.json

2. 添加 Lark MCP 服务器配置

在你的 claude_desktop_config.jsonmcpServers 部分添加以下配置:

{
  "mcpServers": {
    "lark-mcp-server": {
      "command": "node",
      "args": ["/path/to/lark-mcp-server/build/index.js"],
      "env": {
        "LARK_APP_ID": "your_app_id",
        "LARK_APP_SECRET": "your_app_secret",
        "LARK_USER_ID": "target_user_id",
        "LARK_CALENDAR_ID": "target_calendar_id",
        "LARK_USER_ACCESS_TOKEN": "your_user_access_token"
      }
    }
  }
}

替换路径和环境变量的实际值。此配置告诉 Claude Desktop 如何启动 Lark MCP 服务器以及需要提供哪些环境变量。

3. 重启 Claude Desktop

为了使更改生效:

  1. 完全退出 Claude Desktop(不仅仅是关闭窗口)
  2. 再次启动 Claude Desktop
  3. 查看 UI 中的图标以验证 Lark MCP 服务器是否已连接

一旦连接成功,Claude 将能够代表你向 Lark 用户发送消息并管理日历事件。

开发

项目结构

  • src/index.ts:主服务器实现
  • build/:编译后的 JavaScript 文件
  • package.json:项目依赖项和脚本

构建

npm run build

这将把 TypeScript 代码编译到 build 目录中的 JavaScript 文件,并设置可执行权限。

故障排除

检查服务器日志(写入 stderr)以获取详细的错误信息。常见问题包括:

  • 缺少环境变量
  • 错误或过期的访问令牌
  • Lark 应用程序权限不足
  • 请求参数无效

许可证

ISC

贡献

欢迎贡献!请随时提交拉取请求。


有关 Model Context Protocol 的更多信息,请访问 MCP 文档

有关 Lark/Feishu API 的更多信息,请访问 Lark 开放平台文档