contextforge-mcp 0.1.21 → 0.1.22
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/index.js +2 -2
- package/dist/setup.d.ts +3 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +253 -0
- package/dist/setup.js.map +1 -0
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -843,14 +843,14 @@ async function main() {
|
|
|
843
843
|
console.error('');
|
|
844
844
|
console.error(`${colors.bgBlue}${colors.white}${colors.bright} ContextForge MCP ${colors.reset}`);
|
|
845
845
|
console.error(`${colors.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${colors.reset}`);
|
|
846
|
-
console.error(`${colors.cyan}Version:${colors.reset} 0.1.
|
|
846
|
+
console.error(`${colors.cyan}Version:${colors.reset} 0.1.22`);
|
|
847
847
|
console.error(`${colors.cyan}API URL:${colors.reset} ${config.apiUrl}`);
|
|
848
848
|
console.error(`${colors.cyan}Space:${colors.reset} ${config.defaultSpace || '(not set)'}`);
|
|
849
849
|
console.error(`${colors.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${colors.reset}`);
|
|
850
850
|
console.error('');
|
|
851
851
|
const server = new Server({
|
|
852
852
|
name: 'contextforge-mcp',
|
|
853
|
-
version: '0.1.
|
|
853
|
+
version: '0.1.22',
|
|
854
854
|
}, {
|
|
855
855
|
capabilities: {
|
|
856
856
|
tools: {},
|
package/dist/setup.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":""}
|
package/dist/setup.js
ADDED
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import * as readline from 'readline';
|
|
3
|
+
import { execSync } from 'child_process';
|
|
4
|
+
import { existsSync, readFileSync } from 'fs';
|
|
5
|
+
import { homedir } from 'os';
|
|
6
|
+
import { join } from 'path';
|
|
7
|
+
// ============ Colors ============
|
|
8
|
+
const colors = {
|
|
9
|
+
reset: '\x1b[0m',
|
|
10
|
+
bright: '\x1b[1m',
|
|
11
|
+
dim: '\x1b[2m',
|
|
12
|
+
red: '\x1b[31m',
|
|
13
|
+
green: '\x1b[32m',
|
|
14
|
+
yellow: '\x1b[33m',
|
|
15
|
+
blue: '\x1b[34m',
|
|
16
|
+
magenta: '\x1b[35m',
|
|
17
|
+
cyan: '\x1b[36m',
|
|
18
|
+
white: '\x1b[37m',
|
|
19
|
+
bgBlue: '\x1b[44m',
|
|
20
|
+
bgGreen: '\x1b[42m',
|
|
21
|
+
};
|
|
22
|
+
// ============ Helpers ============
|
|
23
|
+
function print(text) {
|
|
24
|
+
console.log(text);
|
|
25
|
+
}
|
|
26
|
+
function printColor(text, color) {
|
|
27
|
+
console.log(`${color}${text}${colors.reset}`);
|
|
28
|
+
}
|
|
29
|
+
function printSuccess(text) {
|
|
30
|
+
console.log(`${colors.green}${text}${colors.reset}`);
|
|
31
|
+
}
|
|
32
|
+
function printError(text) {
|
|
33
|
+
console.log(`${colors.red}${text}${colors.reset}`);
|
|
34
|
+
}
|
|
35
|
+
function printWarning(text) {
|
|
36
|
+
console.log(`${colors.yellow}${text}${colors.reset}`);
|
|
37
|
+
}
|
|
38
|
+
function printDim(text) {
|
|
39
|
+
console.log(`${colors.dim}${text}${colors.reset}`);
|
|
40
|
+
}
|
|
41
|
+
// ============ Banner ============
|
|
42
|
+
function printBanner() {
|
|
43
|
+
const width = 60;
|
|
44
|
+
const line = '─'.repeat(width);
|
|
45
|
+
print('');
|
|
46
|
+
print(`┌${line}┐`);
|
|
47
|
+
print(`│${' '.repeat(width)}│`);
|
|
48
|
+
print(`│${colors.bright}${colors.cyan} ContextForge MCP Server Setup Wizard${colors.reset}${' '.repeat(17)}│`);
|
|
49
|
+
print(`│${' '.repeat(width)}│`);
|
|
50
|
+
print(`└${line}┘`);
|
|
51
|
+
print('');
|
|
52
|
+
}
|
|
53
|
+
// ============ Check existing config ============
|
|
54
|
+
function getClaudeConfigPath() {
|
|
55
|
+
const home = homedir();
|
|
56
|
+
// Check platform-specific paths
|
|
57
|
+
if (process.platform === 'darwin') {
|
|
58
|
+
return join(home, 'Library', 'Application Support', 'Claude', 'claude_desktop_config.json');
|
|
59
|
+
}
|
|
60
|
+
else if (process.platform === 'win32') {
|
|
61
|
+
return join(home, 'AppData', 'Roaming', 'Claude', 'claude_desktop_config.json');
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
return join(home, '.config', 'claude', 'claude_desktop_config.json');
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
function checkExistingConfig() {
|
|
68
|
+
const configPath = getClaudeConfigPath();
|
|
69
|
+
if (!existsSync(configPath)) {
|
|
70
|
+
return { exists: false, hasContextForge: false, configPath };
|
|
71
|
+
}
|
|
72
|
+
try {
|
|
73
|
+
const config = JSON.parse(readFileSync(configPath, 'utf-8'));
|
|
74
|
+
const hasContextForge = config?.mcpServers?.contextforge !== undefined;
|
|
75
|
+
return { exists: true, hasContextForge, configPath };
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
return { exists: true, hasContextForge: false, configPath };
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function checkClaudeCLI() {
|
|
82
|
+
try {
|
|
83
|
+
execSync('claude --version', { stdio: 'pipe' });
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// ============ Setup Flow ============
|
|
91
|
+
async function askQuestion(rl, question) {
|
|
92
|
+
return new Promise((resolve) => {
|
|
93
|
+
rl.question(question, (answer) => {
|
|
94
|
+
resolve(answer.trim());
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
async function runSetup() {
|
|
99
|
+
const rl = readline.createInterface({
|
|
100
|
+
input: process.stdin,
|
|
101
|
+
output: process.stdout,
|
|
102
|
+
});
|
|
103
|
+
printBanner();
|
|
104
|
+
print(`Welcome to ContextForge! This wizard will help you set up`);
|
|
105
|
+
print(`your MCP server for the first time.`);
|
|
106
|
+
print('');
|
|
107
|
+
print(`You'll need:`);
|
|
108
|
+
print(` ${colors.cyan}•${colors.reset} Your ContextForge API key`);
|
|
109
|
+
print(` ${colors.cyan}•${colors.reset} An internet connection`);
|
|
110
|
+
print('');
|
|
111
|
+
printDim(`Don't have an API key yet?`);
|
|
112
|
+
print(`Get one free at: ${colors.cyan}https://contextforge.dev/dashboard/api-keys${colors.reset}`);
|
|
113
|
+
print('');
|
|
114
|
+
print('─'.repeat(60));
|
|
115
|
+
print('');
|
|
116
|
+
// Check existing configuration
|
|
117
|
+
const configStatus = checkExistingConfig();
|
|
118
|
+
const hasClaudeCLI = checkClaudeCLI();
|
|
119
|
+
if (configStatus.hasContextForge) {
|
|
120
|
+
printWarning('Existing ContextForge configuration found.');
|
|
121
|
+
const overwrite = await askQuestion(rl, `Do you want to overwrite it? (y/N): `);
|
|
122
|
+
if (overwrite.toLowerCase() !== 'y' && overwrite.toLowerCase() !== 'yes') {
|
|
123
|
+
print('');
|
|
124
|
+
printDim('Setup cancelled. Your existing configuration was preserved.');
|
|
125
|
+
rl.close();
|
|
126
|
+
process.exit(0);
|
|
127
|
+
}
|
|
128
|
+
print('');
|
|
129
|
+
}
|
|
130
|
+
else if (!configStatus.exists) {
|
|
131
|
+
printDim('No existing ContextForge configuration found. Running setup...');
|
|
132
|
+
print('');
|
|
133
|
+
}
|
|
134
|
+
// Ask for API key
|
|
135
|
+
const apiKey = await askQuestion(rl, `Enter your ContextForge API key: `);
|
|
136
|
+
if (!apiKey) {
|
|
137
|
+
print('');
|
|
138
|
+
printError('API key is required. Setup cancelled.');
|
|
139
|
+
rl.close();
|
|
140
|
+
process.exit(1);
|
|
141
|
+
}
|
|
142
|
+
// Validate API key format (basic check)
|
|
143
|
+
if (apiKey.length < 10) {
|
|
144
|
+
print('');
|
|
145
|
+
printError('Invalid API key format. Please check your API key and try again.');
|
|
146
|
+
rl.close();
|
|
147
|
+
process.exit(1);
|
|
148
|
+
}
|
|
149
|
+
print('');
|
|
150
|
+
printDim('Configuring ContextForge MCP...');
|
|
151
|
+
print('');
|
|
152
|
+
// Use Claude CLI if available, otherwise show manual instructions
|
|
153
|
+
if (hasClaudeCLI) {
|
|
154
|
+
try {
|
|
155
|
+
// Run claude mcp add command
|
|
156
|
+
const command = `claude mcp add contextforge -s user -e CONTEXTFORGE_API_KEY=${apiKey} -- contextforge-mcp`;
|
|
157
|
+
execSync(command, { stdio: 'inherit' });
|
|
158
|
+
print('');
|
|
159
|
+
print('─'.repeat(60));
|
|
160
|
+
print('');
|
|
161
|
+
printSuccess('ContextForge MCP configured successfully!');
|
|
162
|
+
print('');
|
|
163
|
+
print(`${colors.bright}Next steps:${colors.reset}`);
|
|
164
|
+
print(` 1. Restart Claude Code (or open a new terminal)`);
|
|
165
|
+
print(` 2. Try: ${colors.cyan}"save to memory that I just set up ContextForge"${colors.reset}`);
|
|
166
|
+
print(` 3. Then: ${colors.cyan}"what did I save to memory?"${colors.reset}`);
|
|
167
|
+
print('');
|
|
168
|
+
print(`${colors.dim}Documentation: https://contextforge.dev/docs${colors.reset}`);
|
|
169
|
+
print('');
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
print('');
|
|
173
|
+
printError('Failed to configure using Claude CLI.');
|
|
174
|
+
print('');
|
|
175
|
+
printManualInstructions(apiKey);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
printWarning('Claude CLI not found.');
|
|
180
|
+
print('');
|
|
181
|
+
printManualInstructions(apiKey);
|
|
182
|
+
}
|
|
183
|
+
rl.close();
|
|
184
|
+
}
|
|
185
|
+
function printManualInstructions(apiKey) {
|
|
186
|
+
print(`${colors.bright}Manual Setup Instructions:${colors.reset}`);
|
|
187
|
+
print('');
|
|
188
|
+
print(`${colors.cyan}Option 1: Using Claude CLI${colors.reset}`);
|
|
189
|
+
print(`First install Claude CLI, then run:`);
|
|
190
|
+
print('');
|
|
191
|
+
printDim(` claude mcp add contextforge -s user -e CONTEXTFORGE_API_KEY=${apiKey} -- contextforge-mcp`);
|
|
192
|
+
print('');
|
|
193
|
+
print(`${colors.cyan}Option 2: Edit config manually${colors.reset}`);
|
|
194
|
+
print(`Add to your claude_desktop_config.json:`);
|
|
195
|
+
print('');
|
|
196
|
+
const configSnippet = {
|
|
197
|
+
mcpServers: {
|
|
198
|
+
contextforge: {
|
|
199
|
+
command: 'contextforge-mcp',
|
|
200
|
+
env: {
|
|
201
|
+
CONTEXTFORGE_API_KEY: apiKey
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
printDim(JSON.stringify(configSnippet, null, 2));
|
|
207
|
+
print('');
|
|
208
|
+
const configPath = getClaudeConfigPath();
|
|
209
|
+
printDim(`Config location: ${configPath}`);
|
|
210
|
+
print('');
|
|
211
|
+
print(`${colors.dim}Documentation: https://contextforge.dev/docs/mcp-native${colors.reset}`);
|
|
212
|
+
print('');
|
|
213
|
+
}
|
|
214
|
+
// ============ Verify Command ============
|
|
215
|
+
async function runVerify() {
|
|
216
|
+
printBanner();
|
|
217
|
+
print(`Checking ContextForge configuration...`);
|
|
218
|
+
print('');
|
|
219
|
+
const configStatus = checkExistingConfig();
|
|
220
|
+
const hasClaudeCLI = checkClaudeCLI();
|
|
221
|
+
print(`${colors.cyan}Claude CLI:${colors.reset} ${hasClaudeCLI ? colors.green + 'Found' : colors.yellow + 'Not found'}${colors.reset}`);
|
|
222
|
+
print(`${colors.cyan}Config file:${colors.reset} ${configStatus.exists ? colors.green + 'Found' : colors.yellow + 'Not found'}${colors.reset}`);
|
|
223
|
+
print(`${colors.cyan}ContextForge:${colors.reset} ${configStatus.hasContextForge ? colors.green + 'Configured' : colors.yellow + 'Not configured'}${colors.reset}`);
|
|
224
|
+
print('');
|
|
225
|
+
if (configStatus.hasContextForge) {
|
|
226
|
+
printSuccess('ContextForge MCP is configured and ready!');
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
printWarning('ContextForge MCP is not configured.');
|
|
230
|
+
print(`Run ${colors.cyan}npx contextforge-setup${colors.reset} to configure.`);
|
|
231
|
+
}
|
|
232
|
+
print('');
|
|
233
|
+
}
|
|
234
|
+
// ============ Main ============
|
|
235
|
+
const args = process.argv.slice(2);
|
|
236
|
+
if (args.includes('--verify') || args.includes('-v')) {
|
|
237
|
+
runVerify();
|
|
238
|
+
}
|
|
239
|
+
else if (args.includes('--help') || args.includes('-h')) {
|
|
240
|
+
printBanner();
|
|
241
|
+
print(`${colors.bright}Usage:${colors.reset}`);
|
|
242
|
+
print(` npx contextforge-setup Run the setup wizard`);
|
|
243
|
+
print(` npx contextforge-setup --verify Check current configuration`);
|
|
244
|
+
print(` npx contextforge-setup --help Show this help`);
|
|
245
|
+
print('');
|
|
246
|
+
print(`${colors.bright}More info:${colors.reset}`);
|
|
247
|
+
print(` https://contextforge.dev/docs`);
|
|
248
|
+
print('');
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
runSetup();
|
|
252
|
+
}
|
|
253
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "contextforge-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.22",
|
|
4
4
|
"description": "Intelligent contextual memory MCP server for developers",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
8
|
"bin": {
|
|
9
|
-
"contextforge-mcp": "dist/index.js"
|
|
9
|
+
"contextforge-mcp": "dist/index.js",
|
|
10
|
+
"contextforge-setup": "dist/setup.js"
|
|
10
11
|
},
|
|
11
12
|
"files": [
|
|
12
13
|
"dist",
|