@vint.tri/report_gen_mcp 1.3.0 → 1.3.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.
- package/IMPROVED_NEURAL_NETWORK_INSTRUCTIONS.md +71 -11
- package/NEURAL_NETWORK_INSTRUCTIONS.md +71 -11
- package/PUBLICATION_CONFIRMATION.md +27 -51
- package/UPDATED_AI_INSTRUCTIONS.md +327 -5
- package/UPDATED_NEURAL_NETWORK_INSTRUCTIONS.md +170 -9
- package/dist/index.js +1 -1
- package/dist/utils/reportGenerator.js +56 -5
- package/package.json +1 -1
|
@@ -36,6 +36,15 @@
|
|
|
36
36
|
|
|
37
37
|
Обязательно покажите пользователю содержимое файла, чтобы он мог сразу ознакомиться с результатом без необходимости открывать файл отдельно.
|
|
38
38
|
|
|
39
|
+
**ВАЖНО ПО ФОРМАТИРОВАНИЮ ОТЧЕТОВ:**
|
|
40
|
+
- Все диаграммы автоматически создаются с разумными размерами (примерно 267x200 пикселей) для лучшего визуального восприятия
|
|
41
|
+
- Текст в отчетах автоматически форматируется с использованием HTML-разметки для улучшения читаемости
|
|
42
|
+
- Отчеты имеют профессиональный внешний вид с улучшенным стилем, включая:
|
|
43
|
+
* Четкую типографику с выравниванием текста по ширине
|
|
44
|
+
* Стилизованные заголовки с цветовой индикацией
|
|
45
|
+
* Улучшенное оформление списков и абзацев
|
|
46
|
+
* Цветовое выделение важной информации
|
|
47
|
+
|
|
39
48
|
Пример формата ответа пользователю:
|
|
40
49
|
```
|
|
41
50
|
Отчет успешно создан!
|
|
@@ -45,24 +54,75 @@
|
|
|
45
54
|
|
|
46
55
|
📄 Содержимое отчета:
|
|
47
56
|
<!DOCTYPE html>
|
|
48
|
-
<html>
|
|
57
|
+
<html lang="ru">
|
|
49
58
|
<head>
|
|
50
59
|
<meta charset="UTF-8">
|
|
51
|
-
<title
|
|
60
|
+
<title>Отчет</title>
|
|
52
61
|
<style>
|
|
53
|
-
body {
|
|
54
|
-
|
|
62
|
+
body {
|
|
63
|
+
font-family: Arial, sans-serif;
|
|
64
|
+
margin: 40px;
|
|
65
|
+
background-color: #f5f5f5;
|
|
66
|
+
}
|
|
67
|
+
.container {
|
|
68
|
+
max-width: 1200px;
|
|
69
|
+
margin: 0 auto;
|
|
70
|
+
background-color: white;
|
|
71
|
+
padding: 30px;
|
|
72
|
+
border-radius: 10px;
|
|
73
|
+
box-shadow: 0 0 10px rgba(0,0,0,0.1);
|
|
74
|
+
}
|
|
75
|
+
h1, h2, h3 {
|
|
76
|
+
color: #333;
|
|
77
|
+
}
|
|
78
|
+
h1 {
|
|
79
|
+
border-bottom: 2px solid #3498db;
|
|
80
|
+
padding-bottom: 10px;
|
|
81
|
+
}
|
|
82
|
+
h2 {
|
|
83
|
+
border-left: 4px solid #3498db;
|
|
84
|
+
padding-left: 15px;
|
|
85
|
+
}
|
|
86
|
+
.chart-container, .image-container {
|
|
87
|
+
margin: 30px 0;
|
|
88
|
+
text-align: center;
|
|
89
|
+
}
|
|
90
|
+
.chart-container canvas, .image-container img {
|
|
91
|
+
max-width: 100%;
|
|
92
|
+
height: auto;
|
|
93
|
+
border: 1px solid #ddd;
|
|
94
|
+
border-radius: 5px;
|
|
95
|
+
}
|
|
96
|
+
p {
|
|
97
|
+
line-height: 1.6;
|
|
98
|
+
text-align: justify;
|
|
99
|
+
}
|
|
100
|
+
ul, ol {
|
|
101
|
+
margin: 20px 0;
|
|
102
|
+
padding-left: 30px;
|
|
103
|
+
}
|
|
104
|
+
li {
|
|
105
|
+
margin: 10px 0;
|
|
106
|
+
}
|
|
107
|
+
strong {
|
|
108
|
+
color: #e74c3c;
|
|
109
|
+
}
|
|
110
|
+
em {
|
|
111
|
+
color: #2ecc71;
|
|
112
|
+
}
|
|
55
113
|
</style>
|
|
56
114
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
57
115
|
</head>
|
|
58
116
|
<body>
|
|
59
|
-
<
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
117
|
+
<div class="container">
|
|
118
|
+
<h1>Отчет</h1>
|
|
119
|
+
<div class="chart-container">
|
|
120
|
+
<!-- Chart.js chart code -->
|
|
121
|
+
</div>
|
|
122
|
+
<div class="image-container">
|
|
123
|
+
<!-- Generated image -->
|
|
124
|
+
<img src="https://image.pollinations.ai/prompt/красивый%20закат" alt="красивый закат">
|
|
125
|
+
</div>
|
|
66
126
|
</div>
|
|
67
127
|
</body>
|
|
68
128
|
</html>
|
|
@@ -28,6 +28,15 @@
|
|
|
28
28
|
|
|
29
29
|
Обязательно покажите пользователю содержимое файла, чтобы он мог сразу ознакомиться с результатом без необходимости открывать файл отдельно.
|
|
30
30
|
|
|
31
|
+
**ВАЖНО ПО ФОРМАТИРОВАНИЮ ОТЧЕТОВ:**
|
|
32
|
+
- Все диаграммы автоматически создаются с разумными размерами (примерно 267x200 пикселей) для лучшего визуального восприятия
|
|
33
|
+
- Текст в отчетах автоматически форматируется с использованием HTML-разметки для улучшения читаемости
|
|
34
|
+
- Отчеты имеют профессиональный внешний вид с улучшенным стилем, включая:
|
|
35
|
+
* Четкую типографику с выравниванием текста по ширине
|
|
36
|
+
* Стилизованные заголовки с цветовой индикацией
|
|
37
|
+
* Улучшенное оформление списков и абзацев
|
|
38
|
+
* Цветовое выделение важной информации
|
|
39
|
+
|
|
31
40
|
Пример формата ответа пользователю:
|
|
32
41
|
```
|
|
33
42
|
Отчет успешно создан!
|
|
@@ -37,24 +46,75 @@
|
|
|
37
46
|
|
|
38
47
|
📄 Содержимое отчета:
|
|
39
48
|
<!DOCTYPE html>
|
|
40
|
-
<html>
|
|
49
|
+
<html lang="ru">
|
|
41
50
|
<head>
|
|
42
51
|
<meta charset="UTF-8">
|
|
43
|
-
<title
|
|
52
|
+
<title>Отчет</title>
|
|
44
53
|
<style>
|
|
45
|
-
body {
|
|
46
|
-
|
|
54
|
+
body {
|
|
55
|
+
font-family: Arial, sans-serif;
|
|
56
|
+
margin: 40px;
|
|
57
|
+
background-color: #f5f5f5;
|
|
58
|
+
}
|
|
59
|
+
.container {
|
|
60
|
+
max-width: 1200px;
|
|
61
|
+
margin: 0 auto;
|
|
62
|
+
background-color: white;
|
|
63
|
+
padding: 30px;
|
|
64
|
+
border-radius: 10px;
|
|
65
|
+
box-shadow: 0 0 10px rgba(0,0,0,0.1);
|
|
66
|
+
}
|
|
67
|
+
h1, h2, h3 {
|
|
68
|
+
color: #333;
|
|
69
|
+
}
|
|
70
|
+
h1 {
|
|
71
|
+
border-bottom: 2px solid #3498db;
|
|
72
|
+
padding-bottom: 10px;
|
|
73
|
+
}
|
|
74
|
+
h2 {
|
|
75
|
+
border-left: 4px solid #3498db;
|
|
76
|
+
padding-left: 15px;
|
|
77
|
+
}
|
|
78
|
+
.chart-container, .image-container {
|
|
79
|
+
margin: 30px 0;
|
|
80
|
+
text-align: center;
|
|
81
|
+
}
|
|
82
|
+
.chart-container canvas, .image-container img {
|
|
83
|
+
max-width: 100%;
|
|
84
|
+
height: auto;
|
|
85
|
+
border: 1px solid #ddd;
|
|
86
|
+
border-radius: 5px;
|
|
87
|
+
}
|
|
88
|
+
p {
|
|
89
|
+
line-height: 1.6;
|
|
90
|
+
text-align: justify;
|
|
91
|
+
}
|
|
92
|
+
ul, ol {
|
|
93
|
+
margin: 20px 0;
|
|
94
|
+
padding-left: 30px;
|
|
95
|
+
}
|
|
96
|
+
li {
|
|
97
|
+
margin: 10px 0;
|
|
98
|
+
}
|
|
99
|
+
strong {
|
|
100
|
+
color: #e74c3c;
|
|
101
|
+
}
|
|
102
|
+
em {
|
|
103
|
+
color: #2ecc71;
|
|
104
|
+
}
|
|
47
105
|
</style>
|
|
48
106
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
49
107
|
</head>
|
|
50
108
|
<body>
|
|
51
|
-
<
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
109
|
+
<div class="container">
|
|
110
|
+
<h1>Отчет</h1>
|
|
111
|
+
<div class="chart-container">
|
|
112
|
+
<!-- Chart.js chart code -->
|
|
113
|
+
</div>
|
|
114
|
+
<div class="image-container">
|
|
115
|
+
<!-- Generated image -->
|
|
116
|
+
<img src="https://image.pollinations.ai/prompt/красивый%20закат" alt="красивый закат">
|
|
117
|
+
</div>
|
|
58
118
|
</div>
|
|
59
119
|
</body>
|
|
60
120
|
</html>
|
|
@@ -1,54 +1,30 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
- `src/charts/bar.ts` - Bar chart schema
|
|
20
|
-
- `src/charts/pie.ts` - Pie chart schema
|
|
21
|
-
- `src/charts/doughnut.ts` - Doughnut chart schema
|
|
22
|
-
- `src/charts/radar.ts` - Radar chart schema
|
|
23
|
-
- `src/charts/polarArea.ts` - PolarArea chart schema
|
|
24
|
-
- `package.json` - Version bump to 1.2.2
|
|
25
|
-
|
|
26
|
-
## Verification Results
|
|
27
|
-
✅ All tests passing:
|
|
28
|
-
- MCP tool call with problematic configuration now works
|
|
29
|
-
- Direct function calls with mixed formats work
|
|
30
|
-
- Backward compatibility with array formats maintained
|
|
31
|
-
- Reports generated successfully with normalized color values
|
|
32
|
-
|
|
33
|
-
## Error Resolved
|
|
34
|
-
The following error is now resolved:
|
|
1
|
+
# Публикация версии 1.3.0
|
|
2
|
+
|
|
3
|
+
✅ Версия 1.3.0 пакета @vint.tri/report_gen_mcp успешно опубликована в npm registry.
|
|
4
|
+
|
|
5
|
+
## Что было сделано:
|
|
6
|
+
|
|
7
|
+
1. Обновлена версия в package.json с 1.2.2 до 1.3.0
|
|
8
|
+
2. Обновлена версия в src/index.ts с 1.2.1 до 1.3.0
|
|
9
|
+
3. Обновлена версия в dist/index.js с 1.2.1 до 1.3.0
|
|
10
|
+
4. Обновлены упоминания версий в README.md
|
|
11
|
+
5. Выполнена сборка проекта
|
|
12
|
+
6. Пакет успешно опубликован в npm registry
|
|
13
|
+
|
|
14
|
+
## Проверка:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
npm info @vint.tri/report_gen_mcp version
|
|
18
|
+
# Вывод: 1.3.0
|
|
35
19
|
```
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
"path": [
|
|
42
|
-
"elements",
|
|
43
|
-
"usd_to_eur",
|
|
44
|
-
"config",
|
|
45
|
-
"datasets",
|
|
46
|
-
0,
|
|
47
|
-
"borderColor"
|
|
48
|
-
],
|
|
49
|
-
"message": "Expected array, received string"
|
|
50
|
-
}
|
|
51
|
-
]
|
|
20
|
+
|
|
21
|
+
Теперь пользователи могут установить последнюю версию инструмента с помощью:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm install -g @vint.tri/report_gen_mcp@latest
|
|
52
25
|
```
|
|
53
26
|
|
|
54
|
-
|
|
27
|
+
или использовать его напрямую через npx:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
REPORTS_DIR=./reports npx @vint.tri/report_gen_mcp@latest
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ОБНОВЛЕННЫЕ Инструкции для ИИ по работе с инструментом report_gen_mcp
|
|
2
2
|
|
|
3
3
|
**ВАЖНО:** ВСЕГДА ИСПОЛЬЗУЙТЕ ИНСТРУМЕНТ `report_gen_mcp` КАЖДЫЙ РАЗ, КОГДА ПОЛЬЗОВАТЕЛЬ ЗАПРАШИВАЕТ СОЗДАНИЕ ОТЧЕТА ИЛИ ВИЗУАЛИЗАЦИИ ДАННЫХ!
|
|
4
4
|
|
|
@@ -22,6 +22,28 @@
|
|
|
22
22
|
- Сгенерированные сервисом pollinations.ai по текстовому описанию
|
|
23
23
|
- По URL из интернета
|
|
24
24
|
|
|
25
|
+
## Требования к оформлению отчетов
|
|
26
|
+
|
|
27
|
+
При создании отчетов необходимо придерживаться следующих требований по оформлению:
|
|
28
|
+
|
|
29
|
+
1. **Красивое форматирование**:
|
|
30
|
+
- Используйте заголовки разных уровней (H1, H2, H3) для структурирования контента
|
|
31
|
+
- Добавляйте списки (маркированные и нумерованные) для лучшей читаемости
|
|
32
|
+
- Используйте выделение важной информации (жирный шрифт, курсив)
|
|
33
|
+
- Разделяйте смысловые блоки пустыми строками
|
|
34
|
+
|
|
35
|
+
2. **Визуализация данных**:
|
|
36
|
+
- Всегда добавляйте диаграммы для числовых данных
|
|
37
|
+
- Выбирайте подходящий тип диаграммы в зависимости от характера данных
|
|
38
|
+
- Добавляйте поясняющие подписи к диаграммам
|
|
39
|
+
- Используйте разнообразные цвета для лучшей визуализации
|
|
40
|
+
|
|
41
|
+
3. **Изображения**:
|
|
42
|
+
- Добавляйте тематические изображения для иллюстрации контента
|
|
43
|
+
- Используйте изображения высокого качества
|
|
44
|
+
- Добавляйте альтернативный текст для изображений
|
|
45
|
+
- При необходимости регулируйте размеры изображений
|
|
46
|
+
|
|
25
47
|
## После генерации отчета
|
|
26
48
|
|
|
27
49
|
После успешной генерации отчета с помощью метода `generate-report`, ИИ получает всю необходимую информацию напрямую в ответе от метода. Необходимо предоставить пользователю следующую информацию:
|
|
@@ -106,6 +128,269 @@
|
|
|
106
128
|
}
|
|
107
129
|
```
|
|
108
130
|
|
|
131
|
+
## Формат данных для диаграмм (графиков)
|
|
132
|
+
|
|
133
|
+
Очень важно правильно формировать данные для диаграмм, чтобы избежать ошибок. Ниже приведены точные требования к формату данных для каждого типа диаграмм.
|
|
134
|
+
|
|
135
|
+
### Общие правила для всех типов диаграмм
|
|
136
|
+
|
|
137
|
+
1. Все цветовые значения (`backgroundColor`, `borderColor`) должны быть представлены в виде **массивов строк**, даже если это один цвет.
|
|
138
|
+
2. Все числовые данные (`data`) должны быть представлены в виде массивов чисел.
|
|
139
|
+
3. Все текстовые метки (`labels`) должны быть представлены в виде массивов строк.
|
|
140
|
+
|
|
141
|
+
### Линейные диаграммы (line)
|
|
142
|
+
|
|
143
|
+
```json
|
|
144
|
+
{
|
|
145
|
+
"type": "line",
|
|
146
|
+
"config": {
|
|
147
|
+
"labels": ["Январь", "Февраль", "Март", "Апрель", "Май"],
|
|
148
|
+
"datasets": [
|
|
149
|
+
{
|
|
150
|
+
"label": "Продажи (USD)",
|
|
151
|
+
"data": [12000, 19000, 15000, 18000, 22000],
|
|
152
|
+
"borderColor": ["rgba(54, 162, 235, 1)"], // ВАЖНО: массив, даже для одного цвета!
|
|
153
|
+
"fill": false
|
|
154
|
+
}
|
|
155
|
+
],
|
|
156
|
+
"options": {
|
|
157
|
+
"title": "Ежемесячные продажи"
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Важно**: `borderColor` должен быть массивом строк, даже если используется только один цвет.
|
|
164
|
+
|
|
165
|
+
### Столбчатые диаграммы (bar)
|
|
166
|
+
|
|
167
|
+
```json
|
|
168
|
+
{
|
|
169
|
+
"type": "bar",
|
|
170
|
+
"config": {
|
|
171
|
+
"labels": ["Январь", "Февраль", "Март", "Апрель", "Май"],
|
|
172
|
+
"datasets": [
|
|
173
|
+
{
|
|
174
|
+
"label": "Продажи (USD)",
|
|
175
|
+
"data": [12000, 19000, 15000, 18000, 22000],
|
|
176
|
+
"backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"], // Массив цветов
|
|
177
|
+
"borderColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"] // Массив цветов
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"options": {
|
|
181
|
+
"title": "Ежемесячные продажи"
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк, даже если используется только один цвет.
|
|
188
|
+
|
|
189
|
+
### Круговые диаграммы (pie)
|
|
190
|
+
|
|
191
|
+
```json
|
|
192
|
+
{
|
|
193
|
+
"type": "pie",
|
|
194
|
+
"config": {
|
|
195
|
+
"labels": ["Красный", "Синий", "Желтый", "Зеленый", "Фиолетовый"],
|
|
196
|
+
"datasets": [
|
|
197
|
+
{
|
|
198
|
+
"data": [12, 19, 3, 5, 2],
|
|
199
|
+
"backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"], // Массив цветов
|
|
200
|
+
"borderColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"] // Массив цветов
|
|
201
|
+
}
|
|
202
|
+
],
|
|
203
|
+
"options": {
|
|
204
|
+
"title": "Распределение по категориям"
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк, даже если используется только один цвет.
|
|
211
|
+
|
|
212
|
+
### Кольцевые диаграммы (doughnut)
|
|
213
|
+
|
|
214
|
+
```json
|
|
215
|
+
{
|
|
216
|
+
"type": "doughnut",
|
|
217
|
+
"config": {
|
|
218
|
+
"labels": ["Красный", "Синий", "Желтый", "Зеленый", "Фиолетовый"],
|
|
219
|
+
"datasets": [
|
|
220
|
+
{
|
|
221
|
+
"data": [12, 19, 3, 5, 2],
|
|
222
|
+
"backgroundColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"], // Массив цветов
|
|
223
|
+
"borderColor": ["#FF6384", "#36A2EB", "#FFCE56", "#4BC0C0", "#9966FF"] // Массив цветов
|
|
224
|
+
}
|
|
225
|
+
],
|
|
226
|
+
"options": {
|
|
227
|
+
"title": "Распределение по категориям"
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк, даже если используется только один цвет.
|
|
234
|
+
|
|
235
|
+
### Радарные диаграммы (radar)
|
|
236
|
+
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"type": "radar",
|
|
240
|
+
"config": {
|
|
241
|
+
"labels": ["Eating", "Drinking", "Sleeping", "Designing", "Coding", "Cycling", "Running"],
|
|
242
|
+
"datasets": [
|
|
243
|
+
{
|
|
244
|
+
"label": "Person 1",
|
|
245
|
+
"data": [65, 59, 90, 81, 56, 55, 40],
|
|
246
|
+
"backgroundColor": ["rgba(255, 99, 132, 0.2)"], // Массив цветов
|
|
247
|
+
"borderColor": ["rgba(255, 99, 132, 1)"] // Массив цветов
|
|
248
|
+
}
|
|
249
|
+
],
|
|
250
|
+
"options": {
|
|
251
|
+
"title": "Радарная диаграмма"
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк, даже если используется только один цвет.
|
|
258
|
+
|
|
259
|
+
### Полярные диаграммы (polarArea)
|
|
260
|
+
|
|
261
|
+
```json
|
|
262
|
+
{
|
|
263
|
+
"type": "polarArea",
|
|
264
|
+
"config": {
|
|
265
|
+
"labels": ["Red", "Green", "Yellow", "Grey", "Blue"],
|
|
266
|
+
"datasets": [
|
|
267
|
+
{
|
|
268
|
+
"data": [11, 16, 7, 3, 14],
|
|
269
|
+
"backgroundColor": ["#FF6384", "#4BC0C0", "#FFCE56", "#E7E9ED", "#36A2EB"], // Массив цветов
|
|
270
|
+
"borderColor": ["#FF6384", "#4BC0C0", "#FFCE56", "#E7E9ED", "#36A2EB"] // Массив цветов
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
|
+
"options": {
|
|
274
|
+
"title": "Полярная диаграмма"
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк.
|
|
281
|
+
|
|
282
|
+
## Формат данных для изображений
|
|
283
|
+
|
|
284
|
+
### Изображения, сгенерированные pollinations.ai
|
|
285
|
+
|
|
286
|
+
```json
|
|
287
|
+
{
|
|
288
|
+
"type": "pollinations",
|
|
289
|
+
"config": {
|
|
290
|
+
"prompt": "красивый закат над океаном",
|
|
291
|
+
"width": 512,
|
|
292
|
+
"height": 512,
|
|
293
|
+
"model": "flux",
|
|
294
|
+
"seed": 12345,
|
|
295
|
+
"nologo": true,
|
|
296
|
+
"enhance": true
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Изображения по URL
|
|
302
|
+
|
|
303
|
+
```json
|
|
304
|
+
{
|
|
305
|
+
"type": "url",
|
|
306
|
+
"config": {
|
|
307
|
+
"url": "https://example.com/image.jpg",
|
|
308
|
+
"alt": "Описание изображения",
|
|
309
|
+
"width": 500,
|
|
310
|
+
"height": 300
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
## ПРАВИЛА ФОРМАТИРОВАНИЯ ПАРАМЕТРОВ (КРИТИЧЕСКИ ВАЖНО!)
|
|
316
|
+
|
|
317
|
+
### 1. ПАРАМЕТР "elements" ДОЛЖЕН БЫТЬ ОБЪЕКТОМ!
|
|
318
|
+
|
|
319
|
+
❌ НЕПРАВИЛЬНО (это вызывает ошибку "Expected object, received string"):
|
|
320
|
+
```json
|
|
321
|
+
{
|
|
322
|
+
"method": "generate-report",
|
|
323
|
+
"params": {
|
|
324
|
+
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
325
|
+
"elements": "{ \"mychart\": { \"type\": \"bar\", \"config\": { \"labels\": [\"A\", \"B\", \"C\"], \"datasets\": [{ \"label\": \"Data\", \"data\": [1, 2, 3], \"backgroundColor\": [\"red\", \"green\", \"blue\"], \"borderColor\": [\"red\", \"green\", \"blue\"] }] } }",
|
|
326
|
+
"outputFile": "report.html"
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
✅ ПРАВИЛЬНО (elements - это объект, а не строка):
|
|
332
|
+
```json
|
|
333
|
+
{
|
|
334
|
+
"method": "generate-report",
|
|
335
|
+
"params": {
|
|
336
|
+
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
337
|
+
"elements": {
|
|
338
|
+
"mychart": {
|
|
339
|
+
"type": "bar",
|
|
340
|
+
"config": {
|
|
341
|
+
"labels": ["A", "B", "C"],
|
|
342
|
+
"datasets": [{
|
|
343
|
+
"label": "Data",
|
|
344
|
+
"data": [1, 2, 3],
|
|
345
|
+
"backgroundColor": ["red", "green", "blue"],
|
|
346
|
+
"borderColor": ["red", "green", "blue"]
|
|
347
|
+
}]
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
},
|
|
351
|
+
"outputFile": "report.html"
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
### 2. ЦВЕТОВЫЕ ЗНАЧЕНИЯ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
357
|
+
|
|
358
|
+
❌ НЕПРАВИЛЬНО (это вызывает ошибку):
|
|
359
|
+
```json
|
|
360
|
+
"backgroundColor": "red"
|
|
361
|
+
"borderColor": "blue"
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
✅ ПРАВИЛЬНО (всегда используйте массивы):
|
|
365
|
+
```json
|
|
366
|
+
"backgroundColor": ["red"]
|
|
367
|
+
"borderColor": ["blue"]
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
### 3. ЧИСЛОВЫЕ ДАННЫЕ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
371
|
+
|
|
372
|
+
❌ НЕПРАВИЛЬНО:
|
|
373
|
+
```json
|
|
374
|
+
"data": 10
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
✅ ПРАВИЛЬНО:
|
|
378
|
+
```json
|
|
379
|
+
"data": [10]
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
### 4. ТЕКСТОВЫЕ МЕТКИ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
383
|
+
|
|
384
|
+
❌ НЕПРАВИЛЬНО:
|
|
385
|
+
```json
|
|
386
|
+
"labels": "Январь"
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
✅ ПРАВИЛЬНО:
|
|
390
|
+
```json
|
|
391
|
+
"labels": ["Январь"]
|
|
392
|
+
```
|
|
393
|
+
|
|
109
394
|
## Пример полного взаимодействия
|
|
110
395
|
|
|
111
396
|
Вот пример того, как должно выглядеть полное взаимодействие с пользователем после генерации отчета:
|
|
@@ -115,13 +400,26 @@
|
|
|
115
400
|
{
|
|
116
401
|
"method": "generate-report",
|
|
117
402
|
"params": {
|
|
118
|
-
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
119
|
-
"
|
|
403
|
+
"document": "# Отчет\n\n[[chart:mychart]]\n\n[[image:myimage]]",
|
|
404
|
+
"elements": {
|
|
120
405
|
"mychart": {
|
|
121
406
|
"type": "bar",
|
|
122
407
|
"config": {
|
|
123
408
|
"labels": ["A", "B", "C"],
|
|
124
|
-
"datasets": [{
|
|
409
|
+
"datasets": [{
|
|
410
|
+
"label": "Data",
|
|
411
|
+
"data": [1, 2, 3],
|
|
412
|
+
"backgroundColor": ["red", "green", "blue"],
|
|
413
|
+
"borderColor": ["red", "green", "blue"]
|
|
414
|
+
}]
|
|
415
|
+
}
|
|
416
|
+
},
|
|
417
|
+
"myimage": {
|
|
418
|
+
"type": "pollinations",
|
|
419
|
+
"config": {
|
|
420
|
+
"prompt": "beautiful landscape with mountains",
|
|
421
|
+
"width": 600,
|
|
422
|
+
"height": 400
|
|
125
423
|
}
|
|
126
424
|
}
|
|
127
425
|
},
|
|
@@ -157,7 +455,7 @@
|
|
|
157
455
|
<title>Report</title>
|
|
158
456
|
<style>
|
|
159
457
|
body { font-family: Arial, sans-serif; }
|
|
160
|
-
.chart-container { margin: 20px 0; }
|
|
458
|
+
.chart-container, .image-container { margin: 20px 0; }
|
|
161
459
|
</style>
|
|
162
460
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
163
461
|
</head>
|
|
@@ -166,17 +464,41 @@
|
|
|
166
464
|
<div class="chart-container">
|
|
167
465
|
<!-- Chart.js chart code -->
|
|
168
466
|
</div>
|
|
467
|
+
<div class="image-container">
|
|
468
|
+
<!-- Generated image -->
|
|
469
|
+
<img src="https://image.pollinations.ai/prompt/beautiful%20landscape%20with%20mountains" alt="beautiful landscape with mountains">
|
|
470
|
+
</div>
|
|
169
471
|
</body>
|
|
170
472
|
</html>
|
|
171
473
|
|
|
172
474
|
Вы можете открыть отчет, кликнув на ссылку выше или скопировав путь к файлу.
|
|
173
475
|
```
|
|
174
476
|
|
|
477
|
+
## Частые ошибки и как их избежать
|
|
478
|
+
|
|
479
|
+
1. **Ошибка формата параметров**: Передача `elements` как строки вместо объекта
|
|
480
|
+
- ❌ Неправильно: `"elements": "{\"mychart\":{...}}"`
|
|
481
|
+
- ✅ Правильно: `"elements": {"mychart":{...}}`
|
|
482
|
+
|
|
483
|
+
2. **Ошибка формата цвета**: Передача `borderColor` или `backgroundColor` как строк вместо массивов
|
|
484
|
+
- ❌ Неправильно: `"borderColor": "red"`
|
|
485
|
+
- ✅ Правильно: `"borderColor": ["red"]`
|
|
486
|
+
|
|
487
|
+
3. **Ошибка формата данных**: Передача числовых данных как отдельных значений вместо массивов
|
|
488
|
+
- ❌ Неправильно: `"data": 10`
|
|
489
|
+
- ✅ Правильно: `"data": [10]"
|
|
490
|
+
|
|
491
|
+
4. **Ошибка формата меток**: Передача меток как отдельных значений вместо массивов
|
|
492
|
+
- ❌ Неправильно: `"labels": "Январь"`
|
|
493
|
+
- ✅ Правильно: `"labels": ["Январь"]"
|
|
494
|
+
|
|
175
495
|
## Дополнительные рекомендации
|
|
176
496
|
|
|
177
497
|
1. Всегда проверяйте успешность выполнения каждой операции перед переходом к следующему шагу
|
|
178
498
|
2. Если какой-либо шаг завершается ошибкой, сообщите пользователю об этом и предложите решение
|
|
179
499
|
3. Убедитесь, что все пути к файлам корректны и файлы действительно существуют
|
|
180
500
|
4. При работе с Claude Desktop используйте параметр `tempDirectory` при генерации отчетов для избежания проблем с правами доступа
|
|
501
|
+
5. Создавайте отчеты с красивым оформлением, используя заголовки, списки и другие элементы форматирования
|
|
502
|
+
6. Добавляйте в отчеты диаграммы и изображения для лучшей визуализации данных
|
|
181
503
|
|
|
182
504
|
Следование этим инструкциям обеспечит качественное и полное взаимодействие с пользователем при работе с инструментом генерации отчетов.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ОБНОВЛЕННЫЕ Инструкции для нейросети по работе с инструментом report_gen_mcp
|
|
2
2
|
|
|
3
3
|
**ВАЖНО:** ВСЕГДА ИСПОЛЬЗУЙТЕ ИНСТРУМЕНТ `report_gen_mcp` КАЖДЫЙ РАЗ, КОГДА ПОЛЬЗОВАТЕЛЬ ЗАПРАШИВАЕТ СОЗДАНИЕ ОТЧЕТА ИЛИ ВИЗУАЛИЗАЦИИ ДАННЫХ!
|
|
4
4
|
|
|
@@ -22,6 +22,37 @@
|
|
|
22
22
|
- Сгенерированные сервисом pollinations.ai по текстовому описанию
|
|
23
23
|
- По URL из интернета
|
|
24
24
|
|
|
25
|
+
## Требования к оформлению отчетов
|
|
26
|
+
|
|
27
|
+
При создании отчетов необходимо придерживаться следующих требований по оформлению:
|
|
28
|
+
|
|
29
|
+
1. **Красивое форматирование**:
|
|
30
|
+
- Используйте заголовки разных уровней (H1, H2, H3) для структурирования контента
|
|
31
|
+
- Добавляйте списки (маркированные и нумерованные) для лучшей читаемости
|
|
32
|
+
- Используйте выделение важной информации (жирный шрифт, курсив)
|
|
33
|
+
- Разделяйте смысловые блоки пустыми строками
|
|
34
|
+
|
|
35
|
+
2. **Визуализация данных**:
|
|
36
|
+
- Всегда добавляйте диаграммы для числовых данных
|
|
37
|
+
- Выбирайте подходящий тип диаграммы в зависимости от характера данных
|
|
38
|
+
- Добавляйте поясняющие подписи к диаграммам
|
|
39
|
+
- Используйте разнообразные цвета для лучшей визуализации
|
|
40
|
+
- **ВАЖНО**: Все диаграммы автоматически создаются с разумными размерами (примерно 267x200 пикселей) для лучшего визуального восприятия
|
|
41
|
+
|
|
42
|
+
3. **Изображения**:
|
|
43
|
+
- Добавляйте тематические изображения для иллюстрации контента
|
|
44
|
+
- Используйте изображения высокого качества
|
|
45
|
+
- Добавляйте альтернативный текст для изображений
|
|
46
|
+
- При необходимости регулируйте размеры изображений
|
|
47
|
+
|
|
48
|
+
4. **Текстовое форматирование**:
|
|
49
|
+
- Текст в отчетах автоматически форматируется с использованием HTML-разметки для улучшения читаемости
|
|
50
|
+
- Отчеты имеют профессиональный внешний вид с улучшенным стилем, включая:
|
|
51
|
+
* Четкую типографику с выравниванием текста по ширине
|
|
52
|
+
* Стилизованные заголовки с цветовой индикацией
|
|
53
|
+
* Улучшенное оформление списков и абзацев
|
|
54
|
+
* Цветовое выделение важной информации (жирный шрифт красного цвета, курсив зеленого цвета)
|
|
55
|
+
|
|
25
56
|
## После генерации отчета
|
|
26
57
|
|
|
27
58
|
После успешной генерации отчета с помощью метода `generate-report`, нейросеть получает всю необходимую информацию напрямую в ответе от метода. Необходимо предоставить пользователю следующую информацию:
|
|
@@ -257,6 +288,118 @@
|
|
|
257
288
|
|
|
258
289
|
**Важно**: `backgroundColor` и `borderColor` должны быть массивами строк.
|
|
259
290
|
|
|
291
|
+
## Формат данных для изображений
|
|
292
|
+
|
|
293
|
+
### Изображения, сгенерированные pollinations.ai
|
|
294
|
+
|
|
295
|
+
```json
|
|
296
|
+
{
|
|
297
|
+
"type": "pollinations",
|
|
298
|
+
"config": {
|
|
299
|
+
"prompt": "красивый закат над океаном",
|
|
300
|
+
"width": 512,
|
|
301
|
+
"height": 512,
|
|
302
|
+
"model": "flux",
|
|
303
|
+
"seed": 12345,
|
|
304
|
+
"nologo": true,
|
|
305
|
+
"enhance": true
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
### Изображения по URL
|
|
311
|
+
|
|
312
|
+
```json
|
|
313
|
+
{
|
|
314
|
+
"type": "url",
|
|
315
|
+
"config": {
|
|
316
|
+
"url": "https://example.com/image.jpg",
|
|
317
|
+
"alt": "Описание изображения",
|
|
318
|
+
"width": 500,
|
|
319
|
+
"height": 300
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
## ПРАВИЛА ФОРМАТИРОВАНИЯ ПАРАМЕТРОВ (КРИТИЧЕСКИ ВАЖНО!)
|
|
325
|
+
|
|
326
|
+
### 1. ПАРАМЕТР "elements" ДОЛЖЕН БЫТЬ ОБЪЕКТОМ!
|
|
327
|
+
|
|
328
|
+
❌ НЕПРАВИЛЬНО (это вызывает ошибку "Expected object, received string"):
|
|
329
|
+
```json
|
|
330
|
+
{
|
|
331
|
+
"method": "generate-report",
|
|
332
|
+
"params": {
|
|
333
|
+
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
334
|
+
"elements": "{ \"mychart\": { \"type\": \"bar\", \"config\": { \"labels\": [\"A\", \"B\", \"C\"], \"datasets\": [{ \"label\": \"Data\", \"data\": [1, 2, 3], \"backgroundColor\": [\"red\", \"green\", \"blue\"], \"borderColor\": [\"red\", \"green\", \"blue\"] }] } }",
|
|
335
|
+
"outputFile": "report.html"
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
✅ ПРАВИЛЬНО (elements - это объект, а не строка):
|
|
341
|
+
```json
|
|
342
|
+
{
|
|
343
|
+
"method": "generate-report",
|
|
344
|
+
"params": {
|
|
345
|
+
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
346
|
+
"elements": {
|
|
347
|
+
"mychart": {
|
|
348
|
+
"type": "bar",
|
|
349
|
+
"config": {
|
|
350
|
+
"labels": ["A", "B", "C"],
|
|
351
|
+
"datasets": [{
|
|
352
|
+
"label": "Data",
|
|
353
|
+
"data": [1, 2, 3],
|
|
354
|
+
"backgroundColor": ["red", "green", "blue"],
|
|
355
|
+
"borderColor": ["red", "green", "blue"]
|
|
356
|
+
}]
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
"outputFile": "report.html"
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
### 2. ЦВЕТОВЫЕ ЗНАЧЕНИЯ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
366
|
+
|
|
367
|
+
❌ НЕПРАВИЛЬНО (это вызывает ошибку):
|
|
368
|
+
```json
|
|
369
|
+
"backgroundColor": "red"
|
|
370
|
+
"borderColor": "blue"
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
✅ ПРАВИЛЬНО (всегда используйте массивы):
|
|
374
|
+
```json
|
|
375
|
+
"backgroundColor": ["red"]
|
|
376
|
+
"borderColor": ["blue"]
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
### 3. ЧИСЛОВЫЕ ДАННЫЕ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
380
|
+
|
|
381
|
+
❌ НЕПРАВИЛЬНО:
|
|
382
|
+
```json
|
|
383
|
+
"data": 10
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
✅ ПРАВИЛЬНО:
|
|
387
|
+
```json
|
|
388
|
+
"data": [10]
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
### 4. ТЕКСТОВЫЕ МЕТКИ ДОЛЖНЫ БЫТЬ МАССИВАМИ!
|
|
392
|
+
|
|
393
|
+
❌ НЕПРАВИЛЬНО:
|
|
394
|
+
```json
|
|
395
|
+
"labels": "Январь"
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
✅ ПРАВИЛЬНО:
|
|
399
|
+
```json
|
|
400
|
+
"labels": ["Январь"]
|
|
401
|
+
```
|
|
402
|
+
|
|
260
403
|
## Пример полного взаимодействия
|
|
261
404
|
|
|
262
405
|
Вот пример того, как должно выглядеть полное взаимодействие с пользователем после генерации отчета:
|
|
@@ -266,8 +409,8 @@
|
|
|
266
409
|
{
|
|
267
410
|
"method": "generate-report",
|
|
268
411
|
"params": {
|
|
269
|
-
"document": "# Отчет\n\n[[chart:mychart]]",
|
|
270
|
-
"
|
|
412
|
+
"document": "# Отчет\n\n[[chart:mychart]]\n\n[[image:myimage]]",
|
|
413
|
+
"elements": {
|
|
271
414
|
"mychart": {
|
|
272
415
|
"type": "bar",
|
|
273
416
|
"config": {
|
|
@@ -275,10 +418,18 @@
|
|
|
275
418
|
"datasets": [{
|
|
276
419
|
"label": "Data",
|
|
277
420
|
"data": [1, 2, 3],
|
|
278
|
-
"backgroundColor": ["red", "green", "blue"],
|
|
279
|
-
"borderColor": ["red", "green", "blue"]
|
|
421
|
+
"backgroundColor": ["red", "green", "blue"],
|
|
422
|
+
"borderColor": ["red", "green", "blue"]
|
|
280
423
|
}]
|
|
281
424
|
}
|
|
425
|
+
},
|
|
426
|
+
"myimage": {
|
|
427
|
+
"type": "pollinations",
|
|
428
|
+
"config": {
|
|
429
|
+
"prompt": "beautiful landscape with mountains",
|
|
430
|
+
"width": 600,
|
|
431
|
+
"height": 400
|
|
432
|
+
}
|
|
282
433
|
}
|
|
283
434
|
},
|
|
284
435
|
"outputFile": "report.html"
|
|
@@ -313,7 +464,7 @@
|
|
|
313
464
|
<title>Report</title>
|
|
314
465
|
<style>
|
|
315
466
|
body { font-family: Arial, sans-serif; }
|
|
316
|
-
.chart-container { margin: 20px 0; }
|
|
467
|
+
.chart-container, .image-container { margin: 20px 0; }
|
|
317
468
|
</style>
|
|
318
469
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
319
470
|
</head>
|
|
@@ -322,6 +473,10 @@
|
|
|
322
473
|
<div class="chart-container">
|
|
323
474
|
<!-- Chart.js chart code -->
|
|
324
475
|
</div>
|
|
476
|
+
<div class="image-container">
|
|
477
|
+
<!-- Generated image -->
|
|
478
|
+
<img src="https://image.pollinations.ai/prompt/beautiful%20landscape%20with%20mountains" alt="beautiful landscape with mountains">
|
|
479
|
+
</div>
|
|
325
480
|
</body>
|
|
326
481
|
</html>
|
|
327
482
|
|
|
@@ -330,15 +485,19 @@
|
|
|
330
485
|
|
|
331
486
|
## Частые ошибки и как их избежать
|
|
332
487
|
|
|
333
|
-
1. **Ошибка формата
|
|
488
|
+
1. **Ошибка формата параметров**: Передача `elements` как строки вместо объекта
|
|
489
|
+
- ❌ Неправильно: `"elements": "{\"mychart\":{...}}"`
|
|
490
|
+
- ✅ Правильно: `"elements": {"mychart":{...}}`
|
|
491
|
+
|
|
492
|
+
2. **Ошибка формата цвета**: Передача `borderColor` или `backgroundColor` как строк вместо массивов
|
|
334
493
|
- ❌ Неправильно: `"borderColor": "red"`
|
|
335
494
|
- ✅ Правильно: `"borderColor": ["red"]`
|
|
336
495
|
|
|
337
|
-
|
|
496
|
+
3. **Ошибка формата данных**: Передача числовых данных как отдельных значений вместо массивов
|
|
338
497
|
- ❌ Неправильно: `"data": 10`
|
|
339
498
|
- ✅ Правильно: `"data": [10]`
|
|
340
499
|
|
|
341
|
-
|
|
500
|
+
4. **Ошибка формата меток**: Передача меток как отдельных значений вместо массивов
|
|
342
501
|
- ❌ Неправильно: `"labels": "Январь"`
|
|
343
502
|
- ✅ Правильно: `"labels": ["Январь"]`
|
|
344
503
|
|
|
@@ -348,5 +507,7 @@
|
|
|
348
507
|
2. Если какой-либо шаг завершается ошибкой, сообщите пользователю об этом и предложите решение
|
|
349
508
|
3. Убедитесь, что все пути к файлам корректны и файлы действительно существуют
|
|
350
509
|
4. При работе с Claude Desktop используйте параметр `tempDirectory` при генерации отчетов для избежания проблем с правами доступа
|
|
510
|
+
5. Создавайте отчеты с красивым оформлением, используя заголовки, списки и другие элементы форматирования
|
|
511
|
+
6. Добавляйте в отчеты диаграммы и изображения для лучшей визуализации данных
|
|
351
512
|
|
|
352
513
|
Следование этим инструкциям обеспечит качественное и полное взаимодействие с пользователем при работе с инструментом генерации отчетов.
|
package/dist/index.js
CHANGED
|
@@ -102,7 +102,7 @@ if (process.argv.length === 2) {
|
|
|
102
102
|
// No command specified, run in stdio mode using MCP SDK
|
|
103
103
|
const mcpServer = new McpServer({
|
|
104
104
|
name: "report_gen_mcp",
|
|
105
|
-
version: "1.3.
|
|
105
|
+
version: "1.3.2",
|
|
106
106
|
}, {
|
|
107
107
|
// Disable health check to prevent automatic calls
|
|
108
108
|
capabilities: {
|
|
@@ -100,18 +100,69 @@ export async function generateReport(document, elements, outputFile) {
|
|
|
100
100
|
// Wrap in full HTML template with Chart.js library
|
|
101
101
|
const template = `
|
|
102
102
|
<!DOCTYPE html>
|
|
103
|
-
<html lang="
|
|
103
|
+
<html lang="ru">
|
|
104
104
|
<head>
|
|
105
105
|
<meta charset="UTF-8">
|
|
106
|
-
<title
|
|
106
|
+
<title>Отчет</title>
|
|
107
107
|
<style>
|
|
108
|
-
body {
|
|
109
|
-
|
|
108
|
+
body {
|
|
109
|
+
font-family: Arial, sans-serif;
|
|
110
|
+
margin: 40px;
|
|
111
|
+
background-color: #f5f5f5;
|
|
112
|
+
}
|
|
113
|
+
.container {
|
|
114
|
+
max-width: 1200px;
|
|
115
|
+
margin: 0 auto;
|
|
116
|
+
background-color: white;
|
|
117
|
+
padding: 30px;
|
|
118
|
+
border-radius: 10px;
|
|
119
|
+
box-shadow: 0 0 10px rgba(0,0,0,0.1);
|
|
120
|
+
}
|
|
121
|
+
h1, h2, h3 {
|
|
122
|
+
color: #333;
|
|
123
|
+
}
|
|
124
|
+
h1 {
|
|
125
|
+
border-bottom: 2px solid #3498db;
|
|
126
|
+
padding-bottom: 10px;
|
|
127
|
+
}
|
|
128
|
+
h2 {
|
|
129
|
+
border-left: 4px solid #3498db;
|
|
130
|
+
padding-left: 15px;
|
|
131
|
+
}
|
|
132
|
+
.chart-container, .image-container {
|
|
133
|
+
margin: 30px 0;
|
|
134
|
+
text-align: center;
|
|
135
|
+
}
|
|
136
|
+
.chart-container canvas, .image-container img {
|
|
137
|
+
max-width: 100%;
|
|
138
|
+
height: auto;
|
|
139
|
+
border: 1px solid #ddd;
|
|
140
|
+
border-radius: 5px;
|
|
141
|
+
}
|
|
142
|
+
p {
|
|
143
|
+
line-height: 1.6;
|
|
144
|
+
text-align: justify;
|
|
145
|
+
}
|
|
146
|
+
ul, ol {
|
|
147
|
+
margin: 20px 0;
|
|
148
|
+
padding-left: 30px;
|
|
149
|
+
}
|
|
150
|
+
li {
|
|
151
|
+
margin: 10px 0;
|
|
152
|
+
}
|
|
153
|
+
strong {
|
|
154
|
+
color: #e74c3c;
|
|
155
|
+
}
|
|
156
|
+
em {
|
|
157
|
+
color: #2ecc71;
|
|
158
|
+
}
|
|
110
159
|
</style>
|
|
111
160
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
112
161
|
</head>
|
|
113
162
|
<body>
|
|
114
|
-
|
|
163
|
+
<div class="container">
|
|
164
|
+
<%- htmlContent %>
|
|
165
|
+
</div>
|
|
115
166
|
</body>
|
|
116
167
|
</html>
|
|
117
168
|
`;
|