@redocly/config 0.53.1 → 0.55.0

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.
@@ -899,9 +899,6 @@ export declare const apiConfigSchema: {
899
899
  readonly hideLoading: {
900
900
  readonly type: 'boolean';
901
901
  };
902
- readonly hideSidebar: {
903
- readonly type: 'boolean';
904
- };
905
902
  readonly feedback: {
906
903
  readonly type: 'object';
907
904
  readonly properties: {
@@ -2814,14 +2811,6 @@ export declare const apiConfigSchema: {
2814
2811
  };
2815
2812
  readonly additionalProperties: false;
2816
2813
  };
2817
- readonly sidebar: {
2818
- readonly type: 'object';
2819
- readonly properties: {
2820
- readonly hide: {
2821
- readonly type: 'boolean';
2822
- };
2823
- };
2824
- };
2825
2814
  readonly downloadUrls: {
2826
2815
  readonly type: 'array';
2827
2816
  readonly items: {
@@ -3182,9 +3171,6 @@ export declare const apiConfigSchema: {
3182
3171
  readonly hideLoading: {
3183
3172
  readonly type: 'boolean';
3184
3173
  };
3185
- readonly hideSidebar: {
3186
- readonly type: 'boolean';
3187
- };
3188
3174
  readonly feedback: {
3189
3175
  readonly type: 'object';
3190
3176
  readonly properties: {
@@ -5097,14 +5083,6 @@ export declare const apiConfigSchema: {
5097
5083
  };
5098
5084
  readonly additionalProperties: false;
5099
5085
  };
5100
- readonly sidebar: {
5101
- readonly type: 'object';
5102
- readonly properties: {
5103
- readonly hide: {
5104
- readonly type: 'boolean';
5105
- };
5106
- };
5107
- };
5108
5086
  readonly downloadUrls: {
5109
5087
  readonly type: 'array';
5110
5088
  readonly items: {
@@ -7755,9 +7733,6 @@ export declare const redoclyConfigSchema: {
7755
7733
  readonly hideLoading: {
7756
7734
  readonly type: 'boolean';
7757
7735
  };
7758
- readonly hideSidebar: {
7759
- readonly type: 'boolean';
7760
- };
7761
7736
  readonly feedback: {
7762
7737
  readonly type: 'object';
7763
7738
  readonly properties: {
@@ -9670,14 +9645,6 @@ export declare const redoclyConfigSchema: {
9670
9645
  };
9671
9646
  readonly additionalProperties: false;
9672
9647
  };
9673
- readonly sidebar: {
9674
- readonly type: 'object';
9675
- readonly properties: {
9676
- readonly hide: {
9677
- readonly type: 'boolean';
9678
- };
9679
- };
9680
- };
9681
9648
  readonly downloadUrls: {
9682
9649
  readonly type: 'array';
9683
9650
  readonly items: {
@@ -10038,9 +10005,6 @@ export declare const redoclyConfigSchema: {
10038
10005
  readonly hideLoading: {
10039
10006
  readonly type: 'boolean';
10040
10007
  };
10041
- readonly hideSidebar: {
10042
- readonly type: 'boolean';
10043
- };
10044
10008
  readonly feedback: {
10045
10009
  readonly type: 'object';
10046
10010
  readonly properties: {
@@ -11953,14 +11917,6 @@ export declare const redoclyConfigSchema: {
11953
11917
  };
11954
11918
  readonly additionalProperties: false;
11955
11919
  };
11956
- readonly sidebar: {
11957
- readonly type: 'object';
11958
- readonly properties: {
11959
- readonly hide: {
11960
- readonly type: 'boolean';
11961
- };
11962
- };
11963
- };
11964
11920
  readonly downloadUrls: {
11965
11921
  readonly type: 'array';
11966
11922
  readonly items: {
@@ -14235,9 +14191,6 @@ export declare const redoclyConfigSchema: {
14235
14191
  readonly hideLoading: {
14236
14192
  readonly type: 'boolean';
14237
14193
  };
14238
- readonly hideSidebar: {
14239
- readonly type: 'boolean';
14240
- };
14241
14194
  readonly feedback: {
14242
14195
  readonly type: 'object';
14243
14196
  readonly properties: {
@@ -16427,14 +16380,6 @@ export declare const redoclyConfigSchema: {
16427
16380
  };
16428
16381
  readonly additionalProperties: false;
16429
16382
  };
16430
- readonly sidebar: {
16431
- readonly type: 'object';
16432
- readonly properties: {
16433
- readonly hide: {
16434
- readonly type: 'boolean';
16435
- };
16436
- };
16437
- };
16438
16383
  readonly downloadUrls: {
16439
16384
  readonly type: 'array';
16440
16385
  readonly items: {
@@ -21226,9 +21171,6 @@ export declare const redoclyConfigSchema: {
21226
21171
  readonly hideLoading: {
21227
21172
  readonly type: 'boolean';
21228
21173
  };
21229
- readonly hideSidebar: {
21230
- readonly type: 'boolean';
21231
- };
21232
21174
  readonly feedback: {
21233
21175
  readonly type: 'object';
21234
21176
  readonly properties: {
@@ -23141,14 +23083,6 @@ export declare const redoclyConfigSchema: {
23141
23083
  };
23142
23084
  readonly additionalProperties: false;
23143
23085
  };
23144
- readonly sidebar: {
23145
- readonly type: 'object';
23146
- readonly properties: {
23147
- readonly hide: {
23148
- readonly type: 'boolean';
23149
- };
23150
- };
23151
- };
23152
23086
  readonly downloadUrls: {
23153
23087
  readonly type: 'array';
23154
23088
  readonly items: {
@@ -26692,6 +26626,9 @@ export declare const redoclyConfigSchema: {
26692
26626
  readonly type: 'string';
26693
26627
  };
26694
26628
  };
26629
+ readonly publicEndpoint: {
26630
+ readonly type: 'boolean';
26631
+ };
26695
26632
  };
26696
26633
  readonly additionalProperties: false;
26697
26634
  };
@@ -27796,9 +27733,6 @@ export declare const rootRedoclyConfigSchema: {
27796
27733
  readonly hideLoading: {
27797
27734
  readonly type: 'boolean';
27798
27735
  };
27799
- readonly hideSidebar: {
27800
- readonly type: 'boolean';
27801
- };
27802
27736
  readonly feedback: {
27803
27737
  readonly type: 'object';
27804
27738
  readonly properties: {
@@ -29711,14 +29645,6 @@ export declare const rootRedoclyConfigSchema: {
29711
29645
  };
29712
29646
  readonly additionalProperties: false;
29713
29647
  };
29714
- readonly sidebar: {
29715
- readonly type: 'object';
29716
- readonly properties: {
29717
- readonly hide: {
29718
- readonly type: 'boolean';
29719
- };
29720
- };
29721
- };
29722
29648
  readonly downloadUrls: {
29723
29649
  readonly type: 'array';
29724
29650
  readonly items: {
@@ -30079,9 +30005,6 @@ export declare const rootRedoclyConfigSchema: {
30079
30005
  readonly hideLoading: {
30080
30006
  readonly type: 'boolean';
30081
30007
  };
30082
- readonly hideSidebar: {
30083
- readonly type: 'boolean';
30084
- };
30085
30008
  readonly feedback: {
30086
30009
  readonly type: 'object';
30087
30010
  readonly properties: {
@@ -31994,14 +31917,6 @@ export declare const rootRedoclyConfigSchema: {
31994
31917
  };
31995
31918
  readonly additionalProperties: false;
31996
31919
  };
31997
- readonly sidebar: {
31998
- readonly type: 'object';
31999
- readonly properties: {
32000
- readonly hide: {
32001
- readonly type: 'boolean';
32002
- };
32003
- };
32004
- };
32005
31920
  readonly downloadUrls: {
32006
31921
  readonly type: 'array';
32007
31922
  readonly items: {
@@ -34276,9 +34191,6 @@ export declare const rootRedoclyConfigSchema: {
34276
34191
  readonly hideLoading: {
34277
34192
  readonly type: 'boolean';
34278
34193
  };
34279
- readonly hideSidebar: {
34280
- readonly type: 'boolean';
34281
- };
34282
34194
  readonly feedback: {
34283
34195
  readonly type: 'object';
34284
34196
  readonly properties: {
@@ -36468,14 +36380,6 @@ export declare const rootRedoclyConfigSchema: {
36468
36380
  };
36469
36381
  readonly additionalProperties: false;
36470
36382
  };
36471
- readonly sidebar: {
36472
- readonly type: 'object';
36473
- readonly properties: {
36474
- readonly hide: {
36475
- readonly type: 'boolean';
36476
- };
36477
- };
36478
- };
36479
36383
  readonly downloadUrls: {
36480
36384
  readonly type: 'array';
36481
36385
  readonly items: {
@@ -41267,9 +41171,6 @@ export declare const rootRedoclyConfigSchema: {
41267
41171
  readonly hideLoading: {
41268
41172
  readonly type: 'boolean';
41269
41173
  };
41270
- readonly hideSidebar: {
41271
- readonly type: 'boolean';
41272
- };
41273
41174
  readonly feedback: {
41274
41175
  readonly type: 'object';
41275
41176
  readonly properties: {
@@ -43182,14 +43083,6 @@ export declare const rootRedoclyConfigSchema: {
43182
43083
  };
43183
43084
  readonly additionalProperties: false;
43184
43085
  };
43185
- readonly sidebar: {
43186
- readonly type: 'object';
43187
- readonly properties: {
43188
- readonly hide: {
43189
- readonly type: 'boolean';
43190
- };
43191
- };
43192
- };
43193
43086
  readonly downloadUrls: {
43194
43087
  readonly type: 'array';
43195
43088
  readonly items: {
@@ -46733,6 +46626,9 @@ export declare const rootRedoclyConfigSchema: {
46733
46626
  readonly type: 'string';
46734
46627
  };
46735
46628
  };
46629
+ readonly publicEndpoint: {
46630
+ readonly type: 'boolean';
46631
+ };
46736
46632
  };
46737
46633
  readonly additionalProperties: false;
46738
46634
  };
@@ -47835,9 +47731,6 @@ export declare const rootRedoclyConfigSchema: {
47835
47731
  readonly hideLoading: {
47836
47732
  readonly type: 'boolean';
47837
47733
  };
47838
- readonly hideSidebar: {
47839
- readonly type: 'boolean';
47840
- };
47841
47734
  readonly feedback: {
47842
47735
  readonly type: 'object';
47843
47736
  readonly properties: {
@@ -49750,14 +49643,6 @@ export declare const rootRedoclyConfigSchema: {
49750
49643
  };
49751
49644
  readonly additionalProperties: false;
49752
49645
  };
49753
- readonly sidebar: {
49754
- readonly type: 'object';
49755
- readonly properties: {
49756
- readonly hide: {
49757
- readonly type: 'boolean';
49758
- };
49759
- };
49760
- };
49761
49646
  readonly downloadUrls: {
49762
49647
  readonly type: 'array';
49763
49648
  readonly items: {
@@ -50118,9 +50003,6 @@ export declare const rootRedoclyConfigSchema: {
50118
50003
  readonly hideLoading: {
50119
50004
  readonly type: 'boolean';
50120
50005
  };
50121
- readonly hideSidebar: {
50122
- readonly type: 'boolean';
50123
- };
50124
50006
  readonly feedback: {
50125
50007
  readonly type: 'object';
50126
50008
  readonly properties: {
@@ -52033,14 +51915,6 @@ export declare const rootRedoclyConfigSchema: {
52033
51915
  };
52034
51916
  readonly additionalProperties: false;
52035
51917
  };
52036
- readonly sidebar: {
52037
- readonly type: 'object';
52038
- readonly properties: {
52039
- readonly hide: {
52040
- readonly type: 'boolean';
52041
- };
52042
- };
52043
- };
52044
51918
  readonly downloadUrls: {
52045
51919
  readonly type: 'array';
52046
51920
  readonly items: {
@@ -54315,9 +54189,6 @@ export declare const rootRedoclyConfigSchema: {
54315
54189
  readonly hideLoading: {
54316
54190
  readonly type: 'boolean';
54317
54191
  };
54318
- readonly hideSidebar: {
54319
- readonly type: 'boolean';
54320
- };
54321
54192
  readonly feedback: {
54322
54193
  readonly type: 'object';
54323
54194
  readonly properties: {
@@ -56507,14 +56378,6 @@ export declare const rootRedoclyConfigSchema: {
56507
56378
  };
56508
56379
  readonly additionalProperties: false;
56509
56380
  };
56510
- readonly sidebar: {
56511
- readonly type: 'object';
56512
- readonly properties: {
56513
- readonly hide: {
56514
- readonly type: 'boolean';
56515
- };
56516
- };
56517
- };
56518
56381
  readonly downloadUrls: {
56519
56382
  readonly type: 'array';
56520
56383
  readonly items: {
@@ -61306,9 +61169,6 @@ export declare const rootRedoclyConfigSchema: {
61306
61169
  readonly hideLoading: {
61307
61170
  readonly type: 'boolean';
61308
61171
  };
61309
- readonly hideSidebar: {
61310
- readonly type: 'boolean';
61311
- };
61312
61172
  readonly feedback: {
61313
61173
  readonly type: 'object';
61314
61174
  readonly properties: {
@@ -63221,14 +63081,6 @@ export declare const rootRedoclyConfigSchema: {
63221
63081
  };
63222
63082
  readonly additionalProperties: false;
63223
63083
  };
63224
- readonly sidebar: {
63225
- readonly type: 'object';
63226
- readonly properties: {
63227
- readonly hide: {
63228
- readonly type: 'boolean';
63229
- };
63230
- };
63231
- };
63232
63084
  readonly downloadUrls: {
63233
63085
  readonly type: 'array';
63234
63086
  readonly items: {
@@ -66772,6 +66624,9 @@ export declare const rootRedoclyConfigSchema: {
66772
66624
  readonly type: 'string';
66773
66625
  };
66774
66626
  };
66627
+ readonly publicEndpoint: {
66628
+ readonly type: 'boolean';
66629
+ };
66775
66630
  };
66776
66631
  readonly additionalProperties: false;
66777
66632
  };
@@ -1,4 +1,5 @@
1
1
  export * from './api-functions-types.js';
2
+ export * from './mcp-tools-types.js';
2
3
  export * from './config-types.js';
3
4
  export * from './portal-shared-types.js';
4
5
  export * from './catalog-entity-types.js';
@@ -0,0 +1,81 @@
1
+ import type { JSONSchema } from 'json-schema-to-ts';
2
+ import type { ApiFunctionsContext, ApiFunctionsContextMethods } from './api-functions-types.js';
3
+ /** A JSON Schema (draft-07) object, as accepted by MCP tool definitions. */
4
+ export type McpToolJsonSchema = Exclude<JSONSchema, boolean>;
5
+ export type McpToolJsonValue = string | number | boolean | null | McpToolJsonValue[] | {
6
+ [key: string]: McpToolJsonValue;
7
+ };
8
+ /** Structurally compatible with the MCP protocol `CallToolResult`. */
9
+ export type McpToolResult = {
10
+ content: Array<{
11
+ type: 'text' | 'image' | 'audio' | 'resource' | 'resource_link';
12
+ text?: string;
13
+ [key: string]: unknown;
14
+ }>;
15
+ structuredContent?: Record<string, unknown>;
16
+ isError?: boolean;
17
+ _meta?: Record<string, unknown>;
18
+ };
19
+ /** Behavior hints for MCP clients, as defined by the MCP specification. */
20
+ export type McpToolAnnotations = {
21
+ title?: string;
22
+ readOnlyHint?: boolean;
23
+ destructiveHint?: boolean;
24
+ idempotentHint?: boolean;
25
+ openWorldHint?: boolean;
26
+ };
27
+ export type McpToolFileSystem = {
28
+ /**
29
+ * Reads a text file from the built project output (which includes a Markdown
30
+ * twin of every page). A path that escapes the output directory is rejected.
31
+ */
32
+ readFile: (path: string) => Promise<string>;
33
+ };
34
+ /** Context passed to a custom MCP tool's `execute` and `isAvailable` functions. */
35
+ export type McpToolContext = Omit<ApiFunctionsContext, 'telemetry' | 'getKv' | keyof ApiFunctionsContextMethods> & {
36
+ /** Scoped file access to the built project output. */
37
+ fs: McpToolFileSystem;
38
+ /** Product names configured in the project. */
39
+ products?: string[];
40
+ /** Access token of the authenticated MCP connection. */
41
+ accessToken?: string;
42
+ /** Free-form caller metadata, parsed from the `X-Redocly-AI-Metadata` request header. */
43
+ metadata?: Record<string, unknown>;
44
+ };
45
+ /** MCP protocol metadata passed to a custom MCP tool's `execute` function. */
46
+ export type McpToolCallExtra = {
47
+ sessionId?: string;
48
+ requestId: string | number;
49
+ authInfo?: {
50
+ token: string;
51
+ clientId: string;
52
+ scopes: string[];
53
+ expiresAt?: number;
54
+ [key: string]: unknown;
55
+ };
56
+ requestInfo?: {
57
+ headers: Record<string, string | string[] | undefined>;
58
+ };
59
+ _meta?: Record<string, unknown>;
60
+ };
61
+ /**
62
+ * A custom MCP tool defined by a file in an `@mcp` folder.
63
+ * The file's default export must satisfy this type; the tool name is the file name without extension.
64
+ */
65
+ export type McpToolDefinition<TArgs extends Record<string, unknown> = Record<string, unknown>> = {
66
+ /** Human-readable description shown to MCP clients and AI models. */
67
+ description: string;
68
+ /** JSON Schema for the tool's input arguments. Defaults to an empty object schema. */
69
+ inputSchema?: McpToolJsonSchema & {
70
+ type?: 'object';
71
+ };
72
+ outputSchema?: McpToolJsonSchema;
73
+ annotations?: McpToolAnnotations;
74
+ /** Controls whether the tool is advertised to the current MCP connection. */
75
+ isAvailable?: (context: McpToolContext) => boolean | Promise<boolean>;
76
+ /**
77
+ * Runs the tool. A returned string or JSON value is wrapped into an MCP
78
+ * result automatically; throw an `Error` to report a failure.
79
+ */
80
+ execute: (args: TArgs, context: McpToolContext, extra: McpToolCallExtra) => McpToolResult | McpToolJsonValue | Promise<McpToolResult | McpToolJsonValue>;
81
+ };
@@ -1162,9 +1162,6 @@ export declare const themeConfigSchema: {
1162
1162
  readonly hideLoading: {
1163
1163
  readonly type: 'boolean';
1164
1164
  };
1165
- readonly hideSidebar: {
1166
- readonly type: 'boolean';
1167
- };
1168
1165
  readonly feedback: {
1169
1166
  readonly type: 'object';
1170
1167
  readonly properties: {
@@ -3354,14 +3351,6 @@ export declare const themeConfigSchema: {
3354
3351
  };
3355
3352
  readonly additionalProperties: false;
3356
3353
  };
3357
- readonly sidebar: {
3358
- readonly type: 'object';
3359
- readonly properties: {
3360
- readonly hide: {
3361
- readonly type: 'boolean';
3362
- };
3363
- };
3364
- };
3365
3354
  readonly downloadUrls: {
3366
3355
  readonly type: 'array';
3367
3356
  readonly items: {
@@ -1206,9 +1206,6 @@ export declare const openapiConfigSchema: {
1206
1206
  readonly hideLoading: {
1207
1207
  readonly type: 'boolean';
1208
1208
  };
1209
- readonly hideSidebar: {
1210
- readonly type: 'boolean';
1211
- };
1212
1209
  readonly feedback: {
1213
1210
  readonly type: 'object';
1214
1211
  readonly properties: {
@@ -2995,9 +2992,6 @@ export declare const asyncapiConfigSchema: {
2995
2992
  readonly hideLoading: {
2996
2993
  readonly type: 'boolean';
2997
2994
  };
2998
- readonly hideSidebar: {
2999
- readonly type: 'boolean';
3000
- };
3001
2995
  readonly feedback: {
3002
2996
  readonly type: 'object';
3003
2997
  readonly properties: {
@@ -134,14 +134,6 @@ export declare const graphqlConfigSchema: {
134
134
  };
135
135
  readonly additionalProperties: false;
136
136
  };
137
- readonly sidebar: {
138
- readonly type: 'object';
139
- readonly properties: {
140
- readonly hide: {
141
- readonly type: 'boolean';
142
- };
143
- };
144
- };
145
137
  readonly downloadUrls: {
146
138
  readonly type: 'array';
147
139
  readonly items: {