diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index 13efbe20c..7af8b36e5 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -602,6 +602,16 @@ "name": "databricks-genie-one", "source": "third_party/databricks-genie-one", "description": "Ask Databricks Genie questions about your workspace's data in plain language." + }, + { + "name": "lark", + "source": "third_party/lark", + "description": "Search, create, and update Lark Suite docs, and read Lark messages and groups." + }, + { + "name": "feishu", + "source": "third_party/feishu", + "description": "Search, create, and update Feishu docs, and read Feishu messages and groups." } ] } diff --git a/README.md b/README.md index 22823d7b9..c766a4384 100644 --- a/README.md +++ b/README.md @@ -110,6 +110,8 @@ Official Cursor plugins for popular developer tools, frameworks, and SaaS produc | `gopuff` | [Gopuff](third_party/gopuff/) | Cursor | Integrations | Shop Gopuff from Grok Bot through Gopuff's official MCP server. Sign in with your Gopuff account; Gopuff handles the sign-in, and your searches, carts, and orders go to Gopuff under that account, so any order you place is charged and delivered like a normal Gopuff order. | | `jobber` | [Jobber](third_party/jobber/) | Cursor | Integrations | Work with clients, requests, quotes, jobs, visits, and invoices. | | `databricks-genie-one` | [Databricks Genie One](third_party/databricks-genie-one/) | Cursor | Integrations | Ask Databricks Genie questions about your workspace's data in plain language. | +| `lark` | [Lark](third_party/lark/) | Cursor | Integrations | Search, create, and update Lark Suite docs, and read Lark messages and groups. | +| `feishu` | [Feishu](third_party/feishu/) | Cursor | Integrations | Search, create, and update Feishu docs, and read Feishu messages and groups. | Author values match each plugin’s `plugin.json` `author.name` (Cursor lists `plugins@cursor.com` in the manifest). ## Repository structure diff --git a/third_party/feishu/.cursor-plugin/plugin.json b/third_party/feishu/.cursor-plugin/plugin.json new file mode 100644 index 000000000..5745498aa --- /dev/null +++ b/third_party/feishu/.cursor-plugin/plugin.json @@ -0,0 +1,32 @@ +{ + "name": "feishu", + "displayName": "Feishu", + "version": "1.0.0", + "minClientVersions": { + "cursor": "3.13.0" + }, + "description": "Search, create, and update Feishu docs, and read Feishu messages and groups.", + "author": { + "name": "Cursor", + "email": "plugins@cursor.com" + }, + "homepage": "https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction", + "repository": "https://github.com/cursor/plugins", + "license": "MIT", + "logo": "assets/logo.png", + "keywords": [ + "feishu", + "docs", + "im", + "messages", + "mcp" + ], + "category": "integrations", + "tags": [ + "feishu", + "docs", + "messaging", + "mcp" + ], + "mcpServers": "./mcp.json" +} diff --git a/third_party/feishu/CHANGELOG.md b/third_party/feishu/CHANGELOG.md new file mode 100644 index 000000000..bc458bf34 --- /dev/null +++ b/third_party/feishu/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog + +All notable changes to this plugin will be documented here. + +## 1.0.0 — initial release + +- Added the `feishu` MCP server pointing at Feishu's hosted Streamable HTTP endpoint (`https://mcp.feishu.cn/mcp`). +- Auth uses MCP OAuth with Feishu user login and Dynamic Client Registration — no API token, client secret, or custom header to configure. +- Logo: the official Lark/Feishu bird mark, from the `larksuite` GitHub organization (Lark Technologies Pte. Ltd.). Feishu uses the same bird as Lark. diff --git a/third_party/feishu/LICENSE b/third_party/feishu/LICENSE new file mode 100644 index 000000000..ca2bba771 --- /dev/null +++ b/third_party/feishu/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Cursor + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/feishu/README.md b/third_party/feishu/README.md new file mode 100644 index 000000000..0884c3b7e --- /dev/null +++ b/third_party/feishu/README.md @@ -0,0 +1,65 @@ +# Feishu + +Cursor plugin that connects agents to [Feishu](https://www.feishu.cn) (飞书, the China product) through Feishu's official remote [Model Context Protocol](https://modelcontextprotocol.io/) server. + +Search, create, fetch, and update Feishu docs, work with doc comments and files, and read Feishu IM groups and messages in the signed-in Feishu account. + +Official MCP introduction: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction + +## Install + +1. Open **Cursor Settings → Plugins**. +2. Search for **Feishu**. +3. Click **Install**, then complete the Feishu sign-in prompt. + +Or run `/add-plugin feishu` in chat. + +Accounts on international Lark Suite should install the separate [Lark](../lark/) plugin instead. This plugin talks only to `mcp.feishu.cn`. + +## MCP + +```json +{ + "mcpServers": { + "feishu": { + "type": "http", + "url": "https://mcp.feishu.cn/mcp" + } + } +} +``` + +Auth is MCP OAuth (Bearer). Cursor discovers the authorization server when the plugin connects and prompts for Feishu login. Feishu supports Dynamic Client Registration, so there is no API token, client ID, client secret, or custom header to configure. + +## Before you connect + +You need a Feishu account. Unauthenticated requests to the server are rejected until that login completes. + +## What agents can do + +| Category | Capabilities | +| --- | --- | +| Docs | Search, create, fetch, and update docs; doc comments; list docs | +| IM | Search groups, list group members, get and search messages, read a thread, and check read status | +| People and files | Look up the signed-in user, search users, and fetch files | + +The China server advertises the same tool surface as international Lark, including `fetch-file-v2`, `get-user`, `search-user`, `list-docs-v2`, `search-groups`, `get-group-members`, `get-thread-messages`, and `get-read-status`, plus doc search/create/fetch/update, doc comments, and message get/search. The `offline_access` scope is advertised so the connection can refresh. The hosted runtime is the source of truth for tool names and schemas. + +## Notes + +- Tool calls run as the Feishu user who authorizes the connection and cannot exceed that user's permissions. +- This plugin points only at Feishu's official hosted endpoint. It does not wrap the local `@larksuiteoapi/lark-mcp` stdio server, and it does not take an app id, app secret, user access token, or `X-Lark-MCP-*` header. +- Feishu hosts the server itself. OAuth uses the authorization server at `https://accounts.feishu.cn/mcp` and dynamic client registration at `https://open.feishu.cn/open-apis/app/v1/dcr`. +- International Lark Suite is a separate plugin (`lark`) pointing at `https://mcp.larksuite.com/mcp`. +- Revoke access at any time from your Feishu account. + +## Docs + +- Feishu MCP introduction: https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction +- Server URL: https://mcp.feishu.cn/mcp + +Logo is the official Lark/Feishu bird mark, from the `larksuite` GitHub organization (Lark Technologies Pte. Ltd.). Feishu uses the same bird as Lark. + +## License + +MIT diff --git a/third_party/feishu/assets/logo.png b/third_party/feishu/assets/logo.png new file mode 100644 index 000000000..9c83d5106 Binary files /dev/null and b/third_party/feishu/assets/logo.png differ diff --git a/third_party/feishu/mcp.json b/third_party/feishu/mcp.json new file mode 100644 index 000000000..37fc2f719 --- /dev/null +++ b/third_party/feishu/mcp.json @@ -0,0 +1,8 @@ +{ + "mcpServers": { + "feishu": { + "type": "http", + "url": "https://mcp.feishu.cn/mcp" + } + } +} diff --git a/third_party/lark/.cursor-plugin/plugin.json b/third_party/lark/.cursor-plugin/plugin.json new file mode 100644 index 000000000..4b583c299 --- /dev/null +++ b/third_party/lark/.cursor-plugin/plugin.json @@ -0,0 +1,33 @@ +{ + "name": "lark", + "displayName": "Lark", + "version": "1.0.0", + "minClientVersions": { + "cursor": "3.13.0" + }, + "description": "Search, create, and update Lark Suite docs, and read Lark messages and groups.", + "author": { + "name": "Cursor", + "email": "plugins@cursor.com" + }, + "homepage": "https://open.larksuite.com/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction", + "repository": "https://github.com/cursor/plugins", + "license": "MIT", + "logo": "assets/logo.png", + "keywords": [ + "lark", + "lark suite", + "docs", + "im", + "messages", + "mcp" + ], + "category": "integrations", + "tags": [ + "lark", + "docs", + "messaging", + "mcp" + ], + "mcpServers": "./mcp.json" +} diff --git a/third_party/lark/CHANGELOG.md b/third_party/lark/CHANGELOG.md new file mode 100644 index 000000000..312ee0f6b --- /dev/null +++ b/third_party/lark/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog + +All notable changes to this plugin will be documented here. + +## 1.0.0 — initial release + +- Added the `lark` MCP server pointing at Lark's hosted Streamable HTTP endpoint (`https://mcp.larksuite.com/mcp`). +- Auth uses MCP OAuth with Lark user login and Dynamic Client Registration — no API token, client secret, or custom header to configure. +- Logo: Lark's official bird mark, from the `larksuite` GitHub organization (Lark Technologies Pte. Ltd.). diff --git a/third_party/lark/LICENSE b/third_party/lark/LICENSE new file mode 100644 index 000000000..ca2bba771 --- /dev/null +++ b/third_party/lark/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Cursor + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/lark/README.md b/third_party/lark/README.md new file mode 100644 index 000000000..016e010b3 --- /dev/null +++ b/third_party/lark/README.md @@ -0,0 +1,65 @@ +# Lark + +Cursor plugin that connects agents to [Lark](https://www.larksuite.com) (Lark Suite, the international product) through Lark's official remote [Model Context Protocol](https://modelcontextprotocol.io/) server. + +Search, create, fetch, and update Lark Docs, work with doc comments and files, and read Lark IM groups and messages in the signed-in Lark account. + +Official MCP introduction: https://open.larksuite.com/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction + +## Install + +1. Open **Cursor Settings → Plugins**. +2. Search for **Lark**. +3. Click **Install**, then complete the Lark sign-in prompt. + +Or run `/add-plugin lark` in chat. + +Accounts on China-region Feishu should install the separate [Feishu](../feishu/) plugin instead. This plugin talks only to `mcp.larksuite.com`. + +## MCP + +```json +{ + "mcpServers": { + "lark": { + "type": "http", + "url": "https://mcp.larksuite.com/mcp" + } + } +} +``` + +Auth is MCP OAuth (Bearer). Cursor discovers the authorization server when the plugin connects and prompts for Lark login. Lark supports Dynamic Client Registration, so there is no API token, client ID, client secret, or custom header to configure. + +## Before you connect + +You need a Lark Suite account. Unauthenticated requests to the server are rejected until that login completes. + +## What agents can do + +| Category | Capabilities | +| --- | --- | +| Docs | Search, create, fetch, and update docs; doc comments; list docs | +| IM | Search groups, list group members, get and search messages, read a thread, and check read status | +| People and files | Look up the signed-in user, search users, and fetch files | + +Advertised tools include `fetch-file-v2`, `get-user`, `search-user`, `list-docs-v2`, `search-groups`, `get-group-members`, `get-thread-messages`, and `get-read-status`, plus doc search/create/fetch/update, doc comments, and message get/search. The `offline_access` scope is advertised so the connection can refresh. The hosted runtime is the source of truth for tool names and schemas. + +## Notes + +- Tool calls run as the Lark user who authorizes the connection and cannot exceed that user's permissions. +- This plugin points only at Lark's official hosted endpoint. It does not wrap the local `@larksuiteoapi/lark-mcp` stdio server, and it does not take an app id, app secret, user access token, or `X-Lark-MCP-*` header. +- Lark hosts the server itself. OAuth metadata is discovered at connect time (protected resource `https://mcp.larksuite.com/.well-known/oauth-protected-resource/mcp`, authorization server `https://accounts.larksuite.com/mcp`, dynamic client registration `https://open.larksuite.com/open-apis/app/v1/dcr`). +- China-region Feishu is a separate plugin (`feishu`) pointing at `https://mcp.feishu.cn/mcp`. +- Revoke access at any time from your Lark account. + +## Docs + +- Lark MCP introduction: https://open.larksuite.com/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_introduction +- Server URL: https://mcp.larksuite.com/mcp + +Logo is Lark's official bird mark, from the `larksuite` GitHub organization (Lark Technologies Pte. Ltd.). + +## License + +MIT diff --git a/third_party/lark/assets/logo.png b/third_party/lark/assets/logo.png new file mode 100644 index 000000000..9c83d5106 Binary files /dev/null and b/third_party/lark/assets/logo.png differ diff --git a/third_party/lark/mcp.json b/third_party/lark/mcp.json new file mode 100644 index 000000000..085b2c872 --- /dev/null +++ b/third_party/lark/mcp.json @@ -0,0 +1,8 @@ +{ + "mcpServers": { + "lark": { + "type": "http", + "url": "https://mcp.larksuite.com/mcp" + } + } +}