@graphite-atlas/mcp-server 1.0.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/EXAMPLES.md +501 -0
- package/LICENSE +21 -0
- package/README.md +440 -0
- package/dist/client.d.ts +272 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +335 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +124 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/analytics.d.ts +9 -0
- package/dist/tools/analytics.d.ts.map +1 -0
- package/dist/tools/analytics.js +374 -0
- package/dist/tools/analytics.js.map +1 -0
- package/dist/tools/atlases.d.ts +7 -0
- package/dist/tools/atlases.d.ts.map +1 -0
- package/dist/tools/atlases.js +132 -0
- package/dist/tools/atlases.js.map +1 -0
- package/dist/tools/batch.d.ts +10 -0
- package/dist/tools/batch.d.ts.map +1 -0
- package/dist/tools/batch.js +154 -0
- package/dist/tools/batch.js.map +1 -0
- package/dist/tools/brain-dump.d.ts +7 -0
- package/dist/tools/brain-dump.d.ts.map +1 -0
- package/dist/tools/brain-dump.js +98 -0
- package/dist/tools/brain-dump.js.map +1 -0
- package/dist/tools/index.d.ts +18 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +29 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/mage.d.ts +10 -0
- package/dist/tools/mage.d.ts.map +1 -0
- package/dist/tools/mage.js +531 -0
- package/dist/tools/mage.js.map +1 -0
- package/dist/tools/paths.d.ts +7 -0
- package/dist/tools/paths.d.ts.map +1 -0
- package/dist/tools/paths.js +245 -0
- package/dist/tools/paths.js.map +1 -0
- package/dist/tools/points.d.ts +7 -0
- package/dist/tools/points.d.ts.map +1 -0
- package/dist/tools/points.js +225 -0
- package/dist/tools/points.js.map +1 -0
- package/dist/tools/validation.d.ts +9 -0
- package/dist/tools/validation.d.ts.map +1 -0
- package/dist/tools/validation.js +323 -0
- package/dist/tools/validation.js.map +1 -0
- package/dist/tools/views.d.ts +9 -0
- package/dist/tools/views.d.ts.map +1 -0
- package/dist/tools/views.js +335 -0
- package/dist/tools/views.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graphite Atlas API Client
|
|
3
|
+
*
|
|
4
|
+
* Handles all HTTP communication with the Graphite Atlas API.
|
|
5
|
+
*/
|
|
6
|
+
import axios from 'axios';
|
|
7
|
+
export class GraphiteAtlasClient {
|
|
8
|
+
axios;
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.axios = axios.create({
|
|
11
|
+
baseURL: config.apiUrl,
|
|
12
|
+
headers: {
|
|
13
|
+
'Authorization': `Bearer ${config.accessToken}`,
|
|
14
|
+
'Content-Type': 'application/json',
|
|
15
|
+
},
|
|
16
|
+
timeout: 30000, // 30 second timeout
|
|
17
|
+
});
|
|
18
|
+
// Add response interceptor for better error handling
|
|
19
|
+
this.axios.interceptors.response.use((response) => response, (error) => {
|
|
20
|
+
if (error.response) {
|
|
21
|
+
// Server responded with error status
|
|
22
|
+
const data = error.response.data;
|
|
23
|
+
const message = data?.error?.message || data?.message || error.message;
|
|
24
|
+
throw new Error(`API Error (${error.response.status}): ${message}`);
|
|
25
|
+
}
|
|
26
|
+
else if (error.request) {
|
|
27
|
+
// Request made but no response
|
|
28
|
+
throw new Error(`Network Error: No response from server`);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
// Something else went wrong
|
|
32
|
+
throw new Error(`Request Error: ${error.message}`);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Health check to verify API connectivity
|
|
38
|
+
*/
|
|
39
|
+
async healthCheck() {
|
|
40
|
+
await this.axios.get('/api/health');
|
|
41
|
+
}
|
|
42
|
+
// ========================================================================
|
|
43
|
+
// Atlas Operations
|
|
44
|
+
// ========================================================================
|
|
45
|
+
/**
|
|
46
|
+
* List all atlases for the authenticated user
|
|
47
|
+
*/
|
|
48
|
+
async listAtlases() {
|
|
49
|
+
const response = await this.axios.get('/api/atlas');
|
|
50
|
+
return response.data.data || response.data;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Get a specific atlas by ID
|
|
54
|
+
*/
|
|
55
|
+
async getAtlas(atlasId) {
|
|
56
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}`);
|
|
57
|
+
return response.data.data || response.data;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Create a new atlas
|
|
61
|
+
*/
|
|
62
|
+
async createAtlas(params) {
|
|
63
|
+
const response = await this.axios.post('/api/atlas', params);
|
|
64
|
+
return response.data.data || response.data;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Update an existing atlas
|
|
68
|
+
*/
|
|
69
|
+
async updateAtlas(atlasId, params) {
|
|
70
|
+
const response = await this.axios.patch(`/api/atlas/${atlasId}`, params);
|
|
71
|
+
return response.data.data || response.data;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Delete an atlas
|
|
75
|
+
*/
|
|
76
|
+
async deleteAtlas(atlasId) {
|
|
77
|
+
await this.axios.delete(`/api/atlas/${atlasId}`);
|
|
78
|
+
}
|
|
79
|
+
// ========================================================================
|
|
80
|
+
// Point (Node) Operations
|
|
81
|
+
// ========================================================================
|
|
82
|
+
/**
|
|
83
|
+
* List all points in an atlas
|
|
84
|
+
*/
|
|
85
|
+
async listPoints(atlasId) {
|
|
86
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/graph/points`);
|
|
87
|
+
// Response format: { success: true, data: { points: Point[], total: number } }
|
|
88
|
+
const data = response.data.data || response.data;
|
|
89
|
+
return data.points || [];
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Get a specific point by searching all points
|
|
93
|
+
* Note: Backend doesn't have a single-point GET endpoint, so we filter the list
|
|
94
|
+
*/
|
|
95
|
+
async getPoint(atlasId, pointId) {
|
|
96
|
+
const points = await this.listPoints(atlasId);
|
|
97
|
+
const point = points.find(p => p.id === pointId);
|
|
98
|
+
if (!point) {
|
|
99
|
+
throw new Error(`Point ${pointId} not found`);
|
|
100
|
+
}
|
|
101
|
+
return point;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Create a new point
|
|
105
|
+
*/
|
|
106
|
+
async createPoint(atlasId, params) {
|
|
107
|
+
// Generate unique ID to prevent collisions for points with same name
|
|
108
|
+
const uniqueId = `${params.name}-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
109
|
+
// Backend expects { points: [...] } array format
|
|
110
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/graph/points`, {
|
|
111
|
+
points: [{
|
|
112
|
+
id: uniqueId, // Unique ID to prevent collisions
|
|
113
|
+
name: params.name,
|
|
114
|
+
type: params.type,
|
|
115
|
+
...(params.description && { description: params.description }),
|
|
116
|
+
...params.properties
|
|
117
|
+
}]
|
|
118
|
+
});
|
|
119
|
+
// Extract first point from response
|
|
120
|
+
const data = response.data.data || response.data;
|
|
121
|
+
return data.points?.[0] || data;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Update a point
|
|
125
|
+
*/
|
|
126
|
+
async updatePoint(atlasId, pointId, params) {
|
|
127
|
+
const response = await this.axios.put(`/api/atlas/${atlasId}/graph/points/${pointId}`, params);
|
|
128
|
+
return response.data.data || response.data;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Delete a point
|
|
132
|
+
*/
|
|
133
|
+
async deletePoint(atlasId, pointId) {
|
|
134
|
+
await this.axios.delete(`/api/atlas/${atlasId}/graph/points/${pointId}`);
|
|
135
|
+
}
|
|
136
|
+
// ========================================================================
|
|
137
|
+
// Path (Edge) Operations
|
|
138
|
+
// ========================================================================
|
|
139
|
+
/**
|
|
140
|
+
* List all paths in an atlas
|
|
141
|
+
*/
|
|
142
|
+
async listPaths(atlasId) {
|
|
143
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/graph/paths`);
|
|
144
|
+
// Response format: { success: true, data: { paths: Path[], total: number } }
|
|
145
|
+
const data = response.data.data || response.data;
|
|
146
|
+
return data.paths || [];
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Get a specific path by searching all paths
|
|
150
|
+
* Note: Backend doesn't have a single-path GET endpoint, so we filter the list
|
|
151
|
+
*/
|
|
152
|
+
async getPath(atlasId, pathId) {
|
|
153
|
+
const paths = await this.listPaths(atlasId);
|
|
154
|
+
const path = paths.find(p => p.id === pathId);
|
|
155
|
+
if (!path) {
|
|
156
|
+
throw new Error(`Path ${pathId} not found`);
|
|
157
|
+
}
|
|
158
|
+
return path;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Create a new path
|
|
162
|
+
*/
|
|
163
|
+
async createPath(atlasId, params) {
|
|
164
|
+
// Generate unique ID to prevent collisions for paths with same name
|
|
165
|
+
const uniqueId = `${params.name}-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
166
|
+
// Backend expects { paths: [...] } array format
|
|
167
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/graph/paths`, {
|
|
168
|
+
paths: [{
|
|
169
|
+
id: uniqueId, // Unique ID to prevent collisions
|
|
170
|
+
name: params.name,
|
|
171
|
+
source: params.sourceId,
|
|
172
|
+
target: params.targetId,
|
|
173
|
+
direction: params.type, // Map type to direction field
|
|
174
|
+
...(params.description && { description: params.description }),
|
|
175
|
+
...params.properties
|
|
176
|
+
}]
|
|
177
|
+
});
|
|
178
|
+
// Extract first path from response
|
|
179
|
+
const data = response.data.data || response.data;
|
|
180
|
+
return data.paths?.[0] || data;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Update a path
|
|
184
|
+
*/
|
|
185
|
+
async updatePath(atlasId, pathId, params) {
|
|
186
|
+
const response = await this.axios.put(`/api/atlas/${atlasId}/graph/paths/${pathId}`, params);
|
|
187
|
+
return response.data.data || response.data;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Delete a path
|
|
191
|
+
*/
|
|
192
|
+
async deletePath(atlasId, pathId) {
|
|
193
|
+
await this.axios.delete(`/api/atlas/${atlasId}/graph/paths/${pathId}`);
|
|
194
|
+
}
|
|
195
|
+
// ========================================================================
|
|
196
|
+
// Batch Operations
|
|
197
|
+
// ========================================================================
|
|
198
|
+
/**
|
|
199
|
+
* Batch create points and paths with name-based references
|
|
200
|
+
* Reduces multiple API calls to a single atomic operation
|
|
201
|
+
*/
|
|
202
|
+
async batchCreateGraph(atlasId, params) {
|
|
203
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/graph/batch`, {
|
|
204
|
+
points: params.points || [],
|
|
205
|
+
paths: params.paths || [],
|
|
206
|
+
});
|
|
207
|
+
return response.data.data || response.data;
|
|
208
|
+
}
|
|
209
|
+
// ========================================================================
|
|
210
|
+
// Advanced Query Operations
|
|
211
|
+
// ========================================================================
|
|
212
|
+
/**
|
|
213
|
+
* Execute a read-only Cypher query
|
|
214
|
+
* Enables complex graph traversals in a single call
|
|
215
|
+
*/
|
|
216
|
+
async queryCypher(atlasId, params) {
|
|
217
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/graph/query/cypher`, {
|
|
218
|
+
query: params.query,
|
|
219
|
+
parameters: params.parameters || {},
|
|
220
|
+
});
|
|
221
|
+
return response.data.results || response.data.data || response.data;
|
|
222
|
+
}
|
|
223
|
+
// ========================================================================
|
|
224
|
+
// Brain Dump (LLM) Operations
|
|
225
|
+
// ========================================================================
|
|
226
|
+
/**
|
|
227
|
+
* Execute a brain dump to generate graph from text
|
|
228
|
+
*/
|
|
229
|
+
async brainDump(atlasId, params) {
|
|
230
|
+
const response = await this.axios.post(`/api/llm/brain-dump`, {
|
|
231
|
+
atlasId,
|
|
232
|
+
...params,
|
|
233
|
+
});
|
|
234
|
+
return response.data.data || response.data;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Get brain dump operation status
|
|
238
|
+
*/
|
|
239
|
+
async getBrainDumpStatus(operationId) {
|
|
240
|
+
const response = await this.axios.get(`/api/llm/operations/${operationId}`);
|
|
241
|
+
return response.data.data || response.data;
|
|
242
|
+
}
|
|
243
|
+
// ========================================================================
|
|
244
|
+
// Search Operations
|
|
245
|
+
// ========================================================================
|
|
246
|
+
/**
|
|
247
|
+
* Search for points by name or type
|
|
248
|
+
*/
|
|
249
|
+
async searchPoints(atlasId, query) {
|
|
250
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/graph/points`, {
|
|
251
|
+
params: { search: query },
|
|
252
|
+
});
|
|
253
|
+
// Response format: { success: true, data: { points: Point[], total: number } }
|
|
254
|
+
const data = response.data.data || response.data;
|
|
255
|
+
return data.points || [];
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Search for paths by name or type
|
|
259
|
+
*/
|
|
260
|
+
async searchPaths(atlasId, query) {
|
|
261
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/graph/paths`, {
|
|
262
|
+
params: { search: query },
|
|
263
|
+
});
|
|
264
|
+
// Response format: { success: true, data: { paths: Path[], total: number } }
|
|
265
|
+
const data = response.data.data || response.data;
|
|
266
|
+
return data.paths || [];
|
|
267
|
+
}
|
|
268
|
+
// ========================================================================
|
|
269
|
+
// View Operations
|
|
270
|
+
// ========================================================================
|
|
271
|
+
/**
|
|
272
|
+
* List all views in an atlas
|
|
273
|
+
*/
|
|
274
|
+
async listViews(atlasId) {
|
|
275
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/views`);
|
|
276
|
+
const data = response.data.data || response.data;
|
|
277
|
+
return data.views || [];
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Get a specific view by ID
|
|
281
|
+
*/
|
|
282
|
+
async getView(atlasId, viewId) {
|
|
283
|
+
const response = await this.axios.get(`/api/atlas/${atlasId}/views/${viewId}`);
|
|
284
|
+
const data = response.data.data || response.data;
|
|
285
|
+
return data.view || data;
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Create a new view
|
|
289
|
+
*/
|
|
290
|
+
async createView(atlasId, params) {
|
|
291
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/views`, params);
|
|
292
|
+
const data = response.data.data || response.data;
|
|
293
|
+
return data.view || data;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Update an existing view
|
|
297
|
+
*/
|
|
298
|
+
async updateView(atlasId, viewId, params) {
|
|
299
|
+
const response = await this.axios.patch(`/api/atlas/${atlasId}/views/${viewId}`, params);
|
|
300
|
+
const data = response.data.data || response.data;
|
|
301
|
+
return data.view || data;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Delete a view
|
|
305
|
+
*/
|
|
306
|
+
async deleteView(atlasId, viewId) {
|
|
307
|
+
await this.axios.delete(`/api/atlas/${atlasId}/views/${viewId}`);
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Toggle point visibility in a view
|
|
311
|
+
*/
|
|
312
|
+
async togglePointVisibility(atlasId, viewId, pointId, visible) {
|
|
313
|
+
const response = await this.axios.patch(`/api/atlas/${atlasId}/views/${viewId}/points/${pointId}`, { visible });
|
|
314
|
+
const data = response.data.data || response.data;
|
|
315
|
+
return data.visibility || {};
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Add point to view
|
|
319
|
+
*/
|
|
320
|
+
async addPointToView(atlasId, viewId, pointId) {
|
|
321
|
+
const response = await this.axios.post(`/api/atlas/${atlasId}/views/${viewId}/points`, { pointIds: [pointId] } // API expects array
|
|
322
|
+
);
|
|
323
|
+
const data = response.data.data || response.data;
|
|
324
|
+
return data.pointIds || [];
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Remove point from view
|
|
328
|
+
*/
|
|
329
|
+
async removePointFromView(atlasId, viewId, pointId) {
|
|
330
|
+
const response = await this.axios.delete(`/api/atlas/${atlasId}/views/${viewId}/points/${pointId}`);
|
|
331
|
+
const data = response.data.data || response.data;
|
|
332
|
+
return data.pointIds || [];
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Graphite Atlas MCP Server
|
|
4
|
+
*
|
|
5
|
+
* Implements Model Context Protocol to expose Graphite Atlas functionality
|
|
6
|
+
* to Claude and other MCP clients.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* npx @graphite-atlas/mcp-server
|
|
10
|
+
*
|
|
11
|
+
* Environment Variables:
|
|
12
|
+
* GRAPHITE_API_URL - Graphite Atlas API URL (default: https://graphiteatlas.com)
|
|
13
|
+
* GRAPHITE_ACCESS_TOKEN - OAuth access token for authentication
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;GAYG"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Graphite Atlas MCP Server
|
|
4
|
+
*
|
|
5
|
+
* Implements Model Context Protocol to expose Graphite Atlas functionality
|
|
6
|
+
* to Claude and other MCP clients.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* npx @graphite-atlas/mcp-server
|
|
10
|
+
*
|
|
11
|
+
* Environment Variables:
|
|
12
|
+
* GRAPHITE_API_URL - Graphite Atlas API URL (default: https://graphiteatlas.com)
|
|
13
|
+
* GRAPHITE_ACCESS_TOKEN - OAuth access token for authentication
|
|
14
|
+
*/
|
|
15
|
+
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
16
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
17
|
+
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
18
|
+
import { GraphiteAtlasClient } from './client.js';
|
|
19
|
+
import { setupTools } from './tools/index.js';
|
|
20
|
+
// Server configuration
|
|
21
|
+
const SERVER_NAME = 'graphite-atlas';
|
|
22
|
+
const SERVER_VERSION = '1.0.0';
|
|
23
|
+
/**
|
|
24
|
+
* Main server initialization
|
|
25
|
+
*/
|
|
26
|
+
async function main() {
|
|
27
|
+
// Get configuration from environment
|
|
28
|
+
const apiUrl = process.env.GRAPHITE_API_URL || 'https://graphiteatlas.com';
|
|
29
|
+
const accessToken = process.env.GRAPHITE_ACCESS_TOKEN;
|
|
30
|
+
if (!accessToken) {
|
|
31
|
+
console.error('Error: GRAPHITE_ACCESS_TOKEN environment variable is required');
|
|
32
|
+
console.error('');
|
|
33
|
+
console.error('Get your access token by:');
|
|
34
|
+
console.error('1. Creating an OAuth app at https://graphiteatlas.com/settings/api');
|
|
35
|
+
console.error('2. Completing OAuth flow to get an access token');
|
|
36
|
+
console.error('');
|
|
37
|
+
console.error('See README.md for detailed setup instructions');
|
|
38
|
+
process.exit(1);
|
|
39
|
+
}
|
|
40
|
+
// Initialize Graphite Atlas API client
|
|
41
|
+
const client = new GraphiteAtlasClient({
|
|
42
|
+
apiUrl,
|
|
43
|
+
accessToken,
|
|
44
|
+
});
|
|
45
|
+
// Verify connection
|
|
46
|
+
try {
|
|
47
|
+
await client.healthCheck();
|
|
48
|
+
console.error(`Connected to Graphite Atlas API at ${apiUrl}`);
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
console.error('Failed to connect to Graphite Atlas API:', error);
|
|
52
|
+
process.exit(1);
|
|
53
|
+
}
|
|
54
|
+
// Create MCP server
|
|
55
|
+
const server = new Server({
|
|
56
|
+
name: SERVER_NAME,
|
|
57
|
+
version: SERVER_VERSION,
|
|
58
|
+
}, {
|
|
59
|
+
capabilities: {
|
|
60
|
+
tools: {},
|
|
61
|
+
},
|
|
62
|
+
});
|
|
63
|
+
// Set up tools (atlases, nodes, edges, etc.)
|
|
64
|
+
const tools = setupTools(client);
|
|
65
|
+
// Handle tool listing
|
|
66
|
+
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
67
|
+
return {
|
|
68
|
+
tools: tools.map((tool) => ({
|
|
69
|
+
name: tool.name,
|
|
70
|
+
description: tool.description,
|
|
71
|
+
inputSchema: tool.inputSchema,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
});
|
|
75
|
+
// Handle tool execution
|
|
76
|
+
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
77
|
+
console.error(`[MCP] Tool called: ${request.params.name}`);
|
|
78
|
+
console.error(`[MCP] Arguments:`, JSON.stringify(request.params.arguments, null, 2));
|
|
79
|
+
const tool = tools.find((t) => t.name === request.params.name);
|
|
80
|
+
if (!tool) {
|
|
81
|
+
console.error(`[MCP] Error: Unknown tool: ${request.params.name}`);
|
|
82
|
+
throw new Error(`Unknown tool: ${request.params.name}`);
|
|
83
|
+
}
|
|
84
|
+
try {
|
|
85
|
+
console.error(`[MCP] Executing tool: ${request.params.name}...`);
|
|
86
|
+
const startTime = Date.now();
|
|
87
|
+
const result = await tool.execute(request.params.arguments || {});
|
|
88
|
+
const duration = Date.now() - startTime;
|
|
89
|
+
console.error(`[MCP] Tool ${request.params.name} completed in ${duration}ms`);
|
|
90
|
+
return {
|
|
91
|
+
content: [
|
|
92
|
+
{
|
|
93
|
+
type: 'text',
|
|
94
|
+
text: JSON.stringify(result, null, 2),
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
101
|
+
console.error(`[MCP] Tool ${request.params.name} failed:`, errorMessage);
|
|
102
|
+
return {
|
|
103
|
+
content: [
|
|
104
|
+
{
|
|
105
|
+
type: 'text',
|
|
106
|
+
text: `Error: ${errorMessage}`,
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
isError: true,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
// Start server with stdio transport
|
|
114
|
+
const transport = new StdioServerTransport();
|
|
115
|
+
await server.connect(transport);
|
|
116
|
+
console.error(`Graphite Atlas MCP server running on stdio`);
|
|
117
|
+
console.error(`Available tools: ${tools.map((t) => t.name).join(', ')}`);
|
|
118
|
+
}
|
|
119
|
+
// Run server
|
|
120
|
+
main().catch((error) => {
|
|
121
|
+
console.error('Fatal error:', error);
|
|
122
|
+
process.exit(1);
|
|
123
|
+
});
|
|
124
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Analytics & Algorithm Tools
|
|
3
|
+
*
|
|
4
|
+
* Provides graph algorithms for analyzing structure and finding insights.
|
|
5
|
+
*/
|
|
6
|
+
import { GraphiteAtlasClient } from '../client.js';
|
|
7
|
+
import { MCPTool } from './index.js';
|
|
8
|
+
export declare function createAnalyticsTools(client: GraphiteAtlasClient): MCPTool[];
|
|
9
|
+
//# sourceMappingURL=analytics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/tools/analytics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,EAAE,CAoY3E"}
|