feishu-user-plugin 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "feishu-user-plugin",
3
- "version": "1.0.0",
4
- "description": "All-in-one Feishu plugin for Claude Code — send messages as yourself, read chats, manage docs/tables/wiki. 33 tools + 8 skills, 3 auth layers.",
3
+ "version": "1.0.2",
4
+ "description": "All-in-one Feishu plugin for Claude Code — send messages as yourself, read chats, manage docs/tables/wiki. 33 tools + 9 skills, 3 auth layers.",
5
5
  "author": {
6
6
  "name": "EthanQC"
7
7
  },
package/CHANGELOG.md CHANGED
@@ -4,6 +4,28 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## [1.0.2] - 2026-03-10
8
+
9
+ ### Fixed
10
+ - `list_user_chats` description incorrectly claimed "including P2P" — actually only returns groups
11
+ - OAuth scope `contact:user.id:readonly` → `contact:user.base:readonly` in README
12
+ - Cookie length validation range (500-5000, was 1000-5000)
13
+ - Version inconsistency across `server.json`, `plugin.json`, `SKILL.md`, `src/index.js`
14
+ - Skill count: 8 → 9 (was missing `/drive`)
15
+ - README_CN.md Claude Desktop config missing `env` block
16
+
17
+ ### Added
18
+ - Startup auth diagnostics in `src/index.js` (Cookie/App/UAT status logging)
19
+ - `LARK_USER_REFRESH_TOKEN` to all MCP config examples
20
+ - Troubleshooting for `invalid_grant` errors (28003/20003/20005)
21
+ - Troubleshooting for `oauth.js` requiring APP_ID/SECRET in `.env`
22
+ - Playwright cookie setup: two-step extraction, `clearCookies()`, ASCII validation
23
+ - `LARK_USER_REFRESH_TOKEN` to `server.json` environment_variables
24
+
25
+ ### Changed
26
+ - All 5 env vars marked as required for full functionality
27
+ - Improved `read_p2p_messages` chat_id description (numeric + oc_xxx both accepted)
28
+
7
29
  ## [1.0.0] - 2026-03-09
8
30
 
9
31
  ### Changed
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
  [![Tools](https://img.shields.io/badge/Tools-33-orange.svg)](#tools-33-total)
7
7
  [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md)
8
8
 
9
- **All-in-one Feishu/Lark MCP Server -- 33 tools, 8 skills, 3 auth layers for messaging, docs, tables, wiki, and drive.**
9
+ **All-in-one Feishu/Lark MCP Server -- 33 tools, 9 skills, 3 auth layers for messaging, docs, tables, wiki, and drive.**
10
10
 
11
11
  The only MCP server that lets you send messages as your **personal identity** (not a bot), while also integrating the full official Feishu API for documents, spreadsheets, wikis, and more.
12
12
 
@@ -82,7 +82,7 @@ Go to **Permissions & Scopes** (权限管理) and add the following scopes:
82
82
  | `bitable:record` | Read and write Bitable records |
83
83
  | `wiki:wiki:readonly` | Read wiki spaces and nodes |
84
84
  | `drive:drive:readonly` | List Drive files and folders |
85
- | `contact:user.id:readonly` | Look up users by email/mobile |
85
+ | `contact:user.base:readonly` | Look up users by email/mobile |
86
86
 
87
87
  > Add more scopes as needed depending on which tools you use.
88
88
 
@@ -338,7 +338,7 @@ Send messages as yourself, not as a bot.
338
338
  | Tool | Description |
339
339
  |------|-------------|
340
340
  | `read_p2p_messages` | Read P2P (direct message) history. Works for chats the bot cannot access. |
341
- | `list_user_chats` | List all chats the user is in, including P2P. |
341
+ | `list_user_chats` | List group chats the user is in. Note: only returns groups, not P2P. |
342
342
 
343
343
  ### Official API -- IM (Bot Identity)
344
344
 
@@ -388,9 +388,9 @@ Send messages as yourself, not as a bot.
388
388
  |------|-------------|
389
389
  | `find_user` | Find user by email or mobile number |
390
390
 
391
- ## Claude Code Slash Commands (8 skills)
391
+ ## Claude Code Slash Commands (9 skills)
392
392
 
393
- This plugin includes 8 built-in skills in `skills/feishu-user-plugin/`:
393
+ This plugin includes 9 built-in skills in `skills/feishu-user-plugin/`:
394
394
 
395
395
  | Skill | Usage | Description |
396
396
  |-------|-------|-------------|
@@ -401,6 +401,7 @@ This plugin includes 8 built-in skills in `skills/feishu-user-plugin/`:
401
401
  | `/doc` | `/doc search MCP` | Search, read, or create documents |
402
402
  | `/table` | `/table query appXxx` | Query or create Bitable records |
403
403
  | `/wiki` | `/wiki search protocol` | Search and browse wiki |
404
+ | `/drive` | `/drive list folderToken` | List files or create folders in Drive |
404
405
  | `/status` | `/status` | Check login and auth status |
405
406
 
406
407
  Skills are automatically available when the plugin is installed.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "feishu-user-plugin",
3
- "version": "1.0.1",
4
- "description": "All-in-one Feishu plugin for Claude Code — send messages as yourself, read chats, manage docs/tables/wiki. 33 tools + 8 skills, 3 auth layers.",
3
+ "version": "1.0.2",
4
+ "description": "All-in-one Feishu plugin for Claude Code — send messages as yourself, read chats, manage docs/tables/wiki. 33 tools + 9 skills, 3 auth layers.",
5
5
  "main": "src/index.js",
6
6
  "bin": {
7
7
  "feishu-user-plugin": "src/index.js"
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: feishu-user-plugin
3
- version: "1.0.0"
3
+ version: "1.0.2"
4
4
  description: "All-in-one Feishu plugin — send messages as yourself, read group/P2P chats, manage docs/tables/wiki. Replaces and extends the official Feishu MCP."
5
5
  allowed-tools: send_to_user, send_to_group, send_as_user, send_image_as_user, send_file_as_user, send_post_as_user, send_sticker_as_user, send_audio_as_user, search_contacts, create_p2p_chat, get_chat_info, get_user_info, get_login_status, read_p2p_messages, list_user_chats, list_chats, read_messages, reply_message, forward_message, search_docs, read_doc, create_doc, list_bitable_tables, list_bitable_fields, search_bitable_records, create_bitable_record, update_bitable_record, list_wiki_spaces, search_wiki, list_wiki_nodes, list_files, create_folder, find_user
6
6
  user_invocable: true
package/src/index.js CHANGED
@@ -490,7 +490,7 @@ const TOOLS = [
490
490
  // --- Server ---
491
491
 
492
492
  const server = new Server(
493
- { name: 'feishu-user-plugin', version: '1.0.0' },
493
+ { name: 'feishu-user-plugin', version: '1.0.2' },
494
494
  { capabilities: { tools: {} } }
495
495
  );
496
496
 
@@ -696,7 +696,7 @@ async function main() {
696
696
  const hasCookie = !!process.env.LARK_COOKIE;
697
697
  const hasApp = !!(process.env.LARK_APP_ID && process.env.LARK_APP_SECRET);
698
698
  const hasUAT = !!process.env.LARK_USER_ACCESS_TOKEN;
699
- console.error(`[feishu-user-plugin] MCP Server v1.0.1 — ${TOOLS.length} tools`);
699
+ console.error(`[feishu-user-plugin] MCP Server v1.0.2 — ${TOOLS.length} tools`);
700
700
  console.error(`[feishu-user-plugin] Auth: Cookie=${hasCookie ? 'YES' : 'NO'} App=${hasApp ? 'YES' : 'NO'} UAT=${hasUAT ? 'YES' : 'NO'}`);
701
701
  if (!hasCookie) console.error('[feishu-user-plugin] WARNING: LARK_COOKIE not set — user identity tools (send_to_user, etc.) will fail');
702
702
  if (!hasApp) console.error('[feishu-user-plugin] WARNING: LARK_APP_ID/SECRET not set — official API tools (read_messages, docs, etc.) will fail');
@@ -274,7 +274,7 @@ async function testUAT() {
274
274
  }
275
275
 
276
276
  async function main() {
277
- console.log('=== feishu-user-plugin v1.0.0 — Comprehensive Test ===\n');
277
+ console.log('=== feishu-user-plugin v1.0.2 — Comprehensive Test ===\n');
278
278
 
279
279
  await testUserIdentity();
280
280
  console.log('');