@graspful/mcp 0.2.4 → 0.2.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/README.md CHANGED
@@ -4,9 +4,9 @@
4
4
  [![MCP](https://img.shields.io/badge/MCP-compatible-blue)](https://modelcontextprotocol.io)
5
5
  [![License](https://img.shields.io/npm/l/@graspful/mcp)](https://github.com/willwearing/graspful/blob/main/LICENSE)
6
6
 
7
- MCP server for creating adaptive learning courses. AI agents scaffold, validate, review, and publish courses as YAML knowledge graphs.
7
+ MCP server for creating adaptive learning academies and courses. AI agents scaffold, validate, review, and publish academy manifests, course YAMLs, and brand YAMLs as a connected product.
8
8
 
9
- Part of [Graspful](https://graspful.ai) -- the agent-first adaptive learning platform. Courses are authored as two YAML files (graph structure + content), validated offline, then imported via API.
9
+ Part of [Graspful](https://graspful.ai) -- the agent-first adaptive learning platform. Academies are authored as an academy manifest plus one or more course YAMLs, then paired with a brand YAML for the learner-facing landing page.
10
10
 
11
11
  ## Quick Start
12
12
 
@@ -41,30 +41,34 @@ npx @graspful/cli register
41
41
  export GRASPFUL_API_KEY="gsk_..."
42
42
  ```
43
43
 
44
- ### 3. Build a course
44
+ ### 3. Build an academy
45
45
 
46
46
  ```
47
- graspful_scaffold_course(topic: "Your Topic", estimatedHours: 10)
47
+ graspful_create_academy(topic: "Your Topic")
48
+ → create or author the course YAMLs referenced by the manifest
49
+ graspful_scaffold_course(topic: "Your First Course", estimatedHours: 10)
48
50
  → edit the YAML
49
51
  graspful_validate(yaml: "...")
50
52
  graspful_review_course(yaml: "...")
51
- graspful_import_course(yaml: "...", org: "your-org", publish: true)
53
+ graspful_import_academy(manifestYaml: "...", courseYamls: { "courses/course.yaml": "..." }, org: "your-org", publish: true)
52
54
  ```
53
55
 
54
56
  Scaffold, fill, validate, and review work offline — no account needed. You only need to register before importing or publishing.
55
57
 
56
58
  ## Available Tools
57
59
 
58
- 10 tools. Focused and minimal -- agents degrade above 40 tools.
60
+ 12 tools. Focused and minimal -- agents degrade above 40 tools.
59
61
 
60
62
  | Tool | Description | Auth Required |
61
63
  |------|-------------|:---:|
64
+ | `graspful_create_academy` | Generate an academy plan and manifest scaffold | No |
62
65
  | `graspful_scaffold_course` | Generate a course YAML skeleton with sections, concepts, and prerequisite edges | No |
63
66
  | `graspful_fill_concept` | Add knowledge points and problem stubs to a specific concept | No |
64
67
  | `graspful_validate` | Validate any Graspful YAML against its Zod schema. Auto-detects file type | No |
65
68
  | `graspful_review_course` | Run all 10 mechanical quality checks. Returns a score with failure details | No |
66
69
  | `graspful_describe_course` | Compute course statistics without importing (concept/KP/problem counts, graph depth) | No |
67
70
  | `graspful_create_brand` | Generate brand YAML scaffold for a white-label learning site | No |
71
+ | `graspful_import_academy` | Import academy manifest + course YAMLs. Optionally publish imported courses | Yes |
68
72
  | `graspful_import_course` | Import course YAML into an organization. Creates as draft by default | Yes |
69
73
  | `graspful_publish_course` | Publish a draft course. Runs review gate first -- all 10 checks must pass | Yes |
70
74
  | `graspful_import_brand` | Import brand YAML to create white-label site config | Yes |
@@ -72,6 +76,18 @@ Scaffold, fill, validate, and review work offline — no account needed. You onl
72
76
 
73
77
  ## Tool Reference
74
78
 
79
+ ### `graspful_create_academy`
80
+
81
+ Generate an academy plan and manifest scaffold. Every Graspful product should be modeled as an academy, even if it starts with a single course.
82
+
83
+ If `courseNames` is omitted, the scaffold starts with the four default planning layers: foundations, core structures, operational flows, and applied judgment. It also returns authoring gates for the source material, learner promise, landing-page proof, graph checks, and review before publishing.
84
+
85
+ | Parameter | Type | Required | Description |
86
+ |-----------|------|:---:|-------------|
87
+ | `topic` | string | Yes | Academy topic (e.g., "PostHog TAM") |
88
+ | `courseNames` | string[] | No | Ordered course names for the manifest. Defaults to the four academy planning layers. |
89
+ | `version` | string | No | Academy version string |
90
+
75
91
  ### `graspful_scaffold_course`
76
92
 
77
93
  Generate a course YAML skeleton with sections, concepts, and prerequisite edges. Returns a minimal valid YAML structure with TODO placeholders. This is step 1 of the Graspful two-YAML workflow.
@@ -113,12 +129,12 @@ Run all 10 mechanical quality checks. Returns a score (e.g., "8/10") with detail
113
129
  2. Unique problem IDs
114
130
  3. Valid prerequisites (all refs point to real concepts)
115
131
  4. No DAG cycles
116
- 5. Minimum KPs per concept
117
- 6. Minimum problems per KP
118
- 7. Difficulty distribution (2+ levels per concept)
132
+ 5. Difficulty distribution (2+ levels per concept)
133
+ 6. Problems only assess material introduced in the lesson path
134
+ 7. Minimum problems per KP
119
135
  8. Explanation coverage (worked examples)
120
136
  9. Question deduplication (no near-duplicates at same difficulty)
121
- 10. Concept tag coverage
137
+ 10. Import dry run (graph remains valid for import)
122
138
 
123
139
  | Parameter | Type | Required | Description |
124
140
  |-----------|------|:---:|-------------|
@@ -126,6 +142,19 @@ Run all 10 mechanical quality checks. Returns a score (e.g., "8/10") with detail
126
142
 
127
143
  **Returns:** `{ passed, score, failures, warnings, stats }`
128
144
 
145
+ ### `graspful_import_academy`
146
+
147
+ Import academy manifest YAML plus the course YAMLs it references.
148
+
149
+ | Parameter | Type | Required | Description |
150
+ |-----------|------|:---:|-------------|
151
+ | `manifestYaml` | string | Yes | Full academy manifest YAML string |
152
+ | `courseYamls` | object | Yes | Map of manifest file paths to full course YAML strings |
153
+ | `org` | string | Yes | Organization slug |
154
+ | `publish` | boolean | No | Publish imported courses after academy import |
155
+ | `replace` | boolean | No | Replace existing content on re-import |
156
+ | `archiveMissing` | boolean | No | Archive removed content on re-import |
157
+
129
158
  ### `graspful_import_course`
130
159
 
131
160
  Import course YAML into a Graspful organization. Creates as draft by default. If `publish=true`, the server runs the review gate first.
@@ -167,6 +196,7 @@ Generate brand YAML scaffold for a white-label learning site. Niche presets set
167
196
  |-----------|------|:---:|-------------|
168
197
  | `niche` | string | Yes | `education`, `healthcare`, `finance`, `tech`, or `legal` |
169
198
  | `name` | string | No | Brand name |
199
+ | `topic` | string | No | Academy topic for more specific landing-page copy |
170
200
  | `domain` | string | No | Custom domain |
171
201
  | `orgSlug` | string | No | Organization slug |
172
202
 
@@ -192,24 +222,26 @@ List all courses in a Graspful organization.
192
222
  ## Typical Agent Workflow
193
223
 
194
224
  ```
195
- 1. Scaffold graspful_scaffold_course(topic: "Kubernetes Networking", estimatedHours: 8)
225
+ 1. Academy shell graspful_create_academy(topic: "Kubernetes Networking")
226
+ Define the academy boundary first, then author the courses inside it.
227
+
228
+ 2. Course graph graspful_scaffold_course(topic: "Kubernetes Networking Foundations", estimatedHours: 8)
196
229
  Edit the returned YAML -- add concepts, set prerequisites
197
230
 
198
- 2. Validate graspful_validate(yaml) -- catch schema errors early
231
+ 3. Validate graspful_validate(yaml) -- catch schema errors early
199
232
 
200
- 3. Fill graspful_fill_concept(yaml, conceptId: "k8s-services")
233
+ 4. Fill graspful_fill_concept(yaml, conceptId: "k8s-services")
201
234
  Repeat for each concept. Replace TODO placeholders with real content.
202
235
  Validate after each fill.
203
236
 
204
- 4. Review graspful_review_course(yaml) -- run quality gate
237
+ 5. Review graspful_review_course(yaml) -- run quality gate
205
238
  Fix failures, re-review until 10/10
206
239
 
207
- 5. Import graspful_import_course(yaml, org: "acme") -- creates draft
208
-
209
- 6. Brand graspful_create_brand(niche: "tech", name: "Acme Learn")
240
+ 6. Brand graspful_create_brand(niche: "tech", topic: "Kubernetes Networking", name: "Acme Learn")
241
+ Replace scaffold copy with learner-specific landing-page proof
210
242
  graspful_import_brand(yaml, orgSlug: "acme")
211
243
 
212
- 7. Publish graspful_publish_course(courseId: "...", org: "acme")
244
+ 7. Import graspful_import_academy(manifestYaml, courseYamls, org: "acme", publish: true)
213
245
  ```
214
246
 
215
247
  Offline tools (scaffold, fill, validate, review, describe, create_brand) need no API key. Only import, publish, import_brand, and list_courses require `GRASPFUL_API_KEY`.
@@ -262,6 +294,10 @@ Same pattern -- point `command` at `npx` and `args` at `@graspful/mcp`. The serv
262
294
  |----------|:---:|-------------|
263
295
  | `GRASPFUL_API_KEY` | For import/publish/list | API key for authenticated operations |
264
296
  | `GRASPFUL_API_URL` | No | API base URL (default: `https://api.graspful.ai`) |
297
+ | `GRASPFUL_USER_ID` | No | Graspful user ID for analytics identity continuity |
298
+ | `GRASPFUL_TELEMETRY_DISABLED` | No | Set to `1` to disable anonymous product analytics |
299
+
300
+ The MCP server sends tool usage and outcome metadata to help improve Graspful. It never sends API keys or YAML course bodies. Set `GRASPFUL_TELEMETRY_DISABLED=1` to disable this data collection.
265
301
 
266
302
  ## Links
267
303
 
package/dist/index.d.ts CHANGED
@@ -1,3 +1,22 @@
1
1
  #!/usr/bin/env node
2
- export {};
2
+ export declare function mcpDistinctId(): string;
3
+ interface ToolDef {
4
+ name: string;
5
+ description: string;
6
+ inputSchema: {
7
+ type: 'object';
8
+ properties: Record<string, unknown>;
9
+ required?: string[];
10
+ };
11
+ }
12
+ declare const TOOLS: ToolDef[];
13
+ type ToolResult = {
14
+ content: Array<{
15
+ type: 'text';
16
+ text: string;
17
+ }>;
18
+ isError?: boolean;
19
+ };
20
+ declare function handleToolCall(name: string, args: Record<string, unknown>): Promise<ToolResult>;
21
+ export { TOOLS, handleToolCall };
3
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AA0CA,wBAAgB,aAAa,IAAI,MAAM,CAatC;AAoED,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED,QAAA,MAAM,KAAK,EAAE,OAAO,EAwPnB,CAAC;AAIF,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAUF,iBAAe,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CA8O9F;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -34,14 +34,25 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  };
35
35
  })();
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.TOOLS = void 0;
38
+ exports.mcpDistinctId = mcpDistinctId;
39
+ exports.handleToolCall = handleToolCall;
37
40
  const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
38
41
  const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
39
42
  const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
40
43
  const yaml = __importStar(require("js-yaml"));
41
44
  const posthog_node_1 = require("posthog-node");
45
+ const node_crypto_1 = require("node:crypto");
42
46
  const shared_1 = require("@graspful/shared");
43
47
  // ─── PostHog analytics ──────────────────────────────────────────────────────
44
- const posthogKey = process.env.POSTHOG_API_KEY || process.env.NEXT_PUBLIC_POSTHOG_KEY;
48
+ const DEFAULT_POSTHOG_KEY = 'phc_ahQLCJsOBzeuro1yDeurs1a3xx07pIreJWeXG9T4d4';
49
+ const telemetryDisabled = process.env.GRASPFUL_TELEMETRY_DISABLED === '1' ||
50
+ process.env.NODE_ENV === 'test';
51
+ const posthogKey = telemetryDisabled
52
+ ? null
53
+ : process.env.POSTHOG_API_KEY ||
54
+ process.env.NEXT_PUBLIC_POSTHOG_KEY ||
55
+ DEFAULT_POSTHOG_KEY;
45
56
  const posthogClient = posthogKey
46
57
  ? new posthog_node_1.PostHog(posthogKey, {
47
58
  host: process.env.POSTHOG_HOST || process.env.NEXT_PUBLIC_POSTHOG_HOST || 'https://us.i.posthog.com',
@@ -49,8 +60,18 @@ const posthogClient = posthogKey
49
60
  flushInterval: 0,
50
61
  })
51
62
  : null;
63
+ const anonymousMcpDistinctId = `anonymous-mcp:${(0, node_crypto_1.randomUUID)()}`;
52
64
  function mcpDistinctId() {
53
- return process.env.GRASPFUL_USER_ID || process.env.GRASPFUL_API_KEY || 'anonymous-mcp';
65
+ if (process.env.GRASPFUL_USER_ID) {
66
+ return process.env.GRASPFUL_USER_ID;
67
+ }
68
+ if (process.env.GRASPFUL_API_KEY) {
69
+ const digest = (0, node_crypto_1.createHash)('sha256')
70
+ .update(process.env.GRASPFUL_API_KEY)
71
+ .digest('hex');
72
+ return `credential:${digest}`;
73
+ }
74
+ return anonymousMcpDistinctId;
54
75
  }
55
76
  function mcpCapture(event, properties = {}) {
56
77
  posthogClient?.capture({
@@ -105,6 +126,25 @@ function dumpYaml(obj) {
105
126
  return yaml.dump(obj, YAML_DUMP_OPTS);
106
127
  }
107
128
  const TOOLS = [
129
+ {
130
+ name: 'graspful_create_academy',
131
+ description: `Generate an academy plan and manifest scaffold for an academy-first workflow. Every academy is a connected curriculum made of one or more real courses.
132
+
133
+ Use this before authoring course YAML when the topic should be decomposed into learner-facing parts. If you do not pass courseNames, the scaffold creates the four default planning layers: foundations, core structures, operational flows, and applied judgment. The result includes authoring gates for source material, learner promise, landing-page proof, graph checks, and review before publishing.`,
134
+ inputSchema: {
135
+ type: 'object',
136
+ properties: {
137
+ topic: { type: 'string', description: 'Academy topic name (e.g., "PostHog TAM", "Linear Algebra")' },
138
+ courseNames: {
139
+ type: 'array',
140
+ description: 'Optional ordered course names to include in the manifest',
141
+ items: { type: 'string' },
142
+ },
143
+ version: { type: 'string', description: 'Academy version string (default: 2026.1)' },
144
+ },
145
+ required: ['topic'],
146
+ },
147
+ },
108
148
  {
109
149
  name: 'graspful_scaffold_course',
110
150
  description: `Generate a course YAML skeleton with sections, concepts, and prerequisite edges. Returns a minimal valid YAML structure with TODO placeholders.
@@ -149,7 +189,7 @@ Fails if the concept already has KPs (to prevent accidental overwrites).`,
149
189
  properties: {
150
190
  yaml: { type: 'string', description: 'The full course YAML string' },
151
191
  conceptId: { type: 'string', description: 'ID of the concept to fill (must exist in the YAML and have 0 KPs)' },
152
- kps: { type: 'number', description: 'Number of KP stubs to add (default: 2)' },
192
+ kps: { type: 'number', description: 'Number of KP stubs to add as a starting point (default: 3, not a cap)' },
153
193
  problemsPerKp: { type: 'number', description: 'Number of problem stubs per KP (default: 3)' },
154
194
  },
155
195
  required: ['yaml', 'conceptId'],
@@ -185,7 +225,7 @@ The 10 checks are:
185
225
  3. prerequisites_valid — All prerequisite refs point to real concepts
186
226
  4. question_deduplication — No near-duplicate questions at the same difficulty
187
227
  5. difficulty_staircase — Each concept has problems at 2+ difficulty levels
188
- 6. cross_concept_coverageNo single term dominates too many concepts
228
+ 6. problem_teaching_alignmentProblems only assess material introduced in the current lesson path
189
229
  7. problem_variant_depth — Each KP has 3+ problems
190
230
  8. instruction_formatting — Long instructions have content blocks
191
231
  9. worked_example_coverage — 50%+ of authored concepts have worked examples
@@ -200,6 +240,29 @@ A score of 10/10 is required for publishing. Run this before graspful_import_cou
200
240
  required: ['yaml'],
201
241
  },
202
242
  },
243
+ {
244
+ name: 'graspful_import_academy',
245
+ description: `Import an academy manifest and its referenced course YAMLs into a Graspful organization.
246
+
247
+ IMPORTANT: Requires authentication. If not authenticated, run \`graspful register\` in a terminal first or set the \`GRASPFUL_API_KEY\` environment variable. Without auth, this tool will fail.
248
+
249
+ If publish=true, Graspful imports the academy first and then attempts to publish each imported course. Returns the academy result plus publishedCourseIds and publishFailures.`,
250
+ inputSchema: {
251
+ type: 'object',
252
+ properties: {
253
+ manifestYaml: { type: 'string', description: 'The full academy manifest YAML string' },
254
+ courseYamls: {
255
+ type: 'object',
256
+ description: 'Object mapping manifest file paths to the full course YAML strings',
257
+ },
258
+ org: { type: 'string', description: 'Organization slug (e.g., "acme-learning")' },
259
+ publish: { type: 'boolean', description: 'If true, publish every imported course after academy import. Default: false' },
260
+ replace: { type: 'boolean', description: 'Replace existing academy/course content on re-import. Default: false' },
261
+ archiveMissing: { type: 'boolean', description: 'Archive removed content on re-import. Default: false' },
262
+ },
263
+ required: ['manifestYaml', 'courseYamls', 'org'],
264
+ },
265
+ },
203
266
  {
204
267
  name: 'graspful_import_course',
205
268
  description: `Import a course YAML into a Graspful organization. Creates the course as a draft by default.
@@ -273,6 +336,7 @@ Edit the YAML to customize, then import with \`graspful_import_brand\`.`,
273
336
  properties: {
274
337
  niche: { type: 'string', description: 'Brand niche: education, healthcare, finance, tech, or legal' },
275
338
  name: { type: 'string', description: 'Brand name (default: "{Niche} Academy")' },
339
+ topic: { type: 'string', description: 'Academy topic for more specific landing-page copy' },
276
340
  domain: { type: 'string', description: 'Custom domain (default: "{slug}.graspful.ai")' },
277
341
  orgSlug: { type: 'string', description: 'Organization slug to associate with' },
278
342
  },
@@ -310,6 +374,7 @@ Returns an array of courses with their IDs, names, published status, and stats.`
310
374
  },
311
375
  },
312
376
  ];
377
+ exports.TOOLS = TOOLS;
313
378
  function textResult(text) {
314
379
  return { content: [{ type: 'text', text }] };
315
380
  }
@@ -318,6 +383,15 @@ function errorResult(text) {
318
383
  }
319
384
  async function handleToolCall(name, args) {
320
385
  switch (name) {
386
+ case 'graspful_create_academy': {
387
+ const topic = args.topic;
388
+ const obj = (0, shared_1.scaffoldAcademyObject)(topic, {
389
+ courseNames: args.courseNames,
390
+ version: args.version,
391
+ });
392
+ mcpCapture('academy scaffolded', { topic, course_count: obj.courses.length });
393
+ return textResult(dumpYaml(obj));
394
+ }
321
395
  case 'graspful_scaffold_course': {
322
396
  const topic = args.topic;
323
397
  const obj = (0, shared_1.scaffoldCourseObject)(topic, {
@@ -374,6 +448,44 @@ async function handleToolCall(name, args) {
374
448
  mcpCapture('course reviewed', { score: result.score, passed: result.passed });
375
449
  return textResult(JSON.stringify(result, null, 2));
376
450
  }
451
+ case 'graspful_import_academy': {
452
+ try {
453
+ requireApiAuth();
454
+ const result = await apiFetch('POST', `/api/v1/orgs/${args.org}/academies/import`, {
455
+ manifestYaml: args.manifestYaml,
456
+ courseYamls: args.courseYamls,
457
+ replace: args.replace ?? false,
458
+ archiveMissing: args.archiveMissing ?? false,
459
+ });
460
+ const publishedCourseIds = [];
461
+ const publishFailures = [];
462
+ if (args.publish) {
463
+ for (const courseResult of result.courseResults) {
464
+ try {
465
+ await apiFetch('POST', `/api/v1/orgs/${args.org}/courses/${courseResult.courseId}/publish`, {});
466
+ publishedCourseIds.push(courseResult.courseId);
467
+ }
468
+ catch (error) {
469
+ publishFailures.push(`${courseResult.courseId}: ${error instanceof Error ? error.message : String(error)}`);
470
+ }
471
+ }
472
+ }
473
+ mcpCapture('academy imported', {
474
+ academy_id: result.academyId,
475
+ org: args.org,
476
+ course_count: result.courseCount,
477
+ published_count: publishedCourseIds.length,
478
+ });
479
+ return textResult(JSON.stringify({
480
+ ...result,
481
+ publishedCourseIds,
482
+ publishFailures,
483
+ }, null, 2));
484
+ }
485
+ catch (e) {
486
+ return errorResult(`Academy import failed: ${e instanceof Error ? e.message : String(e)}`);
487
+ }
488
+ }
377
489
  case 'graspful_import_course': {
378
490
  try {
379
491
  requireApiAuth();
@@ -412,6 +524,7 @@ async function handleToolCall(name, args) {
412
524
  const niche = args.niche;
413
525
  const obj = (0, shared_1.scaffoldBrandObject)(niche, {
414
526
  name: args.name,
527
+ topic: args.topic,
415
528
  domain: args.domain,
416
529
  orgSlug: args.orgSlug,
417
530
  });
@@ -465,36 +578,37 @@ async function handleToolCall(name, args) {
465
578
  return errorResult(`Unknown tool: ${name}`);
466
579
  }
467
580
  }
468
- // ─── MCP Server ─────────────────────────────────────────────────────────────
469
- const server = new index_js_1.Server({
470
- name: 'graspful',
471
- version: '0.2.4',
472
- }, {
473
- capabilities: {
474
- tools: {},
475
- },
476
- });
477
- server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
478
- return { tools: TOOLS };
479
- });
480
- server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
481
- const { name, arguments: args } = request.params;
482
- return handleToolCall(name, args ?? {});
483
- });
484
- // ─── Start server ───────────────────────────────────────────────────────────
485
- async function main() {
486
- const transport = new stdio_js_1.StdioServerTransport();
487
- await server.connect(transport);
488
- }
489
- main().catch((error) => {
490
- console.error('Fatal error:', error);
491
- process.exit(1);
492
- });
493
- async function shutdown() {
494
- if (posthogClient)
495
- await posthogClient.shutdown();
496
- process.exit(0);
581
+ // ─── MCP Server (only when run directly) ────────────────────────────────────
582
+ if (require.main === module) {
583
+ const server = new index_js_1.Server({
584
+ name: 'graspful',
585
+ version: '0.2.4',
586
+ }, {
587
+ capabilities: {
588
+ tools: {},
589
+ },
590
+ });
591
+ server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
592
+ return { tools: TOOLS };
593
+ });
594
+ server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
595
+ const { name, arguments: args } = request.params;
596
+ return handleToolCall(name, args ?? {});
597
+ });
598
+ async function main() {
599
+ const transport = new stdio_js_1.StdioServerTransport();
600
+ await server.connect(transport);
601
+ }
602
+ main().catch((error) => {
603
+ console.error('Fatal error:', error);
604
+ process.exit(1);
605
+ });
606
+ async function shutdown() {
607
+ if (posthogClient)
608
+ await posthogClient.shutdown();
609
+ process.exit(0);
610
+ }
611
+ process.on('SIGTERM', shutdown);
612
+ process.on('SIGINT', shutdown);
497
613
  }
498
- process.on('SIGTERM', shutdown);
499
- process.on('SIGINT', shutdown);
500
614
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,22 +1,23 @@
1
1
  {
2
2
  "name": "@graspful/mcp",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "description": "MCP server for Graspful — create adaptive learning courses from AI agents",
5
5
  "keywords": ["mcp", "mcp-server", "graspful", "course", "course-creation", "adaptive-learning", "ai-agent", "knowledge-graph", "spaced-repetition", "edtech", "education", "yaml", "lms", "model-context-protocol"],
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "https://github.com/willwearing/graspful.git",
8
+ "url": "git+https://github.com/willwearing/graspful.git",
9
9
  "directory": "packages/mcp"
10
10
  },
11
11
  "homepage": "https://graspful.ai",
12
12
  "bin": {
13
- "graspful-mcp": "./dist/index.js"
13
+ "graspful-mcp": "dist/index.js"
14
14
  },
15
15
  "main": "./dist/index.js",
16
16
  "files": ["dist"],
17
17
  "scripts": {
18
18
  "build": "bun x tsc",
19
- "dev": "bun x tsc --watch"
19
+ "dev": "bun x tsc --watch",
20
+ "test": "bun test src/__tests__"
20
21
  },
21
22
  "dependencies": {
22
23
  "@graspful/shared": "^0.2.3",