local-mcp 1.65.0 → 1.73.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.
- package/package.json +1 -1
- package/setup.js +22 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "local-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.73.0",
|
|
4
4
|
"description": "MCP server for macOS \u2014 connect Claude Desktop, Cursor, Windsurf to Mail, Calendar, Contacts, Teams, OneDrive. Privacy-first: all data stays on your Mac.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
package/setup.js
CHANGED
|
@@ -172,6 +172,27 @@ async function runSetup(opts = {}) {
|
|
|
172
172
|
_pingInstall(configured, opts.method || 'setup')
|
|
173
173
|
}
|
|
174
174
|
|
|
175
|
+
function _getMachineId() {
|
|
176
|
+
try {
|
|
177
|
+
// Try reading from macOS Keychain (same as server.py)
|
|
178
|
+
const r = execSync('security find-generic-password -s com.local-mcp.machine-id -a machine-id -w 2>/dev/null', { stdio: 'pipe' })
|
|
179
|
+
const id = r.toString().trim()
|
|
180
|
+
if (id) return id
|
|
181
|
+
} catch {}
|
|
182
|
+
try {
|
|
183
|
+
// Generate from hardware UUID
|
|
184
|
+
const crypto = require('crypto')
|
|
185
|
+
const ioreg = execSync('ioreg -rd1 -c IOPlatformExpertDevice', { stdio: 'pipe' }).toString()
|
|
186
|
+
const match = ioreg.match(/"IOPlatformUUID"\s*=\s*"([^"]+)"/)
|
|
187
|
+
const hwUuid = match ? match[1] : require('os').hostname()
|
|
188
|
+
const id = crypto.createHash('sha256').update(hwUuid).digest('hex').slice(0, 24)
|
|
189
|
+
// Save to Keychain
|
|
190
|
+
try { execSync(`security add-generic-password -s com.local-mcp.machine-id -a machine-id -w ${id} -U 2>/dev/null`, { stdio: 'pipe' }) } catch {}
|
|
191
|
+
return id
|
|
192
|
+
} catch {}
|
|
193
|
+
return ''
|
|
194
|
+
}
|
|
195
|
+
|
|
175
196
|
function _pingInstall(clients, method) {
|
|
176
197
|
try {
|
|
177
198
|
const https = require('https')
|
|
@@ -183,6 +204,7 @@ function _pingInstall(clients, method) {
|
|
|
183
204
|
node_version: process.version,
|
|
184
205
|
method: method,
|
|
185
206
|
clients_configured: clients,
|
|
207
|
+
machine_id: _getMachineId(),
|
|
186
208
|
})
|
|
187
209
|
const req = https.request({
|
|
188
210
|
hostname: 'office-mcp-production.up.railway.app',
|