@@ -9,6 +9,7 @@ MCP (Model Context Protocol) server for Vue-Skuilder course content agent access
99- Test CLI: ` yarn workspace @vue-skuilder/mcp test:cli ` (CLI mode)
1010- Test Resources: ` yarn workspace @vue-skuilder/mcp test:resources `
1111- Test Tools: ` yarn workspace @vue-skuilder/mcp test:tools `
12+ - Server: ` yarn workspace @vue-skuilder/mcp server ` (standalone server mode)
1213
1314## Build System
1415Uses ** tsup** for dual CommonJS/ESM output:
@@ -31,6 +32,32 @@ Course-scoped MCP servers that accept CourseDBInterface injection:
3132- ** Tools** : Content generation and management operations
3233- ** Prompts** : Templates for guided content creation
3334
35+ ### Available Resources (14 total)
36+ - ` course://config ` - Course configuration with metadata and ELO statistics
37+ - ` cards://all ` - All cards with pagination support
38+ - ` cards://tag/{tagName} ` - Filter cards by tag name
39+ - ` cards://shape/{shapeName} ` - Filter cards by DataShape
40+ - ` cards://elo/{eloRange} ` - Filter cards by ELO range (format: min-max)
41+ - ` shapes://all ` - List all available DataShapes
42+ - ` shapes://{shapeName} ` - Specific DataShape information
43+ - ` tags://all ` - List all available tags
44+ - ` tags://stats ` - Tag usage statistics
45+ - ` tags://{tagName} ` - Specific tag information
46+ - ` tags://union/{tags} ` - Cards with ANY of specified tags (format: tag1+tag2)
47+ - ` tags://intersect/{tags} ` - Cards with ALL of specified tags (format: tag1+tag2)
48+ - ` tags://exclusive/{tags} ` - Cards with first tag but NOT second (format: tag1-tag2)
49+ - ` tags://distribution ` - Frequency distribution of all tags
50+
51+ ### Available Tools (4 total)
52+ - ` create_card ` - Create new course cards with specified datashape and content
53+ - ` update_card ` - Update existing course cards (data, tags, ELO, sourceRef)
54+ - ` tag_card ` - Add or remove tags from course cards with optional ELO update
55+ - ` delete_card ` - Safely delete course cards with confirmation requirement
56+
57+ ### Available Prompts (2 total)
58+ - ` fill-in-card-authoring ` - Generate fill-in-the-blank or multiple-choice cards using Vue-Skuilder syntax
59+ - ` elo-scoring-guidance ` - Guidance for assigning ELO difficulty ratings to flashcard content
60+
3461## Usage
3562``` typescript
3663import { MCPServer } from ' @vue-skuilder/mcp' ;
@@ -50,4 +77,37 @@ yarn dev # Opens Inspector UI automatically
5077- ** ELO-aware** : Native support for Vue-Skuilder's dynamic rating system
5178- ** DataShape aware** : Supports all Vue-Skuilder question types
5279- ** Source linking** : Git-based content provenance tracking
53- - ** Content generation** : Orchestrated courseware creation from source materials
80+ - ** Content generation** : Orchestrated courseware creation from source materials
81+ - ** Strongly typed** : All resources, tools, and prompts use TypeScript constants
82+ - ** Barrel exports** : Clean module organization with centralized imports
83+ - ** Pagination support** : Efficient handling of large datasets
84+ - ** Flexible filtering** : Multiple ways to query and filter content
85+
86+ ## Implementation Details
87+
88+ ### Strongly Typed Constants
89+ All registrations use TypeScript constants for type safety:
90+ - ` RESOURCE_PATTERNS ` - URI patterns for all 14 resources
91+ - ` TOOL_PATTERNS ` - Names for all 4 tools
92+ - ` PROMPT_PATTERNS ` - Names for all 2 prompts
93+
94+ ### Barrel Export Pattern
95+ Organized module structure with index files:
96+ - ` src/resources/index.ts ` - All resource handlers and patterns
97+ - ` src/tools/index.ts ` - All tool handlers and patterns
98+ - ` src/prompts/index.ts ` - All prompt functions and patterns
99+
100+ ### Server Configuration
101+ ``` typescript
102+ export interface MCPServerOptions {
103+ enableSourceLinking? : boolean ;
104+ maxCardsPerQuery? : number ;
105+ allowedDataShapes? : string [];
106+ eloCalibrationMode? : ' strict' | ' adaptive' | ' manual' ;
107+ }
108+ ```
109+
110+ ### Error Handling
111+ - Graceful handling of missing courses and cards
112+ - Validation using Zod schemas
113+ - Comprehensive error messages for debugging
0 commit comments