@graphite-atlas/mcp-server 1.2.1 → 1.2.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/client.js CHANGED
@@ -12,7 +12,7 @@ export class GraphiteAtlasClient {
12
12
  headers: {
13
13
  Authorization: `Bearer ${config.accessToken}`,
14
14
  "Content-Type": "application/json",
15
- "User-Agent": "graphite-atlas-mcp/1.2.1",
15
+ "User-Agent": "graphite-atlas-mcp/1.2.3",
16
16
  "X-Graphite-Source": "mcp",
17
17
  },
18
18
  timeout: 30000, // 30 second timeout
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAoCrC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,EAAE,CA6GvE"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAoCrC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,EAAE,CA4GvE"}
@@ -43,17 +43,17 @@ The atlas_id is automatically injected as the $atlasId parameter — use it in y
43
43
 
44
44
  Only read-only queries are allowed (MATCH, RETURN, WITH, WHERE, ORDER BY, LIMIT, UNWIND, OPTIONAL MATCH). Write operations (CREATE, MERGE, DELETE, SET) are blocked.
45
45
 
46
- GRAPH SCHEMA:
46
+ CYPHER SCHEMA:
47
47
 
48
- Node labels:
49
- - :Point — all data nodes (people, processes, systems, etc.)
50
- - :Atlas — the atlas container node (one per atlas)
51
- - :Class — schema/ontology type definitions (internal)
48
+ Cypher labels (used in MATCH patterns):
49
+ - :Point — all points in the atlas (people, processes, systems, etc.)
50
+ - :Atlas — the atlas container (one per atlas)
51
+ - :Class — ontology type definitions (internal, rarely needed)
52
52
 
53
- Edge labels:
54
- - :PATH — all user-created relationships between points (has_role, reports_to, has_step, etc.). The relationship type is stored in the 'type' property on the edge, NOT as a separate label.
55
- - :CONTAINS — structural edge from Atlas Point (every point is linked to its atlas)
56
- - :INSTANCE_OF — links a Point to its Class definition (internal)
53
+ Cypher relationship types (used in path patterns):
54
+ - :PATH — all paths between points (has_role, reports_to, has_step, etc.). The specific path type is stored in the 'name' property (not 'type'), NOT as a separate Cypher type.
55
+ - :CONTAINS — structural link from Atlas to its Points (every point belongs to an atlas)
56
+ - :INSTANCE_OF — links a Point to its ontology Class (internal, rarely needed)
57
57
 
58
58
  Point properties:
59
59
  - id (string) — unique identifier
@@ -70,20 +70,19 @@ Point properties:
70
70
  - updatedAt (string) — ISO timestamp
71
71
  - deletedAt (string, optional) — soft delete timestamp (filter with WHERE p.deletedAt IS NULL)
72
72
 
73
- PATH (edge) properties:
73
+ Path properties:
74
74
  - id (string) — unique identifier
75
- - type (string) — relationship type from ontology (has_role, reports_to, followed_by, etc.)
76
- - name (string) — same as type
77
- - description (string, optional) — context for this specific relationship
75
+ - name (string) — path type from ontology (has_role, reports_to, followed_by, etc.). NOTE: the path type is in 'name', not 'type'.
76
+ - description (string, optional) — context for this specific path
78
77
  - properties (JSON string, optional) — arbitrary key-value pairs
79
78
  - createdAt, updatedAt, deletedAt — same as points
80
79
 
81
80
  IMPORTANT PATTERNS:
82
- - Always filter by atlasId: MATCH (p:Point {atlasId: $atlasId})
81
+ - Always scope to the atlas: MATCH (p:Point {atlasId: $atlasId})
83
82
  - Always exclude soft-deleted: WHERE p.deletedAt IS NULL
84
- - Filter edges by type: WHERE r.type = 'has_role'
83
+ - Filter paths by type: WHERE r.name = 'has_role'
85
84
  - The standard traversal: MATCH (a:Atlas {id: $atlasId})-[:CONTAINS]->(p:Point)
86
- - No result size limit is enforced server-side — use LIMIT in your queries to avoid huge result sets
85
+ - No result size limit is enforced server-side — use LIMIT in your queries to avoid large result sets
87
86
 
88
87
  Example queries:
89
88
 
@@ -91,10 +90,10 @@ Count points by type:
91
90
  MATCH (p:Point {atlasId: $atlasId}) WHERE p.deletedAt IS NULL RETURN p.type as type, count(p) as count ORDER BY count DESC
92
91
 
93
92
  Find people and their roles:
94
- MATCH (p:Point {atlasId: $atlasId, type: 'Person'})-[r:PATH {type: 'has_role'}]->(pos:Point {type: 'Position'}) WHERE p.deletedAt IS NULL RETURN p.name as person, pos.name as role
93
+ MATCH (p:Point {atlasId: $atlasId, type: 'Person'})-[r:PATH {name: 'has_role'}]->(pos:Point {type: 'Position'}) WHERE p.deletedAt IS NULL RETURN p.name as person, pos.name as role
95
94
 
96
95
  Walk a process step by step:
97
- MATCH (proc:Point {atlasId: $atlasId, type: 'Process', name: 'Monthly Close'})-[h:PATH {type: 'has_step'}]->(step:Point) WHERE step.deletedAt IS NULL OPTIONAL MATCH (step)-[f:PATH {type: 'followed_by'}]->(next:Point) RETURN step.name as step, next.name as next_step
96
+ MATCH (proc:Point {atlasId: $atlasId, type: 'Process', name: 'Monthly Close'})-[h:PATH {name: 'has_step'}]->(step:Point) WHERE step.deletedAt IS NULL OPTIONAL MATCH (step)-[f:PATH {name: 'followed_by'}]->(next:Point) RETURN step.name as step, next.name as next_step
98
97
 
99
98
  Multi-hop traversal:
100
99
  MATCH path = (p:Point {atlasId: $atlasId, type: 'Person'})-[:PATH*1..3]-(connected:Point) WHERE p.deletedAt IS NULL AND connected.deletedAt IS NULL RETURN p.name, [n IN nodes(path) | n.name] as chain LIMIT 20`,
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,oBAAoB,GAAG;IAC3B,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;CACV,CAAC;AAEF,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,KAAK,MAAM,EAAE,IAAI,oBAAoB,EAAE,CAAC;QACtC,+EAA+E;QAC/E,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,uCAAuC,EAAE,qFAAqF;aACvI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAA2B;IAC1D,OAAO;QACL;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iNA4D8L;YAC3M,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uBAAuB;qBACrC;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yCAAyC;qBACvD;iBACF;gBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;aAChC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI;gBAChB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;oBACtB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;iBAClB,CAAC,CAAC;gBAEH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE/C,qBAAqB;gBACrB,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACtB,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,UAAU,CAAC,MAAM;qBACzB,CAAC;gBACJ,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACjD,KAAK;oBACL,UAAU,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;iBAClC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAC9C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBACnD,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tools/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,oBAAoB,GAAG;IAC3B,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;CACV,CAAC;AAEF,SAAS,gBAAgB,CAAC,KAAa;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,KAAK,MAAM,EAAE,IAAI,oBAAoB,EAAE,CAAC;QACtC,+EAA+E;QAC/E,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,uCAAuC,EAAE,qFAAqF;aACvI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAA2B;IAC1D,OAAO;QACL;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iNA2D8L;YAC3M,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uBAAuB;qBACrC;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yCAAyC;qBACvD;iBACF;gBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;aAChC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI;gBAChB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;oBACtB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;iBAClB,CAAC,CAAC;gBAEH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE/C,qBAAqB;gBACrB,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACtB,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,UAAU,CAAC,MAAM;qBACzB,CAAC;gBACJ,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACjD,KAAK;oBACL,UAAU,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;iBAClC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAC9C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBACnD,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@graphite-atlas/mcp-server",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "Model Context Protocol server for Graphite Atlas",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",