local-mcp 3.0.177 → 3.0.178
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.
- package/README.md +8 -2
- package/download.js +11 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# LMCP
|
|
2
2
|
|
|
3
|
-
> Give your AI assistant native access to your apps —
|
|
3
|
+
> Give your AI assistant native access to your apps — 235 tools across macOS (127) and Windows (108) for Outlook, Mail, Calendar, Contacts, iMessage, Teams, Slack, WhatsApp, OneDrive, Google Drive, Notes, OmniFocus, Safari, Word, Excel, PowerPoint, Stocks, NordVPN, Microsoft 365, and more. Everything runs locally. Your data never leaves your machine.
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/local-mcp)
|
|
6
6
|
[](https://local-mcp.com?ref=npm)
|
|
@@ -60,9 +60,11 @@ LMCP runs a native MCP server that bridges your Mac apps to any AI client:
|
|
|
60
60
|
| **Stocks** | Real-time quotes, historical charts, symbol search |
|
|
61
61
|
| **Finder** | Search files via Spotlight, list directory contents |
|
|
62
62
|
| **Safari** | Bookmarks, open tabs, click/type/fill forms, run JavaScript |
|
|
63
|
+
| **Microsoft 365** | Read/send email, manage calendar, search org directory — device code login, works with Outlook.com and work accounts |
|
|
64
|
+
| **ServiceNow** | Search/create incidents, get details, search Knowledge Base — Basic auth |
|
|
63
65
|
| **NordVPN** | Status, server recommendations, diagnostics |
|
|
64
66
|
|
|
65
|
-
##
|
|
67
|
+
## 127 MCP Tools
|
|
66
68
|
|
|
67
69
|
Email (9): `list_accounts` `list_emails` `read_email` `send_email` `reply_email` `search_emails` `move_email` `save_attachment` `create_email_folder`
|
|
68
70
|
|
|
@@ -98,6 +100,10 @@ Finder (2): `finder_search` `finder_list`
|
|
|
98
100
|
|
|
99
101
|
Safari (13): `list_safari_bookmarks` `safari_list_tabs` `safari_read_tab` `safari_search_tabs` `safari_navigate` `safari_go_back` `safari_setup_check` `safari_evaluate_js` `safari_click` `safari_type` `safari_fill_form` `safari_wait_for` `safari_query_selector_all`
|
|
100
102
|
|
|
103
|
+
Microsoft 365 (13): `connect_m365_account` `disconnect_m365_account` `m365_list_emails` `m365_read_email` `m365_send_email` `m365_reply_email` `m365_search_emails` `m365_list_events` `m365_create_event` `m365_delete_event` `search_m365_directory` `get_m365_person` `list_m365_people_insights`
|
|
104
|
+
|
|
105
|
+
ServiceNow (7): `connect_servicenow` `disconnect_servicenow` `servicenow_list_my_incidents` `servicenow_search_incidents` `servicenow_get_incident` `servicenow_create_incident` `servicenow_search_kb`
|
|
106
|
+
|
|
101
107
|
NordVPN (3): `nordvpn_status` `nordvpn_servers` `nordvpn_diagnose`
|
|
102
108
|
|
|
103
109
|
System (7): `run_diagnostics` `update_local_mcp` `update_self_diagnosis` `daily_brief` `report_problem` `request_feature` `request_integration`
|
package/download.js
CHANGED
|
@@ -388,7 +388,7 @@ async function ensureTray() {
|
|
|
388
388
|
// LaunchAgent — auto-start en cada reboot de sesión
|
|
389
389
|
_writeTrayLaunchAgent(trayApp)
|
|
390
390
|
|
|
391
|
-
process.stderr.write(` Tray instalado en ${trayApp}\n`)
|
|
391
|
+
process.stderr.write(` Tray instalado en ${trayApp}${process.stdin.isTTY ? '' : ' (se iniciará en el próximo login)'}\n`)
|
|
392
392
|
return trayApp
|
|
393
393
|
}
|
|
394
394
|
|
|
@@ -418,12 +418,16 @@ function _writeTrayLaunchAgent(trayApp) {
|
|
|
418
418
|
try {
|
|
419
419
|
fs.mkdirSync(plistDir, { recursive: true })
|
|
420
420
|
fs.writeFileSync(plistPath, plist, 'utf8')
|
|
421
|
-
//
|
|
422
|
-
|
|
423
|
-
//
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
421
|
+
// Only kill+reload the tray when NOT inside an active MCP session.
|
|
422
|
+
// When spawned by Claude Desktop / claude-ai, stdin is a pipe (not a TTY).
|
|
423
|
+
// Killing the tray and starting a new one while the MCP server binary is
|
|
424
|
+
// running standalone causes a port-8765 conflict that crashes the session.
|
|
425
|
+
// In that case, just write the plist — the tray will auto-start at next login.
|
|
426
|
+
if (process.stdin.isTTY) {
|
|
427
|
+
try { execFileSync('pkill', ['-x', 'LocalMCPTray'], { stdio: 'pipe' }) } catch { /* not running */ }
|
|
428
|
+
try { execFileSync('launchctl', ['unload', plistPath], { stdio: 'pipe' }) } catch {}
|
|
429
|
+
execFileSync('launchctl', ['load', plistPath], { stdio: 'pipe' })
|
|
430
|
+
}
|
|
427
431
|
} catch { /* no crítico */ }
|
|
428
432
|
}
|
|
429
433
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "local-mcp",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.178",
|
|
4
4
|
"description": "LMCP — connect Claude Desktop, Cursor, Windsurf to Mail, Calendar, Contacts, Teams, OneDrive on macOS. Privacy-first: all data stays on your Mac.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|