coaia-visualizer 1.6.0 → 1.6.2

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.
Files changed (58) hide show
  1. package/.dockerignore +9 -0
  2. package/COMPLETE_IMPLEMENTATION_REPORT.md +215 -0
  3. package/QUICK_START_MCP_TESTING.md +236 -0
  4. package/README.md +1 -1
  5. package/README_TELESCOPED_NAVIGATION.md +247 -0
  6. package/STC.md +24 -0
  7. package/STCGOAL.md +0 -0
  8. package/STCISSUE.md +48 -0
  9. package/STCKIN.md +0 -0
  10. package/STCMASTERY.md +0 -0
  11. package/STUDY_REPORT.md +510 -0
  12. package/app/page.tsx +4 -23
  13. package/cli.ts +8 -0
  14. package/components/chart-detail-editable.tsx +3 -2
  15. package/components/chart-detail.tsx +1 -6
  16. package/components/edit-action-step.tsx +0 -2
  17. package/components/metadata-projections.tsx +208 -0
  18. package/components/relation-graph.tsx +27 -91
  19. package/components.json +21 -0
  20. package/direct-test.sh +180 -0
  21. package/dist/cli.js +7 -0
  22. package/dist/skill.js +342 -0
  23. package/docker-compose.test.yml +69 -0
  24. package/index.tsx +0 -26
  25. package/jgwill.coaia-visualizer-8--496dca71-d476-4ac9-ba9f-376add118dd8--260208.txt +2612 -0
  26. package/lib/chart-editor.ts +13 -13
  27. package/lib/jsonl-parser.ts +55 -8
  28. package/lib/jsonl-preservation.ts +405 -0
  29. package/lib/types.ts +32 -15
  30. package/mcp/dist/api-client.d.ts +138 -0
  31. package/mcp/dist/api-client.d.ts.map +1 -0
  32. package/mcp/dist/api-client.js +115 -0
  33. package/mcp/dist/api-client.js.map +1 -0
  34. package/mcp/dist/index.d.ts +2 -0
  35. package/mcp/dist/index.d.ts.map +1 -0
  36. package/mcp/dist/index.js +286 -0
  37. package/mcp/dist/index.js.map +1 -0
  38. package/mcp/dist/tools/index.d.ts +18 -0
  39. package/mcp/dist/tools/index.d.ts.map +1 -0
  40. package/mcp/dist/tools/index.js +322 -0
  41. package/mcp/dist/tools/index.js.map +1 -0
  42. package/mcp/package-lock.json +210 -0
  43. package/package.json +2 -27
  44. package/rispecs/github-project-runtime-memory-integration.spec.md +381 -0
  45. package/skill.ts +385 -0
  46. package/test-data/test-master.jsonl +11 -0
  47. package/test-results/.last-run.json +4 -0
  48. package/test-scripts/README.md +325 -0
  49. package/test-scripts/rich-jsonl-preservation.spec.ts +118 -0
  50. package/test-scripts/run-all-tests.sh +38 -0
  51. package/test-scripts/test-01-basic-operations.sh +87 -0
  52. package/test-scripts/test-02-telescope-creation.sh +91 -0
  53. package/test-scripts/test-03-navigation.sh +87 -0
  54. package/test-scripts/test-global-cli.spec.ts +220 -0
  55. package/test-scripts/verify-global-cli.sh +87 -0
  56. package/tsconfig.json +41 -0
  57. package/components/github-provenance.tsx +0 -226
  58. package/lib/github-provenance.ts +0 -316
@@ -0,0 +1,138 @@
1
+ export interface Chart {
2
+ id: string;
3
+ desiredOutcome?: {
4
+ observations: string[];
5
+ metadata: any;
6
+ };
7
+ currentReality?: {
8
+ observations: string[];
9
+ metadata: any;
10
+ };
11
+ actions: Array<{
12
+ name: string;
13
+ observations: string[];
14
+ metadata: any;
15
+ }>;
16
+ narrativeBeats: any[];
17
+ subCharts: any[];
18
+ level: number;
19
+ parentChart?: string;
20
+ }
21
+ export interface ApiConfig {
22
+ baseUrl: string;
23
+ token: string;
24
+ }
25
+ export declare class CoaiaVisualizerClient {
26
+ private config;
27
+ constructor(config: ApiConfig);
28
+ private fetch;
29
+ private fetchJson;
30
+ /**
31
+ * List all charts
32
+ */
33
+ listCharts(options?: {
34
+ level?: number;
35
+ rootOnly?: boolean;
36
+ }): Promise<{
37
+ charts: Chart[];
38
+ total: number;
39
+ }>;
40
+ /**
41
+ * Get a specific chart
42
+ */
43
+ getChart(id: string): Promise<{
44
+ chart: Chart;
45
+ }>;
46
+ /**
47
+ * Create a new chart
48
+ */
49
+ createChart(data: {
50
+ desiredOutcome: string;
51
+ currentReality: string;
52
+ dueDate?: string;
53
+ parentChartId?: string;
54
+ }): Promise<{
55
+ chartId: string;
56
+ message: string;
57
+ backup: string;
58
+ }>;
59
+ /**
60
+ * Update a chart
61
+ */
62
+ updateChart(id: string, updates: {
63
+ updateDesiredOutcome?: string;
64
+ addCurrentRealityObservation?: string;
65
+ updateCurrentReality?: string[];
66
+ updateCurrentRealityObservation?: {
67
+ index: number;
68
+ text: string;
69
+ };
70
+ deleteCurrentRealityObservation?: number;
71
+ addActionStep?: {
72
+ description: string;
73
+ currentReality: string;
74
+ dueDate?: string;
75
+ };
76
+ updateActionStep?: {
77
+ actionName: string;
78
+ description: string;
79
+ };
80
+ toggleActionCompletion?: string;
81
+ markActionComplete?: string;
82
+ updateActionProgress?: {
83
+ actionStepName: string;
84
+ progressObservation: string;
85
+ updateCurrentReality?: boolean;
86
+ };
87
+ updateActionDueDate?: {
88
+ actionName: string;
89
+ dueDate: string | null;
90
+ };
91
+ deleteActionStep?: string;
92
+ updateDueDate?: string | null;
93
+ }): Promise<{
94
+ chart: Chart;
95
+ updates: string[];
96
+ message: string;
97
+ backup: string;
98
+ }>;
99
+ /**
100
+ * Create telescoped chart from existing action
101
+ */
102
+ createTelescopedChart(chartId: string, actionName: string): Promise<{
103
+ chart: Chart;
104
+ updates: string[];
105
+ message: string;
106
+ backup: string;
107
+ }>;
108
+ /**
109
+ * Delete a chart
110
+ */
111
+ deleteChart(id: string): Promise<{
112
+ message: string;
113
+ deletedEntities: string[];
114
+ backup: string;
115
+ }>;
116
+ /**
117
+ * Search charts
118
+ */
119
+ searchCharts(query: {
120
+ q?: string;
121
+ level?: number;
122
+ completed?: boolean;
123
+ hasActions?: boolean;
124
+ }): Promise<{
125
+ charts: Chart[];
126
+ total: number;
127
+ query: any;
128
+ }>;
129
+ /**
130
+ * Calculate chart progress
131
+ */
132
+ getChartProgress(chart: Chart): number;
133
+ /**
134
+ * Get chart summary
135
+ */
136
+ getChartSummary(chart: Chart): string;
137
+ }
138
+ //# sourceMappingURL=api-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ // mcp/src/api-client.ts - API Client for COAIA Visualizer
2
+ export class CoaiaVisualizerClient {
3
+ config;
4
+ constructor(config) {
5
+ this.config = config;
6
+ }
7
+ async fetch(path, options = {}) {
8
+ const url = `${this.config.baseUrl}${path}`;
9
+ const headers = {
10
+ 'Authorization': `Bearer ${this.config.token}`,
11
+ 'Content-Type': 'application/json',
12
+ ...options.headers,
13
+ };
14
+ const response = await fetch(url, {
15
+ ...options,
16
+ headers,
17
+ });
18
+ return response;
19
+ }
20
+ async fetchJson(path, options = {}) {
21
+ const response = await this.fetch(path, options);
22
+ if (!response.ok) {
23
+ const error = await response.json().catch(() => ({ error: 'Unknown error' }));
24
+ throw new Error(`API Error (${response.status}): ${error.error || error.message || 'Unknown error'}`);
25
+ }
26
+ return response.json();
27
+ }
28
+ /**
29
+ * List all charts
30
+ */
31
+ async listCharts(options) {
32
+ const params = new URLSearchParams();
33
+ if (options?.level !== undefined)
34
+ params.set('level', options.level.toString());
35
+ if (options?.rootOnly)
36
+ params.set('rootOnly', 'true');
37
+ const query = params.toString();
38
+ return this.fetchJson(`/api/charts${query ? `?${query}` : ''}`);
39
+ }
40
+ /**
41
+ * Get a specific chart
42
+ */
43
+ async getChart(id) {
44
+ return this.fetchJson(`/api/charts/${id}`);
45
+ }
46
+ /**
47
+ * Create a new chart
48
+ */
49
+ async createChart(data) {
50
+ return this.fetchJson('/api/charts', {
51
+ method: 'POST',
52
+ body: JSON.stringify(data),
53
+ });
54
+ }
55
+ /**
56
+ * Update a chart
57
+ */
58
+ async updateChart(id, updates) {
59
+ return this.fetchJson(`/api/charts/${id}`, {
60
+ method: 'POST',
61
+ body: JSON.stringify(updates),
62
+ });
63
+ }
64
+ /**
65
+ * Create telescoped chart from existing action
66
+ */
67
+ async createTelescopedChart(chartId, actionName) {
68
+ return this.fetchJson(`/api/charts/${chartId}`, {
69
+ method: 'POST',
70
+ body: JSON.stringify({
71
+ createTelescopedChart: { actionName },
72
+ }),
73
+ });
74
+ }
75
+ /**
76
+ * Delete a chart
77
+ */
78
+ async deleteChart(id) {
79
+ return this.fetchJson(`/api/charts/${id}`, {
80
+ method: 'DELETE',
81
+ });
82
+ }
83
+ /**
84
+ * Search charts
85
+ */
86
+ async searchCharts(query) {
87
+ const params = new URLSearchParams();
88
+ if (query.q)
89
+ params.set('q', query.q);
90
+ if (query.level !== undefined)
91
+ params.set('level', query.level.toString());
92
+ if (query.completed !== undefined)
93
+ params.set('completed', query.completed.toString());
94
+ if (query.hasActions !== undefined)
95
+ params.set('hasActions', query.hasActions.toString());
96
+ return this.fetchJson(`/api/charts/search?${params.toString()}`);
97
+ }
98
+ /**
99
+ * Calculate chart progress
100
+ */
101
+ getChartProgress(chart) {
102
+ if (chart.actions.length === 0)
103
+ return 0;
104
+ const completed = chart.actions.filter(a => a.metadata.completionStatus).length;
105
+ return Math.round((completed / chart.actions.length) * 100);
106
+ }
107
+ /**
108
+ * Get chart summary
109
+ */
110
+ getChartSummary(chart) {
111
+ const outcome = chart.desiredOutcome?.observations[0] || 'No desired outcome';
112
+ return outcome.length > 100 ? outcome.substring(0, 100) + '...' : outcome;
113
+ }
114
+ }
115
+ //# sourceMappingURL=api-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,0DAA0D;AA4B1D,MAAM,OAAO,qBAAqB;IACxB,MAAM,CAAW;IAEzB,YAAY,MAAiB;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,UAAuB,EAAE;QACzD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,EAAE,CAAA;QAC3C,MAAM,OAAO,GAAG;YACd,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YAC9C,cAAc,EAAE,kBAAkB;YAClC,GAAG,OAAO,CAAC,OAAO;SACnB,CAAA;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,GAAG,OAAO;YACV,OAAO;SACR,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,SAAS,CAAI,IAAY,EAAE,UAAuB,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAEhD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAQ,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAA;YAClF,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,CAAC,MAAM,MAAM,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAA;QACvG,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAgB,CAAA;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAGhB;QACC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;QACpC,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC/E,IAAI,OAAO,EAAE,QAAQ;YAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAErD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,IAKjB;QACC,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;YACnC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,EAAU,EAAE,OAc7B;QACC,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,EAAE;YACzC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,OAAe,EAAE,UAAkB;QAC7D,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,OAAO,EAAE,EAAE;YAC9C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,qBAAqB,EAAE,EAAE,UAAU,EAAE;aACtC,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,EAAE;YACzC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,KAKlB;QACC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;QACpC,IAAI,KAAK,CAAC,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACrC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC1E,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;QACtF,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEzF,OAAO,IAAI,CAAC,SAAS,CAAC,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAClE,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,KAAY;QAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAA;QAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA;IAC7D,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,KAAY;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,oBAAoB,CAAA;QAC7E,OAAO,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAA;IAC3E,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,286 @@
1
+ // mcp/src/index.ts - MCP Server for COAIA Visualizer
2
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
3
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
+ import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
5
+ import * as dotenv from 'dotenv';
6
+ import { CoaiaVisualizerClient } from './api-client.js';
7
+ import { ALL_TOOLS } from './tools/index.js';
8
+ // Load environment variables
9
+ dotenv.config();
10
+ const API_BASE_URL = process.env.COAIAV_API_URL || 'http://localhost:3000';
11
+ const API_TOKEN = process.env.COAIAN_API_TOKEN;
12
+ if (!API_TOKEN) {
13
+ console.error('❌ COAIAN_API_TOKEN environment variable is required');
14
+ console.error(' Set it to the token shown when you start coaia-visualizer');
15
+ process.exit(1);
16
+ }
17
+ const client = new CoaiaVisualizerClient({
18
+ baseUrl: API_BASE_URL,
19
+ token: API_TOKEN,
20
+ });
21
+ const server = new Server({
22
+ name: 'coaia-visualizer-mcp',
23
+ version: '1.0.0',
24
+ }, {
25
+ capabilities: {
26
+ tools: {},
27
+ },
28
+ });
29
+ // List available tools
30
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
31
+ return {
32
+ tools: ALL_TOOLS,
33
+ };
34
+ });
35
+ // Handle tool calls
36
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
37
+ const { name, arguments: args } = request.params;
38
+ const typedArgs = args;
39
+ try {
40
+ switch (name) {
41
+ case 'list_charts': {
42
+ const result = await client.listCharts({
43
+ level: typedArgs.level,
44
+ rootOnly: typedArgs.rootOnly,
45
+ });
46
+ return {
47
+ content: [
48
+ {
49
+ type: 'text',
50
+ text: JSON.stringify(result, null, 2),
51
+ },
52
+ ],
53
+ };
54
+ }
55
+ case 'get_chart': {
56
+ const result = await client.getChart(typedArgs.chartId);
57
+ return {
58
+ content: [
59
+ {
60
+ type: 'text',
61
+ text: JSON.stringify(result, null, 2),
62
+ },
63
+ ],
64
+ };
65
+ }
66
+ case 'create_chart': {
67
+ const result = await client.createChart({
68
+ desiredOutcome: typedArgs.desiredOutcome,
69
+ currentReality: typedArgs.currentReality,
70
+ dueDate: typedArgs.dueDate,
71
+ parentChartId: typedArgs.parentChartId,
72
+ });
73
+ return {
74
+ content: [
75
+ {
76
+ type: 'text',
77
+ text: JSON.stringify(result, null, 2),
78
+ },
79
+ ],
80
+ };
81
+ }
82
+ case 'update_chart': {
83
+ const updates = {};
84
+ if (typedArgs.updateDesiredOutcome)
85
+ updates.updateDesiredOutcome = typedArgs.updateDesiredOutcome;
86
+ if (typedArgs.addCurrentRealityObservation)
87
+ updates.addCurrentRealityObservation = typedArgs.addCurrentRealityObservation;
88
+ if ('updateDueDate' in typedArgs)
89
+ updates.updateDueDate = typedArgs.updateDueDate;
90
+ const result = await client.updateChart(typedArgs.chartId, updates);
91
+ return {
92
+ content: [
93
+ {
94
+ type: 'text',
95
+ text: JSON.stringify(result, null, 2),
96
+ },
97
+ ],
98
+ };
99
+ }
100
+ case 'add_action_step': {
101
+ const result = await client.updateChart(typedArgs.parentChartId, {
102
+ addActionStep: {
103
+ description: typedArgs.actionStepTitle,
104
+ currentReality: typedArgs.currentReality,
105
+ dueDate: typedArgs.dueDate,
106
+ },
107
+ });
108
+ return {
109
+ content: [
110
+ {
111
+ type: 'text',
112
+ text: JSON.stringify(result, null, 2),
113
+ },
114
+ ],
115
+ };
116
+ }
117
+ case 'update_action_step': {
118
+ const result = await client.updateChart(typedArgs.chartId, {
119
+ updateActionStep: {
120
+ actionName: typedArgs.actionName,
121
+ description: typedArgs.description,
122
+ },
123
+ });
124
+ return {
125
+ content: [
126
+ {
127
+ type: 'text',
128
+ text: JSON.stringify(result, null, 2),
129
+ },
130
+ ],
131
+ };
132
+ }
133
+ case 'mark_action_complete': {
134
+ const result = await client.updateChart(typedArgs.chartId, {
135
+ markActionComplete: typedArgs.actionStepName,
136
+ });
137
+ return {
138
+ content: [
139
+ {
140
+ type: 'text',
141
+ text: JSON.stringify(result, null, 2),
142
+ },
143
+ ],
144
+ };
145
+ }
146
+ case 'update_action_progress': {
147
+ const result = await client.updateChart(typedArgs.chartId, {
148
+ updateActionProgress: {
149
+ actionStepName: typedArgs.actionStepName,
150
+ progressObservation: typedArgs.progressObservation,
151
+ updateCurrentReality: typedArgs.updateCurrentReality,
152
+ },
153
+ });
154
+ return {
155
+ content: [
156
+ {
157
+ type: 'text',
158
+ text: JSON.stringify(result, null, 2),
159
+ },
160
+ ],
161
+ };
162
+ }
163
+ case 'update_current_reality': {
164
+ const result = await client.updateChart(typedArgs.chartId, {
165
+ updateCurrentReality: typedArgs.newObservations,
166
+ });
167
+ return {
168
+ content: [
169
+ {
170
+ type: 'text',
171
+ text: JSON.stringify(result, null, 2),
172
+ },
173
+ ],
174
+ };
175
+ }
176
+ case 'toggle_action_completion': {
177
+ const result = await client.updateChart(typedArgs.chartId, {
178
+ toggleActionCompletion: typedArgs.actionName,
179
+ });
180
+ return {
181
+ content: [
182
+ {
183
+ type: 'text',
184
+ text: JSON.stringify(result, null, 2),
185
+ },
186
+ ],
187
+ };
188
+ }
189
+ case 'delete_action_step': {
190
+ const result = await client.updateChart(typedArgs.chartId, {
191
+ deleteActionStep: typedArgs.actionName,
192
+ });
193
+ return {
194
+ content: [
195
+ {
196
+ type: 'text',
197
+ text: JSON.stringify(result, null, 2),
198
+ },
199
+ ],
200
+ };
201
+ }
202
+ case 'create_telescoped_chart': {
203
+ const result = await client.createTelescopedChart(typedArgs.chartId, typedArgs.actionName);
204
+ return {
205
+ content: [
206
+ {
207
+ type: 'text',
208
+ text: JSON.stringify(result, null, 2),
209
+ },
210
+ ],
211
+ };
212
+ }
213
+ case 'delete_chart': {
214
+ const result = await client.deleteChart(typedArgs.chartId);
215
+ return {
216
+ content: [
217
+ {
218
+ type: 'text',
219
+ text: JSON.stringify(result, null, 2),
220
+ },
221
+ ],
222
+ };
223
+ }
224
+ case 'search_charts': {
225
+ const result = await client.searchCharts({
226
+ q: typedArgs.q,
227
+ level: typedArgs.level,
228
+ completed: typedArgs.completed,
229
+ hasActions: typedArgs.hasActions,
230
+ });
231
+ return {
232
+ content: [
233
+ {
234
+ type: 'text',
235
+ text: JSON.stringify(result, null, 2),
236
+ },
237
+ ],
238
+ };
239
+ }
240
+ case 'get_chart_progress': {
241
+ const { chart } = await client.getChart(typedArgs.chartId);
242
+ const progress = client.getChartProgress(chart);
243
+ return {
244
+ content: [
245
+ {
246
+ type: 'text',
247
+ text: JSON.stringify({
248
+ chartId: typedArgs.chartId,
249
+ progress,
250
+ totalActions: chart.actions.length,
251
+ completedActions: chart.actions.filter(a => a.metadata.completionStatus).length,
252
+ }, null, 2),
253
+ },
254
+ ],
255
+ };
256
+ }
257
+ default:
258
+ throw new Error(`Unknown tool: ${name}`);
259
+ }
260
+ }
261
+ catch (error) {
262
+ return {
263
+ content: [
264
+ {
265
+ type: 'text',
266
+ text: `Error: ${error.message}`,
267
+ },
268
+ ],
269
+ isError: true,
270
+ };
271
+ }
272
+ });
273
+ async function main() {
274
+ console.error('🎨 COAIA Visualizer MCP Server');
275
+ console.error(` API: ${API_BASE_URL}`);
276
+ console.error(` Token: ${API_TOKEN?.substring(0, 8)}...`);
277
+ console.error();
278
+ const transport = new StdioServerTransport();
279
+ await server.connect(transport);
280
+ console.error('✅ MCP Server running');
281
+ }
282
+ main().catch((error) => {
283
+ console.error('Fatal error:', error);
284
+ process.exit(1);
285
+ });
286
+ //# 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,18 @@
1
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ export declare const LIST_CHARTS_TOOL: Tool;
3
+ export declare const GET_CHART_TOOL: Tool;
4
+ export declare const CREATE_CHART_TOOL: Tool;
5
+ export declare const UPDATE_CHART_TOOL: Tool;
6
+ export declare const ADD_ACTION_STEP_TOOL: Tool;
7
+ export declare const UPDATE_ACTION_STEP_TOOL: Tool;
8
+ export declare const MARK_ACTION_COMPLETE_TOOL: Tool;
9
+ export declare const UPDATE_ACTION_PROGRESS_TOOL: Tool;
10
+ export declare const UPDATE_CURRENT_REALITY_TOOL: Tool;
11
+ export declare const TOGGLE_ACTION_COMPLETION_TOOL: Tool;
12
+ export declare const DELETE_ACTION_STEP_TOOL: Tool;
13
+ export declare const CREATE_TELESCOPED_CHART_TOOL: Tool;
14
+ export declare const DELETE_CHART_TOOL: Tool;
15
+ export declare const SEARCH_CHARTS_TOOL: Tool;
16
+ export declare const GET_CHART_PROGRESS_TOOL: Tool;
17
+ export declare const ALL_TOOLS: Tool[];
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAA;AAEzD,eAAO,MAAM,gBAAgB,EAAE,IAgB9B,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,IAa5B,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,IAyB/B,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,IAyB/B,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,IAyBlC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,IAqBrC,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,IAiBvC,CAAA;AAED,eAAO,MAAM,2BAA2B,EAAE,IAyBzC,CAAA;AAED,eAAO,MAAM,2BAA2B,EAAE,IAoBzC,CAAA;AAED,eAAO,MAAM,6BAA6B,EAAE,IAiB3C,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,IAiBrC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,IAiB1C,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,IAa/B,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,IAwBhC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,IAarC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,IAAI,EAgB3B,CAAA"}