Lark Server
FreeNot checkedEnables AI models to send messages to Lark users and manage calendar events (list, create, add attendees) through the Model Context Protocol.
About
Enables AI models to send messages to Lark users and manage calendar events (list, create, add attendees) through the Model Context Protocol.
README
A Model Context Protocol (MCP) server implementation for Lark/Feishu, enabling MCP-compatible applications to interact with Lark's various collaboration capabilities.
Overview
Lark MCP Server provides a bridge between AI models and Lark's collaboration platform by implementing the Model Context Protocol (MCP) specification. This server allows AI assistants to:
- Send messages to Lark users
- Retrieve calendar events
- Create new calendar events
- Add attendees to calendar events
The server uses the standard I/O (stdio) transport layer to communicate with MCP clients, making it compatible with various AI model implementations that support the MCP standard.
Features
- Message Sending: AI models can send direct messages to Lark users
- Calendar Management:
- List events within a specific time range
- Create new calendar events with customizable details
- Add various types of attendees to events (users, groups, meeting rooms, external emails)
Prerequisites
- Node.js v18 or higher
- A registered Lark/Feishu application with appropriate permissions
- User access token for calendar operations
Installation
Clone the repository:
git clone https://github.com/junyuan-qi/lark-mcp-server.git cd lark-mcp-serverInstall dependencies:
npm installBuild the project:
npm run build
Usage
Connecting with an MCP Client
The server communicates via standard input/output (stdio). MCP clients can connect to the server by launching it as a child process and communicating through its stdin/stdout channels.
Setting Up with Claude Desktop
You can integrate this MCP server with Claude Desktop by configuring the Claude Desktop application to recognize and use the Lark MCP server.
1. Configure Claude Desktop to recognize the Lark MCP server
You can find claude_desktop_config.json inside the settings of Claude Desktop app:
- Open the Claude Desktop app and enable Developer Mode from the top-left menu bar.
- Once enabled, open Settings (also from the top-left menu bar) and navigate to the Developer Option, where you'll find the Edit Config button. Clicking it will open the
claude_desktop_config.jsonfile, allowing you to make the necessary edits.
Alternatively, you can open claude_desktop_config.json directly from terminal:
For macOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
For Windows:
code %APPDATA%\Claude\claude_desktop_config.json
2. Add the Lark MCP server configuration
Add the following configuration to the mcpServers section of your claude_desktop_config.json:
{
"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"
}
}
}
}
Replace the path and environment variables with your actual values. This configuration tells Claude Desktop how to launch the Lark MCP server and what environment variables to provide.
3. Restart Claude Desktop
For the changes to take effect:
- Completely quit Claude Desktop (not just close the window)
- Start Claude Desktop again
- Look for an icon in the UI to verify the Lark MCP server is connected
Once connected, Claude will be able to send messages to Lark users and manage calendar events on your behalf.
Development
Project Structure
src/index.ts: Main server implementationbuild/: Compiled JavaScript filespackage.json: Project dependencies and scripts
Building
npm run build
This compiles the TypeScript code to JavaScript in the build directory and sets executable permissions.
Troubleshooting
Check the server logs (written to stderr) for detailed error information. Common issues include:
- Missing environment variables
- Incorrect or expired access tokens
- Insufficient permissions for the Lark application
- Invalid request parameters
License
ISC
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
For more information about the Model Context Protocol, visit the MCP Documentation.
For more information about Lark/Feishu API, visit the Lark Open Platform Documentation.
Install Lark Server in Claude Desktop, Claude Code & Cursor
unyly install lark-mcp-serverInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add lark-mcp-server -- npx -y lark-mcp-serverFAQ
Is Lark Server MCP free?
Yes, Lark Server MCP is free — one-click install via Unyly at no cost.
Does Lark Server need an API key?
No, Lark Server runs without API keys or environment variables.
Is Lark Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Lark Server in Claude Desktop, Claude Code or Cursor?
Open Lark Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Notion
Read and write pages in your workspace
by NotionLinear
Issues, cycles, triage — from Claude
by LinearGoogle Drive
Search and read your Drive files
by Googlemindsdb/mindsdb
Connect and unify data across various platforms and databases with [MindsDB as a single MCP server](https://docs.mindsdb.com/mcp/overview).
by mindsdbCompare Lark Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All productivity MCPs
