spect8-mcp 0.1.1 → 0.1.3
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/dist/cli.js +46 -3
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
import { writeFileSync, mkdirSync, existsSync, readFileSync } from "fs";
|
|
3
3
|
import { join } from "path";
|
|
4
4
|
import { homedir } from "os";
|
|
5
|
+
import { createServer } from "http";
|
|
6
|
+
import { exec } from "child_process";
|
|
7
|
+
import { URL } from "url";
|
|
5
8
|
const RULES_CONTENT = `# Spect8 AI Proficiency Rules
|
|
6
9
|
You are integrated with the Spect8 Telemetry system. To maintain logical density tracking, you MUST:
|
|
7
10
|
1. Call \`mcp_spect8_start_task\` at the beginning of every user request.
|
|
@@ -85,9 +88,49 @@ function main() {
|
|
|
85
88
|
}
|
|
86
89
|
else if (command === "setup") {
|
|
87
90
|
const apiKey = args[1];
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
+
if (apiKey) {
|
|
92
|
+
// Manual setup
|
|
93
|
+
setupGlobalMcpConfig(apiKey);
|
|
94
|
+
log("✨ Global configuration complete.");
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
// Interactive Browser Auth
|
|
98
|
+
const PORT = 9090;
|
|
99
|
+
const server = createServer((req, res) => {
|
|
100
|
+
// Set CORS for the frontend to hit this local server
|
|
101
|
+
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
102
|
+
res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS');
|
|
103
|
+
const url = new URL(req.url || "", `http://localhost:${PORT}`);
|
|
104
|
+
if (url.pathname === "/callback") {
|
|
105
|
+
const key = url.searchParams.get("key");
|
|
106
|
+
if (key) {
|
|
107
|
+
setupGlobalMcpConfig(key);
|
|
108
|
+
// Redirect back to the website success page
|
|
109
|
+
res.writeHead(302, { 'Location': 'https://www.spect8ai.tech/dashboard' });
|
|
110
|
+
res.end();
|
|
111
|
+
log("✨ Authentication successful! API key saved.");
|
|
112
|
+
// Wait a tiny bit for the redirect to finish before closing
|
|
113
|
+
setTimeout(() => process.exit(0), 1000);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
res.writeHead(404);
|
|
118
|
+
res.end();
|
|
119
|
+
});
|
|
120
|
+
server.listen(PORT, () => {
|
|
121
|
+
const authUrl = `https://www.spect8ai.tech/connect?callback=http://localhost:${PORT}/callback`;
|
|
122
|
+
log("Logging you in via browser...");
|
|
123
|
+
log(`If it doesn't open automatically, visit: ${authUrl}`);
|
|
124
|
+
// Open browser based on OS
|
|
125
|
+
const start = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
|
|
126
|
+
exec(`${start} ${authUrl}`);
|
|
127
|
+
});
|
|
128
|
+
// Timeout after 5 minutes
|
|
129
|
+
setTimeout(() => {
|
|
130
|
+
log("❌ Setup timed out. Please try again.");
|
|
131
|
+
process.exit(1);
|
|
132
|
+
}, 5 * 60 * 1000);
|
|
133
|
+
}
|
|
91
134
|
}
|
|
92
135
|
else {
|
|
93
136
|
console.log(`
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "spect8-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Spect8 local MCP server: captures tool events + token usage from Cursor and Claude Code, posts HMAC-signed batches to the Spect8 ingest API.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/server.js",
|