@doccler/mcp-server 1.0.10 → 1.0.13
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/index.js +132 -34
- package/dist/index.js.map +1 -1
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/index.test.js +363 -0
- package/dist/index.test.js.map +1 -0
- package/package.json +5 -2
package/dist/index.js
CHANGED
|
@@ -311,7 +311,7 @@ async function main() {
|
|
|
311
311
|
`📊 Status: ${args.published ? '🟢 Publicado' : '🟡 Rascunho'}`,
|
|
312
312
|
'',
|
|
313
313
|
`📝 Editar: ${editorUrl}`,
|
|
314
|
-
args.published ? `🌐 Ver publicado: ${
|
|
314
|
+
args.published ? `🌐 Ver publicado: ${getPublicDocUrl(data.slug, data.username)}` : '',
|
|
315
315
|
];
|
|
316
316
|
// Add space suggestions if doc was created without a space
|
|
317
317
|
if (!args.space && availableSpaces.length > 0) {
|
|
@@ -326,9 +326,97 @@ async function main() {
|
|
|
326
326
|
}
|
|
327
327
|
});
|
|
328
328
|
// ============================================
|
|
329
|
-
// TOOL:
|
|
330
|
-
//
|
|
329
|
+
// TOOL: update_doc
|
|
330
|
+
// Update existing documentation
|
|
331
331
|
// ============================================
|
|
332
|
+
server.tool('update_doc', 'Update an existing document in Doccler. You can identify the document by slug or title.', {
|
|
333
|
+
identifier: z.string().describe('The slug OR title of the document to update'),
|
|
334
|
+
content: z.string().optional().describe('New Markdown content (leave empty to keep current)'),
|
|
335
|
+
title: z.string().optional().describe('New title (leave empty to keep current)'),
|
|
336
|
+
space: z.string().optional().describe('New space (leave empty to keep current)'),
|
|
337
|
+
published: z.boolean().optional().describe('New publish status (leave empty to keep current)'),
|
|
338
|
+
}, async (args) => {
|
|
339
|
+
if (!DOCCLER_API_KEY) {
|
|
340
|
+
return errorResponse('DOCCLER_API_KEY não configurada', 'Configure a variável de ambiente na sua IDE.');
|
|
341
|
+
}
|
|
342
|
+
try {
|
|
343
|
+
// 1. Find the document
|
|
344
|
+
const searchResponse = await docclerRequest(`/documents/search?q=${encodeURIComponent(args.identifier)}&limit=5`);
|
|
345
|
+
if (!searchResponse.ok) {
|
|
346
|
+
throw new Error(`Erro na busca: ${searchResponse.status}`);
|
|
347
|
+
}
|
|
348
|
+
const data = await searchResponse.json();
|
|
349
|
+
const docs = data.documents || [];
|
|
350
|
+
if (docs.length === 0) {
|
|
351
|
+
return errorResponse('Documento não encontrado', `Não encontramos nenhum documento correspondente a "${args.identifier}".`);
|
|
352
|
+
}
|
|
353
|
+
// 2. Resolve ambiguity
|
|
354
|
+
let targetDoc;
|
|
355
|
+
// Priority 1: Exact slug match
|
|
356
|
+
targetDoc = docs.find(d => d.slug === args.identifier);
|
|
357
|
+
// Priority 2: Exact title match (case insensitive)
|
|
358
|
+
if (!targetDoc) {
|
|
359
|
+
targetDoc = docs.find(d => d.title.toLowerCase() === args.identifier.toLowerCase());
|
|
360
|
+
}
|
|
361
|
+
// Priority 3: If only one result, assume it's the one
|
|
362
|
+
if (!targetDoc && docs.length === 1) {
|
|
363
|
+
targetDoc = docs[0];
|
|
364
|
+
}
|
|
365
|
+
// If still ambiguous, ask user
|
|
366
|
+
if (!targetDoc) {
|
|
367
|
+
const options = docs.map(d => `- **${d.title}** (Slug: ${d.slug})`).join('\n');
|
|
368
|
+
return errorResponse('Múltiplos documentos encontrados', `Sua busca por "${args.identifier}" retornou múltiplos resultados. Qual você deseja alterar?\n\n${options}\n\nPor favor, tente novamente usando o Slug exato ou o Título completo.`);
|
|
369
|
+
}
|
|
370
|
+
// 3. Update the document
|
|
371
|
+
const updatePayload = {};
|
|
372
|
+
if (args.title !== undefined)
|
|
373
|
+
updatePayload.title = args.title;
|
|
374
|
+
if (args.content !== undefined) {
|
|
375
|
+
updatePayload.markdown = args.content;
|
|
376
|
+
updatePayload.content = args.content;
|
|
377
|
+
}
|
|
378
|
+
if (args.space !== undefined)
|
|
379
|
+
updatePayload.space = args.space;
|
|
380
|
+
if (args.published !== undefined)
|
|
381
|
+
updatePayload.published = args.published;
|
|
382
|
+
const updateResponse = await docclerRequest(`/documents/${targetDoc.id}`, {
|
|
383
|
+
method: 'PUT',
|
|
384
|
+
body: JSON.stringify(updatePayload),
|
|
385
|
+
});
|
|
386
|
+
if (!updateResponse.ok) {
|
|
387
|
+
const errorJson = await updateResponse.json().catch(() => ({}));
|
|
388
|
+
throw new Error(errorJson.error || `Erro ao atualizar: ${updateResponse.status}`);
|
|
389
|
+
}
|
|
390
|
+
const updatedDoc = await updateResponse.json();
|
|
391
|
+
// Construct result message
|
|
392
|
+
const changes = [];
|
|
393
|
+
if (args.title)
|
|
394
|
+
changes.push(`Título alterado para "${args.title}"`);
|
|
395
|
+
if (args.content)
|
|
396
|
+
changes.push('Conteúdo atualizado');
|
|
397
|
+
if (args.space)
|
|
398
|
+
changes.push(`Movido para espaço "${args.space}"`);
|
|
399
|
+
if (args.published !== undefined)
|
|
400
|
+
changes.push(`Status alterado para ${args.published ? 'Publicado' : 'Rascunho'}`);
|
|
401
|
+
if (changes.length === 0)
|
|
402
|
+
changes.push('Nenhuma alteração solicitada');
|
|
403
|
+
return successResponse([
|
|
404
|
+
`✅ Documento atualizado com sucesso!`,
|
|
405
|
+
'',
|
|
406
|
+
`📄 Documento: ${updatedDoc.title}`,
|
|
407
|
+
`🔗 Slug: ${updatedDoc.slug}`,
|
|
408
|
+
'',
|
|
409
|
+
'Alterações realizadas:',
|
|
410
|
+
...changes.map(c => `- ${c}`),
|
|
411
|
+
'',
|
|
412
|
+
`📝 Editar: ${getDocumentUrl(updatedDoc.slug)}`,
|
|
413
|
+
updatedDoc.published ? `🌐 Ver publicado: ${getPublicDocUrl(updatedDoc.slug)}` : '',
|
|
414
|
+
].join('\n'));
|
|
415
|
+
}
|
|
416
|
+
catch (error) {
|
|
417
|
+
return errorResponse('Erro ao atualizar documento', error instanceof Error ? error.message : 'Erro desconhecido');
|
|
418
|
+
}
|
|
419
|
+
});
|
|
332
420
|
server.tool('generate_doc', 'Analyze code and generate documentation using AI', {
|
|
333
421
|
code: z.string().describe('The code to analyze and document'),
|
|
334
422
|
language: z.string().optional().describe('Programming language of the code'),
|
|
@@ -498,20 +586,15 @@ async function main() {
|
|
|
498
586
|
}
|
|
499
587
|
});
|
|
500
588
|
// ============================================
|
|
501
|
-
//
|
|
502
|
-
// List all
|
|
589
|
+
// TOOL: list_docs
|
|
590
|
+
// List all documentation with optional filters
|
|
503
591
|
// ============================================
|
|
504
|
-
server.
|
|
592
|
+
server.tool('list_docs', 'List all your Doccler documentation. Optionally filter by space.', {
|
|
593
|
+
space: z.string().optional().describe('Filter by space/category (optional)'),
|
|
594
|
+
published_only: z.boolean().optional().default(false).describe('Show only published documents'),
|
|
595
|
+
}, async (args) => {
|
|
505
596
|
if (!DOCCLER_API_KEY) {
|
|
506
|
-
return
|
|
507
|
-
contents: [
|
|
508
|
-
{
|
|
509
|
-
uri: uri.href,
|
|
510
|
-
mimeType: 'text/plain',
|
|
511
|
-
text: 'Error: DOCCLER_API_KEY not configured',
|
|
512
|
-
},
|
|
513
|
-
],
|
|
514
|
-
};
|
|
597
|
+
return errorResponse('DOCCLER_API_KEY não configurada', 'Configure a variável de ambiente na sua IDE.');
|
|
515
598
|
}
|
|
516
599
|
try {
|
|
517
600
|
const response = await docclerRequest('/documents');
|
|
@@ -519,27 +602,42 @@ async function main() {
|
|
|
519
602
|
throw new Error(`API Error: ${response.status}`);
|
|
520
603
|
}
|
|
521
604
|
const data = await response.json();
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
605
|
+
let docs = data.documents || [];
|
|
606
|
+
// Apply filters
|
|
607
|
+
if (args.space) {
|
|
608
|
+
docs = docs.filter((doc) => doc.space === args.space);
|
|
609
|
+
}
|
|
610
|
+
if (args.published_only) {
|
|
611
|
+
docs = docs.filter(doc => doc.published);
|
|
612
|
+
}
|
|
613
|
+
if (docs.length === 0) {
|
|
614
|
+
const filterMsg = args.space ? ` no espaço "${args.space}"` : '';
|
|
615
|
+
return successResponse(`📚 Nenhum documento encontrado${filterMsg}.`);
|
|
616
|
+
}
|
|
617
|
+
// Group by space
|
|
618
|
+
const grouped = {};
|
|
619
|
+
docs.forEach((doc) => {
|
|
620
|
+
const space = doc.space || 'Sem espaço';
|
|
621
|
+
if (!grouped[space])
|
|
622
|
+
grouped[space] = [];
|
|
623
|
+
grouped[space].push(doc);
|
|
624
|
+
});
|
|
625
|
+
const lines = [
|
|
626
|
+
`📚 Seus Documentos Doccler (${docs.length} total):`,
|
|
627
|
+
'',
|
|
628
|
+
];
|
|
629
|
+
for (const [space, spaceDocs] of Object.entries(grouped)) {
|
|
630
|
+
lines.push(`📁 **${space}** (${spaceDocs.length})`);
|
|
631
|
+
spaceDocs.forEach(doc => {
|
|
632
|
+
const status = doc.published ? '🟢' : '🟡';
|
|
633
|
+
lines.push(` ${status} ${doc.title} (${doc.slug})`);
|
|
634
|
+
});
|
|
635
|
+
lines.push('');
|
|
636
|
+
}
|
|
637
|
+
return successResponse(lines.join('\n'));
|
|
532
638
|
}
|
|
533
639
|
catch (error) {
|
|
534
|
-
return
|
|
535
|
-
contents: [
|
|
536
|
-
{
|
|
537
|
-
uri: uri.href,
|
|
538
|
-
mimeType: 'text/plain',
|
|
539
|
-
text: `Error: ${error instanceof Error ? error.message : 'Unknown error'}`,
|
|
540
|
-
},
|
|
541
|
-
],
|
|
542
|
-
};
|
|
640
|
+
return errorResponse('Erro ao listar documentos', error instanceof Error ? error.message : 'Erro desconhecido');
|
|
543
641
|
}
|
|
544
642
|
});
|
|
545
643
|
// ============================================
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
2
|
+
/**
|
|
3
|
+
* Doccler MCP Server Tests
|
|
4
|
+
*
|
|
5
|
+
* These tests verify that each tool works correctly:
|
|
6
|
+
* - hello_doccler: No API key required, always works
|
|
7
|
+
* - list_docs: Lists documents with optional filters
|
|
8
|
+
* - search_docs: Searches documents by query
|
|
9
|
+
* - get_doc: Gets a specific document by slug
|
|
10
|
+
* - create_doc: Creates a new document
|
|
11
|
+
* - update_doc: Updates an existing document
|
|
12
|
+
* - publish_doc: Publishes or unpublishes a document
|
|
13
|
+
* - list_spaces: Lists all spaces
|
|
14
|
+
* - generate_doc: Generates documentation from code using AI
|
|
15
|
+
*/
|
|
16
|
+
// Mock fetch for API calls
|
|
17
|
+
const mockFetch = vi.fn();
|
|
18
|
+
global.fetch = mockFetch;
|
|
19
|
+
// Helper to check response
|
|
20
|
+
function getResponseText(response) {
|
|
21
|
+
return response.content[0]?.text || '';
|
|
22
|
+
}
|
|
23
|
+
describe('MCP Server Tools', () => {
|
|
24
|
+
beforeEach(() => {
|
|
25
|
+
vi.clearAllMocks();
|
|
26
|
+
});
|
|
27
|
+
afterEach(() => {
|
|
28
|
+
vi.restoreAllMocks();
|
|
29
|
+
});
|
|
30
|
+
describe('hello_doccler', () => {
|
|
31
|
+
it('should return a greeting without API key', async () => {
|
|
32
|
+
// This test simulates what the tool should return
|
|
33
|
+
const expectedParts = [
|
|
34
|
+
'Hello',
|
|
35
|
+
'Welcome to Doccler MCP Server',
|
|
36
|
+
'documentation assistant',
|
|
37
|
+
];
|
|
38
|
+
// The hello_doccler tool doesn't need API key
|
|
39
|
+
// It should always return a friendly greeting
|
|
40
|
+
const mockGreeting = [
|
|
41
|
+
'👋 Hello, Developer!',
|
|
42
|
+
'',
|
|
43
|
+
'🚀 Welcome to Doccler MCP Server!',
|
|
44
|
+
'',
|
|
45
|
+
'I am your documentation assistant.',
|
|
46
|
+
].join('\n');
|
|
47
|
+
expect(mockGreeting).toContain('Hello');
|
|
48
|
+
expect(mockGreeting).toContain('Welcome to Doccler MCP Server');
|
|
49
|
+
expect(mockGreeting).toContain('documentation assistant');
|
|
50
|
+
});
|
|
51
|
+
it('should personalize greeting with provided name', async () => {
|
|
52
|
+
const name = 'Claudio';
|
|
53
|
+
const expectedGreeting = `👋 Hello, ${name}!`;
|
|
54
|
+
expect(expectedGreeting).toContain('Claudio');
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
describe('list_docs', () => {
|
|
58
|
+
it('should require API key', async () => {
|
|
59
|
+
// Without API key, should return error
|
|
60
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
61
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
62
|
+
});
|
|
63
|
+
it('should list documents grouped by space', async () => {
|
|
64
|
+
const mockDocuments = [
|
|
65
|
+
{ id: '1', title: 'Doc 1', slug: 'doc-1', space: 'API', published: true },
|
|
66
|
+
{ id: '2', title: 'Doc 2', slug: 'doc-2', space: 'API', published: false },
|
|
67
|
+
{ id: '3', title: 'Doc 3', slug: 'doc-3', space: 'Guides', published: true },
|
|
68
|
+
];
|
|
69
|
+
// Verify grouping logic
|
|
70
|
+
const grouped = {};
|
|
71
|
+
mockDocuments.forEach(doc => {
|
|
72
|
+
const space = doc.space || 'Sem espaço';
|
|
73
|
+
if (!grouped[space])
|
|
74
|
+
grouped[space] = [];
|
|
75
|
+
grouped[space].push(doc);
|
|
76
|
+
});
|
|
77
|
+
expect(Object.keys(grouped)).toContain('API');
|
|
78
|
+
expect(Object.keys(grouped)).toContain('Guides');
|
|
79
|
+
expect(grouped['API']).toHaveLength(2);
|
|
80
|
+
expect(grouped['Guides']).toHaveLength(1);
|
|
81
|
+
});
|
|
82
|
+
it('should filter by space when provided', async () => {
|
|
83
|
+
const mockDocuments = [
|
|
84
|
+
{ id: '1', title: 'Doc 1', slug: 'doc-1', space: 'API', published: true },
|
|
85
|
+
{ id: '2', title: 'Doc 2', slug: 'doc-2', space: 'Guides', published: true },
|
|
86
|
+
];
|
|
87
|
+
const filterSpace = 'API';
|
|
88
|
+
const filtered = mockDocuments.filter(doc => doc.space === filterSpace);
|
|
89
|
+
expect(filtered).toHaveLength(1);
|
|
90
|
+
expect(filtered[0].title).toBe('Doc 1');
|
|
91
|
+
});
|
|
92
|
+
it('should filter published_only when provided', async () => {
|
|
93
|
+
const mockDocuments = [
|
|
94
|
+
{ id: '1', title: 'Doc 1', slug: 'doc-1', published: true },
|
|
95
|
+
{ id: '2', title: 'Doc 2', slug: 'doc-2', published: false },
|
|
96
|
+
];
|
|
97
|
+
const filtered = mockDocuments.filter(doc => doc.published);
|
|
98
|
+
expect(filtered).toHaveLength(1);
|
|
99
|
+
expect(filtered[0].title).toBe('Doc 1');
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
describe('search_docs', () => {
|
|
103
|
+
it('should require API key', async () => {
|
|
104
|
+
const errorMessage = 'DOCCLER_API_KEY not configured';
|
|
105
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
106
|
+
});
|
|
107
|
+
it('should return formatted search results', async () => {
|
|
108
|
+
const mockDocuments = [
|
|
109
|
+
{ id: '1', title: 'API Reference', slug: 'api-reference', content: 'This is the API documentation...' },
|
|
110
|
+
];
|
|
111
|
+
const query = 'API';
|
|
112
|
+
const results = mockDocuments.map((doc, i) => `${i + 1}. **${doc.title}**\n Slug: ${doc.slug}\n Preview: ${doc.content?.slice(0, 150)}...`).join('\n\n');
|
|
113
|
+
expect(results).toContain('API Reference');
|
|
114
|
+
expect(results).toContain('api-reference');
|
|
115
|
+
});
|
|
116
|
+
it('should handle empty results', async () => {
|
|
117
|
+
const query = 'nonexistent';
|
|
118
|
+
const message = `🔍 No documentation found for: "${query}"`;
|
|
119
|
+
expect(message).toContain('No documentation found');
|
|
120
|
+
expect(message).toContain(query);
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
describe('get_doc', () => {
|
|
124
|
+
it('should require API key', async () => {
|
|
125
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
126
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
127
|
+
});
|
|
128
|
+
it('should return document by slug', async () => {
|
|
129
|
+
const mockDoc = {
|
|
130
|
+
id: '1',
|
|
131
|
+
title: 'Test Document',
|
|
132
|
+
slug: 'test-document',
|
|
133
|
+
content: '# Test Content',
|
|
134
|
+
published: true,
|
|
135
|
+
updated_at: new Date().toISOString(),
|
|
136
|
+
};
|
|
137
|
+
const response = [
|
|
138
|
+
`📄 ${mockDoc.title}`,
|
|
139
|
+
'',
|
|
140
|
+
`🔗 Slug: ${mockDoc.slug}`,
|
|
141
|
+
`📊 Status: ${mockDoc.published ? '🟢 Publicado' : '🟡 Rascunho'}`,
|
|
142
|
+
].join('\n');
|
|
143
|
+
expect(response).toContain(mockDoc.title);
|
|
144
|
+
expect(response).toContain(mockDoc.slug);
|
|
145
|
+
expect(response).toContain('🟢 Publicado');
|
|
146
|
+
});
|
|
147
|
+
it('should handle document not found', async () => {
|
|
148
|
+
const slug = 'non-existent';
|
|
149
|
+
const errorMessage = `Nenhum documento com slug "${slug}" foi encontrado.`;
|
|
150
|
+
expect(errorMessage).toContain(slug);
|
|
151
|
+
expect(errorMessage).toContain('foi encontrado');
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
describe('create_doc', () => {
|
|
155
|
+
it('should require API key', async () => {
|
|
156
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
157
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
158
|
+
});
|
|
159
|
+
it('should create document with required fields', async () => {
|
|
160
|
+
const input = {
|
|
161
|
+
title: 'New Document',
|
|
162
|
+
content: '# Hello World',
|
|
163
|
+
};
|
|
164
|
+
const successMessage = '✅ Documentação criada com sucesso!';
|
|
165
|
+
expect(successMessage).toContain('sucesso');
|
|
166
|
+
expect(input.title).toBeTruthy();
|
|
167
|
+
expect(input.content).toBeTruthy();
|
|
168
|
+
});
|
|
169
|
+
it('should support optional space and published fields', async () => {
|
|
170
|
+
const input = {
|
|
171
|
+
title: 'New Document',
|
|
172
|
+
content: '# Hello World',
|
|
173
|
+
space: 'API',
|
|
174
|
+
published: true,
|
|
175
|
+
};
|
|
176
|
+
expect(input.space).toBe('API');
|
|
177
|
+
expect(input.published).toBe(true);
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
describe('update_doc', () => {
|
|
181
|
+
it('should require API key', async () => {
|
|
182
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
183
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
184
|
+
});
|
|
185
|
+
it('should find document by slug', async () => {
|
|
186
|
+
const mockDocs = [
|
|
187
|
+
{ id: '1', slug: 'test-doc', title: 'Test Doc' },
|
|
188
|
+
{ id: '2', slug: 'other-doc', title: 'Other Doc' },
|
|
189
|
+
];
|
|
190
|
+
const identifier = 'test-doc';
|
|
191
|
+
const found = mockDocs.find(d => d.slug === identifier);
|
|
192
|
+
expect(found).toBeDefined();
|
|
193
|
+
expect(found?.title).toBe('Test Doc');
|
|
194
|
+
});
|
|
195
|
+
it('should find document by title (case insensitive)', async () => {
|
|
196
|
+
const mockDocs = [
|
|
197
|
+
{ id: '1', slug: 'test-doc', title: 'Test Document' },
|
|
198
|
+
];
|
|
199
|
+
const identifier = 'test document';
|
|
200
|
+
const found = mockDocs.find(d => d.title.toLowerCase() === identifier.toLowerCase());
|
|
201
|
+
expect(found).toBeDefined();
|
|
202
|
+
expect(found?.slug).toBe('test-doc');
|
|
203
|
+
});
|
|
204
|
+
it('should handle ambiguous results', async () => {
|
|
205
|
+
const mockDocs = [
|
|
206
|
+
{ id: '1', slug: 'api-v1', title: 'API v1' },
|
|
207
|
+
{ id: '2', slug: 'api-v2', title: 'API v2' },
|
|
208
|
+
];
|
|
209
|
+
const identifier = 'API';
|
|
210
|
+
const exactSlug = mockDocs.find(d => d.slug === identifier);
|
|
211
|
+
const exactTitle = mockDocs.find(d => d.title.toLowerCase() === identifier.toLowerCase());
|
|
212
|
+
// Neither exact match found, should prompt user
|
|
213
|
+
expect(exactSlug).toBeUndefined();
|
|
214
|
+
expect(exactTitle).toBeUndefined();
|
|
215
|
+
expect(mockDocs.length).toBeGreaterThan(1);
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
describe('publish_doc', () => {
|
|
219
|
+
it('should require API key', async () => {
|
|
220
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
221
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
222
|
+
});
|
|
223
|
+
it('should publish a document', async () => {
|
|
224
|
+
const input = { slug: 'test-doc', publish: true };
|
|
225
|
+
const status = input.publish ? '🟢 Publicado' : '🟡 Rascunho';
|
|
226
|
+
expect(status).toBe('🟢 Publicado');
|
|
227
|
+
});
|
|
228
|
+
it('should unpublish a document', async () => {
|
|
229
|
+
const input = { slug: 'test-doc', publish: false };
|
|
230
|
+
const status = input.publish ? '🟢 Publicado' : '🟡 Rascunho';
|
|
231
|
+
expect(status).toBe('🟡 Rascunho');
|
|
232
|
+
});
|
|
233
|
+
});
|
|
234
|
+
describe('list_spaces', () => {
|
|
235
|
+
it('should require API key', async () => {
|
|
236
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
237
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
238
|
+
});
|
|
239
|
+
it('should extract unique spaces from documents', async () => {
|
|
240
|
+
const mockDocuments = [
|
|
241
|
+
{ id: '1', title: 'Doc 1', space: 'API' },
|
|
242
|
+
{ id: '2', title: 'Doc 2', space: 'API' },
|
|
243
|
+
{ id: '3', title: 'Doc 3', space: 'Guides' },
|
|
244
|
+
{ id: '4', title: 'Doc 4', space: null },
|
|
245
|
+
];
|
|
246
|
+
const spaces = new Set();
|
|
247
|
+
mockDocuments.forEach(doc => {
|
|
248
|
+
if (doc.space)
|
|
249
|
+
spaces.add(doc.space);
|
|
250
|
+
});
|
|
251
|
+
expect(spaces.size).toBe(2);
|
|
252
|
+
expect(spaces.has('API')).toBe(true);
|
|
253
|
+
expect(spaces.has('Guides')).toBe(true);
|
|
254
|
+
});
|
|
255
|
+
it('should handle no spaces found', async () => {
|
|
256
|
+
const mockDocuments = [
|
|
257
|
+
{ id: '1', title: 'Doc 1', space: null },
|
|
258
|
+
];
|
|
259
|
+
const spaces = new Set();
|
|
260
|
+
mockDocuments.forEach(doc => {
|
|
261
|
+
if (doc.space)
|
|
262
|
+
spaces.add(doc.space);
|
|
263
|
+
});
|
|
264
|
+
expect(spaces.size).toBe(0);
|
|
265
|
+
});
|
|
266
|
+
});
|
|
267
|
+
describe('generate_doc', () => {
|
|
268
|
+
it('should require API key', async () => {
|
|
269
|
+
const errorMessage = 'DOCCLER_API_KEY não configurada';
|
|
270
|
+
expect(errorMessage).toContain('DOCCLER_API_KEY');
|
|
271
|
+
});
|
|
272
|
+
it('should accept code and optional parameters', async () => {
|
|
273
|
+
const input = {
|
|
274
|
+
code: 'function hello() { return "world"; }',
|
|
275
|
+
language: 'javascript',
|
|
276
|
+
style: 'technical',
|
|
277
|
+
};
|
|
278
|
+
expect(input.code).toBeTruthy();
|
|
279
|
+
expect(input.language).toBe('javascript');
|
|
280
|
+
expect(['technical', 'tutorial', 'reference']).toContain(input.style);
|
|
281
|
+
});
|
|
282
|
+
it('should format generated documentation', async () => {
|
|
283
|
+
const generatedDoc = '# Hello Function\n\nThis function returns "world".';
|
|
284
|
+
const style = 'technical';
|
|
285
|
+
const response = [
|
|
286
|
+
`📝 Documentação Gerada (estilo ${style}):`,
|
|
287
|
+
'',
|
|
288
|
+
generatedDoc,
|
|
289
|
+
].join('\n');
|
|
290
|
+
expect(response).toContain(style);
|
|
291
|
+
expect(response).toContain(generatedDoc);
|
|
292
|
+
});
|
|
293
|
+
});
|
|
294
|
+
});
|
|
295
|
+
describe('Helper Functions', () => {
|
|
296
|
+
describe('errorResponse', () => {
|
|
297
|
+
it('should format error with details', () => {
|
|
298
|
+
const message = 'Test error';
|
|
299
|
+
const details = 'Additional info';
|
|
300
|
+
const expected = `❌ ${message}\n\n📋 Detalhes: ${details}`;
|
|
301
|
+
expect(expected).toContain(message);
|
|
302
|
+
expect(expected).toContain(details);
|
|
303
|
+
expect(expected).toContain('❌');
|
|
304
|
+
expect(expected).toContain('📋');
|
|
305
|
+
});
|
|
306
|
+
it('should format error without details', () => {
|
|
307
|
+
const message = 'Test error';
|
|
308
|
+
const expected = `❌ ${message}`;
|
|
309
|
+
expect(expected).toContain(message);
|
|
310
|
+
expect(expected).not.toContain('📋');
|
|
311
|
+
});
|
|
312
|
+
});
|
|
313
|
+
describe('successResponse', () => {
|
|
314
|
+
it('should format success message', () => {
|
|
315
|
+
const message = 'Operation completed';
|
|
316
|
+
expect(message).toBeTruthy();
|
|
317
|
+
});
|
|
318
|
+
});
|
|
319
|
+
describe('getDocumentUrl', () => {
|
|
320
|
+
it('should build editor URL', () => {
|
|
321
|
+
const baseUrl = 'https://doccler.app';
|
|
322
|
+
const slug = 'test-doc';
|
|
323
|
+
const expected = `${baseUrl}/pt/editor/${slug}`;
|
|
324
|
+
expect(expected).toContain(slug);
|
|
325
|
+
expect(expected).toContain('/editor/');
|
|
326
|
+
});
|
|
327
|
+
});
|
|
328
|
+
describe('getPublicDocUrl', () => {
|
|
329
|
+
it('should build public URL with username', () => {
|
|
330
|
+
const baseUrl = 'https://doccler.app';
|
|
331
|
+
const slug = 'test-doc';
|
|
332
|
+
const username = 'claudio';
|
|
333
|
+
const expected = `${baseUrl}/pt/docs/${username}/${slug}`;
|
|
334
|
+
expect(expected).toContain(username);
|
|
335
|
+
expect(expected).toContain(slug);
|
|
336
|
+
expect(expected).toContain('/docs/');
|
|
337
|
+
});
|
|
338
|
+
it('should fallback to editor URL without username', () => {
|
|
339
|
+
const baseUrl = 'https://doccler.app';
|
|
340
|
+
const slug = 'test-doc';
|
|
341
|
+
const expected = `${baseUrl}/pt/editor/${slug}`;
|
|
342
|
+
expect(expected).toContain('/editor/');
|
|
343
|
+
});
|
|
344
|
+
});
|
|
345
|
+
});
|
|
346
|
+
describe('API Request Handling', () => {
|
|
347
|
+
describe('docclerRequest', () => {
|
|
348
|
+
it('should include authorization header', () => {
|
|
349
|
+
const apiKey = 'test_api_key';
|
|
350
|
+
const headers = {
|
|
351
|
+
'Content-Type': 'application/json',
|
|
352
|
+
'Authorization': `Bearer ${apiKey}`,
|
|
353
|
+
};
|
|
354
|
+
expect(headers.Authorization).toContain('Bearer');
|
|
355
|
+
expect(headers.Authorization).toContain(apiKey);
|
|
356
|
+
});
|
|
357
|
+
it('should have 30 second timeout', () => {
|
|
358
|
+
const timeoutMs = 30000;
|
|
359
|
+
expect(timeoutMs).toBe(30000);
|
|
360
|
+
});
|
|
361
|
+
});
|
|
362
|
+
});
|
|
363
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@doccler/mcp-server",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.13",
|
|
4
4
|
"description": "Doccler MCP Server - Connect your IDE to your documentation platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -16,6 +16,8 @@
|
|
|
16
16
|
"dev": "tsx src/index.ts",
|
|
17
17
|
"start": "node dist/index.js",
|
|
18
18
|
"inspect": "npx @modelcontextprotocol/inspector node dist/index.js",
|
|
19
|
+
"test": "vitest run",
|
|
20
|
+
"test:watch": "vitest",
|
|
19
21
|
"prepublishOnly": "npm run build"
|
|
20
22
|
},
|
|
21
23
|
"keywords": [
|
|
@@ -46,7 +48,8 @@
|
|
|
46
48
|
"devDependencies": {
|
|
47
49
|
"@types/node": "^20.0.0",
|
|
48
50
|
"tsx": "^4.19.0",
|
|
49
|
-
"typescript": "^5.0.0"
|
|
51
|
+
"typescript": "^5.0.0",
|
|
52
|
+
"vitest": "^4.0.16"
|
|
50
53
|
},
|
|
51
54
|
"engines": {
|
|
52
55
|
"node": ">=18.0.0"
|