karma365-mcp 2.0.1 → 2.1.0

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.
Files changed (4) hide show
  1. package/README.md +30 -1
  2. package/index.js +1795 -1678
  3. package/package.json +2 -1
  4. package/youtube_check.js +76 -0
package/README.md CHANGED
@@ -1,3 +1,21 @@
1
+ > **Setup (2.1.0):** copy the config from KARMA 365: Settings, AI MCP. It holds `KARMA365_PHONE_URL`
2
+ > and `KARMA365_TOKEN`. The token is never sent over the network: this server and the phone each make
3
+ > the same key from it, and requests are encrypted with that key. Keep the config private.
4
+ > Files can be sent from Desktop, Documents, Downloads, Pictures, Music and Videos; list other folders in
5
+ > `KARMA365_ALLOWED_DIRS`. A database on this PC is used only with `KARMA365_LOCAL_ONLY=true`; otherwise,
6
+ > if the phone can't be reached, the tool reports an error instead of writing somewhere else.
7
+
8
+ > **⚠️ Update from 2.0.x now.** Versions 2.0.0 and 2.0.1 send `KARMA365_TOKEN` in plain text over
9
+ > Wi-Fi, and to any device on the network that answers like a phone. After updating, make a new token in
10
+ > KARMA 365 (Settings, AI MCP) and put it in your config, because the old one may have been seen. Pin
11
+ > the version in your config: `"args": ["-y", "karma365-mcp@2.1.0"]`.
12
+
13
+ > **YouTube in 2.1.0:** `search_youtube` is gone, because it read YouTube's results page, which YouTube's
14
+ > terms do not allow. Ask your AI to add a video by name ("add Starboy to Music"): it finds the video
15
+ > with its own web search and calls `add_youtube`. Before saving, `add_youtube` asks YouTube's public
16
+ > oEmbed endpoint whether the video exists, so a made-up link is never saved, and it uses the real title
17
+ > when you don't give one. An AI without web search will ask you for the link.
18
+
1
19
  # KARMA 365 MCP Server
2
20
 
3
21
  > Connect Claude, Cursor, and any MCP-compatible AI agent directly to your KARMA 365 learning workspace.
@@ -76,7 +94,7 @@ Add this to your `claude_desktop_config.json`:
76
94
  | `create_topic` | Create a topic or subtopic |
77
95
  | `delete_topic` | Delete a topic and its resources |
78
96
  | `list_resources` | List resources (videos, links, PDFs, notes) for a topic |
79
- | `add_youtube` | Attach a YouTube video to a topic |
97
+ | `add_youtube` | Add one YouTube video by its link; checked with YouTube before saving |
80
98
  | `add_link` | Save web links and articles to a topic |
81
99
  | `add_pdf` | Attach PDF documents or study material |
82
100
  | `add_code` | Save code snippets with syntax highlighting |
@@ -92,6 +110,17 @@ Add this to your `claude_desktop_config.json`:
92
110
  ## 🔧 Environment Variables (Optional)
93
111
 
94
112
  - `KARMA365_DB`: Path to custom SQLite database file (defaults to auto-detecting KARMA 365 app data).
113
+ - `KARMA365_ALLOWED_DIRS`: Folders files may be sent from (separated by `;` on Windows, `:` elsewhere).
114
+ Files that hold secrets, such as `.env`, SSH keys, keystores, `.mcp.json`, `key.properties` and `.npmrc`,
115
+ are never sent, even from an allowed folder.
116
+
117
+ ## 🧪 Tests
118
+
119
+ ```bash
120
+ node test_youtube_and_files.js
121
+ ```
122
+
123
+ No phone and no network are needed.
95
124
 
96
125
  ---
97
126