workfullcircle-mcp-local 1.4.3 → 1.4.5
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/index.js +7 -23
- package/package.json +3 -4
package/index.js
CHANGED
|
@@ -14,8 +14,7 @@ function printUsage() {
|
|
|
14
14
|
function parseArgs(argv) {
|
|
15
15
|
const parsed = {
|
|
16
16
|
token: null,
|
|
17
|
-
url: process.env.WFC_API_URL || 'https://workfullcircle.com'
|
|
18
|
-
project: null
|
|
17
|
+
url: process.env.WFC_API_URL || 'https://workfullcircle.com'
|
|
19
18
|
};
|
|
20
19
|
|
|
21
20
|
for (let i = 0; i < argv.length; i++) {
|
|
@@ -25,9 +24,6 @@ function parseArgs(argv) {
|
|
|
25
24
|
} else if (argv[i] === '--url') {
|
|
26
25
|
parsed.url = argv[i + 1];
|
|
27
26
|
i++;
|
|
28
|
-
} else if (argv[i] === '--project') {
|
|
29
|
-
parsed.project = argv[i + 1];
|
|
30
|
-
i++;
|
|
31
27
|
}
|
|
32
28
|
}
|
|
33
29
|
|
|
@@ -36,11 +32,6 @@ function parseArgs(argv) {
|
|
|
36
32
|
parsed.token = process.env.WFC_TOKEN;
|
|
37
33
|
}
|
|
38
34
|
|
|
39
|
-
// Fallback to environment variable for project
|
|
40
|
-
if (!parsed.project) {
|
|
41
|
-
parsed.project = process.env.WFC_PROJECT;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
35
|
if (!parsed.token) {
|
|
45
36
|
printUsage();
|
|
46
37
|
}
|
|
@@ -48,7 +39,7 @@ function parseArgs(argv) {
|
|
|
48
39
|
return parsed;
|
|
49
40
|
}
|
|
50
41
|
|
|
51
|
-
const { token: API_TOKEN, url: API_URL
|
|
42
|
+
const { token: API_TOKEN, url: API_URL } = parseArgs(args);
|
|
52
43
|
|
|
53
44
|
// Create HTTPS agent with keepAlive disabled to prevent stale connections
|
|
54
45
|
const httpsAgent = new https.Agent({
|
|
@@ -62,20 +53,13 @@ async function makeRequest(url, payload, retryCount = 0) {
|
|
|
62
53
|
const timeout = setTimeout(() => controller.abort(), 15000); // 15s timeout
|
|
63
54
|
|
|
64
55
|
try {
|
|
65
|
-
const requestHeaders = {
|
|
66
|
-
'Content-Type': 'application/json',
|
|
67
|
-
'Authorization': `Bearer ${API_TOKEN}`,
|
|
68
|
-
'Connection': 'close' // Explicitly request connection close
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
// Add project ID header if available
|
|
72
|
-
if (PROJECT_ID) {
|
|
73
|
-
requestHeaders['X-Project-ID'] = PROJECT_ID;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
56
|
const response = await fetch(url, {
|
|
77
57
|
method: 'POST',
|
|
78
|
-
headers:
|
|
58
|
+
headers: {
|
|
59
|
+
'Content-Type': 'application/json',
|
|
60
|
+
'Authorization': `Bearer ${API_TOKEN}`,
|
|
61
|
+
'Connection': 'close' // Explicitly request connection close
|
|
62
|
+
},
|
|
79
63
|
body: JSON.stringify(payload),
|
|
80
64
|
agent: httpsAgent,
|
|
81
65
|
signal: controller.signal
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package",
|
|
3
3
|
"name": "workfullcircle-mcp-local",
|
|
4
|
-
"version": "1.4.
|
|
5
|
-
"description": "Local STDIO MCP server for WorkFullCircle API with
|
|
4
|
+
"version": "1.4.5",
|
|
5
|
+
"description": "Local STDIO MCP server for WorkFullCircle API with connection leak fixes",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"bin": {
|
|
8
8
|
"workfullcircle-mcp-local": "index.js"
|
|
@@ -20,8 +20,7 @@
|
|
|
20
20
|
"windsurf",
|
|
21
21
|
"antigravity",
|
|
22
22
|
"path-fix",
|
|
23
|
-
"plug-and-play"
|
|
24
|
-
"project-id"
|
|
23
|
+
"plug-and-play"
|
|
25
24
|
],
|
|
26
25
|
"author": "Afreensiyad",
|
|
27
26
|
"license": "MIT",
|