@robinmordasiewicz/f5xc-terraform-mcp 3.3.0 → 3.5.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.
- package/README.md +1 -1
- package/dist/docs/data-sources/bgp.md +2 -2
- package/dist/docs/data-sources/certificate.md +2 -2
- package/dist/docs/data-sources/log_receiver.md +2 -2
- package/dist/docs/data-sources/network_policy.md +2 -2
- package/dist/docs/data-sources/site.md +2 -2
- package/dist/docs/data-sources/workload.md +2 -2
- package/dist/docs/index.md +276 -0
- package/dist/docs/resources/bgp.md +238 -4
- package/dist/docs/resources/certificate.md +4 -56
- package/dist/docs/resources/cloud_connect.md +2 -2
- package/dist/docs/resources/log_receiver.md +44 -825
- package/dist/docs/resources/network_policy.md +217 -38
- package/dist/docs/resources/site.md +527 -233
- package/dist/docs/resources/workload.md +2951 -9
- package/dist/docs/specifications/api/CHANGELOG.md +4 -4
- package/dist/docs/specifications/api/README.md +1 -1
- package/dist/docs/specifications/api/domains/admin_console_and_ui.json +25 -25
- package/dist/docs/specifications/api/domains/ai_services.json +21 -21
- package/dist/docs/specifications/api/domains/api.json +173 -173
- package/dist/docs/specifications/api/domains/authentication.json +45 -45
- package/dist/docs/specifications/api/domains/bigip.json +94 -94
- package/dist/docs/specifications/api/domains/billing_and_usage.json +63 -63
- package/dist/docs/specifications/api/domains/blindfold.json +109 -109
- package/dist/docs/specifications/api/domains/bot_and_threat_defense.json +65 -65
- package/dist/docs/specifications/api/domains/cdn.json +177 -177
- package/dist/docs/specifications/api/domains/ce_management.json +76 -76
- package/dist/docs/specifications/api/domains/certificates.json +75 -75
- package/dist/docs/specifications/api/domains/cloud_infrastructure.json +112 -112
- package/dist/docs/specifications/api/domains/container_services.json +91 -91
- package/dist/docs/specifications/api/domains/data_and_privacy_security.json +66 -66
- package/dist/docs/specifications/api/domains/data_intelligence.json +62 -62
- package/dist/docs/specifications/api/domains/ddos.json +154 -154
- package/dist/docs/specifications/api/domains/dns.json +148 -148
- package/dist/docs/specifications/api/domains/managed_kubernetes.json +85 -85
- package/dist/docs/specifications/api/domains/marketplace.json +103 -103
- package/dist/docs/specifications/api/domains/network.json +230 -230
- package/dist/docs/specifications/api/domains/network_security.json +187 -187
- package/dist/docs/specifications/api/domains/nginx_one.json +62 -62
- package/dist/docs/specifications/api/domains/object_storage.json +12 -12
- package/dist/docs/specifications/api/domains/observability.json +102 -102
- package/dist/docs/specifications/api/domains/rate_limiting.json +52 -52
- package/dist/docs/specifications/api/domains/secops_and_incident_response.json +36 -36
- package/dist/docs/specifications/api/domains/service_mesh.json +119 -119
- package/dist/docs/specifications/api/domains/shape.json +313 -313
- package/dist/docs/specifications/api/domains/sites.json +349 -349
- package/dist/docs/specifications/api/domains/statistics.json +225 -225
- package/dist/docs/specifications/api/domains/support.json +108 -108
- package/dist/docs/specifications/api/domains/telemetry_and_insights.json +72 -72
- package/dist/docs/specifications/api/domains/tenant_and_identity.json +268 -268
- package/dist/docs/specifications/api/domains/threat_campaign.json +66 -66
- package/dist/docs/specifications/api/domains/users.json +66 -66
- package/dist/docs/specifications/api/domains/virtual.json +244 -244
- package/dist/docs/specifications/api/domains/vpm_and_node_management.json +1 -1
- package/dist/docs/specifications/api/domains/waf.json +139 -139
- package/dist/docs/specifications/api/index.json +12 -12
- package/dist/docs/specifications/api/openapi.json +2600 -2600
- package/dist/docs/specifications/api/openapi.yaml +2600 -2600
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +75 -4
- package/dist/index.js.map +1 -1
- package/dist/metadata/error-patterns.json +192 -0
- package/dist/metadata/resource-metadata.json +13095 -0
- package/dist/metadata/validation-patterns.json +69 -0
- package/dist/schemas/common.d.ts +33 -0
- package/dist/schemas/common.d.ts.map +1 -1
- package/dist/schemas/common.js +32 -0
- package/dist/schemas/common.js.map +1 -1
- package/dist/services/documentation.d.ts.map +1 -1
- package/dist/services/documentation.js +9 -0
- package/dist/services/documentation.js.map +1 -1
- package/dist/services/metadata.d.ts +193 -0
- package/dist/services/metadata.d.ts.map +1 -0
- package/dist/services/metadata.js +367 -0
- package/dist/services/metadata.js.map +1 -0
- package/dist/tools/discover.d.ts.map +1 -1
- package/dist/tools/discover.js +8 -0
- package/dist/tools/discover.js.map +1 -1
- package/dist/tools/metadata.d.ts +19 -0
- package/dist/tools/metadata.d.ts.map +1 -0
- package/dist/tools/metadata.js +612 -0
- package/dist/tools/metadata.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata Service for MCP Server
|
|
3
|
+
*
|
|
4
|
+
* Loads and provides access to resource metadata extracted during provider generation.
|
|
5
|
+
* This enables AI assistants to make deterministic configuration decisions.
|
|
6
|
+
*
|
|
7
|
+
* Metadata includes:
|
|
8
|
+
* - OneOf groups (mutually exclusive fields)
|
|
9
|
+
* - Validation patterns (regex/range rules)
|
|
10
|
+
* - Default values and recommendations
|
|
11
|
+
* - Attribute metadata (types, requirements)
|
|
12
|
+
*/
|
|
13
|
+
import { readFileSync, existsSync } from 'fs';
|
|
14
|
+
import { join, dirname } from 'path';
|
|
15
|
+
import { fileURLToPath } from 'url';
|
|
16
|
+
// Get paths
|
|
17
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
18
|
+
const __dirname = dirname(__filename);
|
|
19
|
+
const PACKAGE_ROOT = join(__dirname, '..', '..'); // mcp-server/
|
|
20
|
+
const BUNDLED_METADATA = join(PACKAGE_ROOT, 'dist', 'metadata');
|
|
21
|
+
const PROJECT_ROOT = join(PACKAGE_ROOT, '..'); // terraform-provider-f5xc/
|
|
22
|
+
const PROJECT_METADATA = join(PROJECT_ROOT, 'tools', 'metadata');
|
|
23
|
+
// =============================================================================
|
|
24
|
+
// CACHING
|
|
25
|
+
// =============================================================================
|
|
26
|
+
let resourceMetadataCache = null;
|
|
27
|
+
let validationPatternsCache = null;
|
|
28
|
+
let errorPatternsCache = null;
|
|
29
|
+
// =============================================================================
|
|
30
|
+
// PATH RESOLUTION
|
|
31
|
+
// =============================================================================
|
|
32
|
+
/**
|
|
33
|
+
* Get the metadata directory path
|
|
34
|
+
* Uses bundled metadata if available (npm), otherwise project metadata (development)
|
|
35
|
+
*/
|
|
36
|
+
function getMetadataPath() {
|
|
37
|
+
if (existsSync(BUNDLED_METADATA)) {
|
|
38
|
+
return BUNDLED_METADATA;
|
|
39
|
+
}
|
|
40
|
+
return PROJECT_METADATA;
|
|
41
|
+
}
|
|
42
|
+
// =============================================================================
|
|
43
|
+
// LOADING FUNCTIONS
|
|
44
|
+
// =============================================================================
|
|
45
|
+
/**
|
|
46
|
+
* Load resource metadata from JSON file
|
|
47
|
+
*/
|
|
48
|
+
export function loadResourceMetadata() {
|
|
49
|
+
if (resourceMetadataCache) {
|
|
50
|
+
return resourceMetadataCache;
|
|
51
|
+
}
|
|
52
|
+
const metadataPath = join(getMetadataPath(), 'resource-metadata.json');
|
|
53
|
+
if (!existsSync(metadataPath)) {
|
|
54
|
+
console.error(`Resource metadata not found: ${metadataPath}`);
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
try {
|
|
58
|
+
const content = readFileSync(metadataPath, 'utf-8');
|
|
59
|
+
resourceMetadataCache = JSON.parse(content);
|
|
60
|
+
return resourceMetadataCache;
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
console.error(`Failed to load resource metadata: ${error}`);
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Load validation patterns from JSON file
|
|
69
|
+
*/
|
|
70
|
+
export function loadValidationPatterns() {
|
|
71
|
+
if (validationPatternsCache) {
|
|
72
|
+
return validationPatternsCache;
|
|
73
|
+
}
|
|
74
|
+
const patternsPath = join(getMetadataPath(), 'validation-patterns.json');
|
|
75
|
+
if (!existsSync(patternsPath)) {
|
|
76
|
+
console.error(`Validation patterns not found: ${patternsPath}`);
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
const content = readFileSync(patternsPath, 'utf-8');
|
|
81
|
+
validationPatternsCache = JSON.parse(content);
|
|
82
|
+
return validationPatternsCache;
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
console.error(`Failed to load validation patterns: ${error}`);
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Load error patterns from JSON file
|
|
91
|
+
*/
|
|
92
|
+
export function loadErrorPatterns() {
|
|
93
|
+
if (errorPatternsCache) {
|
|
94
|
+
return errorPatternsCache;
|
|
95
|
+
}
|
|
96
|
+
const errorPath = join(getMetadataPath(), 'error-patterns.json');
|
|
97
|
+
if (!existsSync(errorPath)) {
|
|
98
|
+
// Error patterns are optional
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
try {
|
|
102
|
+
const content = readFileSync(errorPath, 'utf-8');
|
|
103
|
+
errorPatternsCache = JSON.parse(content);
|
|
104
|
+
return errorPatternsCache;
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
console.error(`Failed to load error patterns: ${error}`);
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// =============================================================================
|
|
112
|
+
// QUERY FUNCTIONS
|
|
113
|
+
// =============================================================================
|
|
114
|
+
/**
|
|
115
|
+
* Get metadata for a specific resource
|
|
116
|
+
*/
|
|
117
|
+
export function getResourceMetadata(resourceName) {
|
|
118
|
+
const metadata = loadResourceMetadata();
|
|
119
|
+
if (!metadata)
|
|
120
|
+
return null;
|
|
121
|
+
// Try exact match first, then with underscores
|
|
122
|
+
const normalized = resourceName.toLowerCase().replace(/-/g, '_');
|
|
123
|
+
return metadata.resources[normalized] || metadata.resources[resourceName] || null;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get OneOf groups for a resource
|
|
127
|
+
*/
|
|
128
|
+
export function getResourceOneOfGroups(resourceName) {
|
|
129
|
+
const resource = getResourceMetadata(resourceName);
|
|
130
|
+
return resource?.oneof_groups || {};
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Get attributes with defaults for a resource
|
|
134
|
+
*/
|
|
135
|
+
export function getAttributesWithDefaults(resourceName) {
|
|
136
|
+
const resource = getResourceMetadata(resourceName);
|
|
137
|
+
if (!resource)
|
|
138
|
+
return {};
|
|
139
|
+
const defaults = {};
|
|
140
|
+
for (const [name, attr] of Object.entries(resource.attributes)) {
|
|
141
|
+
if (attr.default !== undefined) {
|
|
142
|
+
defaults[name] = attr.default;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
return defaults;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Get attributes with enum constraints for a resource
|
|
149
|
+
*/
|
|
150
|
+
export function getAttributesWithEnums(resourceName) {
|
|
151
|
+
const resource = getResourceMetadata(resourceName);
|
|
152
|
+
if (!resource)
|
|
153
|
+
return {};
|
|
154
|
+
const enums = {};
|
|
155
|
+
for (const [name, attr] of Object.entries(resource.attributes)) {
|
|
156
|
+
if (attr.enum && attr.enum.length > 0) {
|
|
157
|
+
enums[name] = attr.enum;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return enums;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Get required attributes for a resource
|
|
164
|
+
*/
|
|
165
|
+
export function getRequiredAttributes(resourceName) {
|
|
166
|
+
const resource = getResourceMetadata(resourceName);
|
|
167
|
+
if (!resource)
|
|
168
|
+
return [];
|
|
169
|
+
return Object.entries(resource.attributes)
|
|
170
|
+
.filter(([, attr]) => attr.required)
|
|
171
|
+
.map(([name]) => name);
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Get attributes that require replacement when changed
|
|
175
|
+
*/
|
|
176
|
+
export function getRequiresReplaceAttributes(resourceName) {
|
|
177
|
+
const resource = getResourceMetadata(resourceName);
|
|
178
|
+
if (!resource)
|
|
179
|
+
return [];
|
|
180
|
+
return Object.entries(resource.attributes)
|
|
181
|
+
.filter(([, attr]) => attr.plan_modifier === 'RequiresReplace')
|
|
182
|
+
.map(([name]) => name);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Get a specific validation pattern
|
|
186
|
+
*/
|
|
187
|
+
export function getValidationPattern(patternName) {
|
|
188
|
+
const patterns = loadValidationPatterns();
|
|
189
|
+
return patterns?.patterns[patternName] || null;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Get all validation patterns
|
|
193
|
+
*/
|
|
194
|
+
export function getAllValidationPatterns() {
|
|
195
|
+
const patterns = loadValidationPatterns();
|
|
196
|
+
return patterns?.patterns || {};
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* List all available resources in metadata
|
|
200
|
+
*/
|
|
201
|
+
export function listResourcesWithMetadata() {
|
|
202
|
+
const metadata = loadResourceMetadata();
|
|
203
|
+
return metadata ? Object.keys(metadata.resources) : [];
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Get metadata summary statistics
|
|
207
|
+
*/
|
|
208
|
+
export function getMetadataSummary() {
|
|
209
|
+
const metadata = loadResourceMetadata();
|
|
210
|
+
const patterns = loadValidationPatterns();
|
|
211
|
+
let resourcesWithOneOf = 0;
|
|
212
|
+
if (metadata) {
|
|
213
|
+
for (const resource of Object.values(metadata.resources)) {
|
|
214
|
+
if (resource.oneof_groups && Object.keys(resource.oneof_groups).length > 0) {
|
|
215
|
+
resourcesWithOneOf++;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
return {
|
|
220
|
+
resourceCount: metadata ? Object.keys(metadata.resources).length : 0,
|
|
221
|
+
resourcesWithOneOf,
|
|
222
|
+
validationPatternCount: patterns ? Object.keys(patterns.patterns).length : 0,
|
|
223
|
+
generatedAt: metadata?.generated_at || null,
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Check if metadata is available
|
|
228
|
+
*/
|
|
229
|
+
export function isMetadataAvailable() {
|
|
230
|
+
return existsSync(join(getMetadataPath(), 'resource-metadata.json'));
|
|
231
|
+
}
|
|
232
|
+
// =============================================================================
|
|
233
|
+
// NEW QUERY FUNCTIONS (Phase 5 additions)
|
|
234
|
+
// =============================================================================
|
|
235
|
+
/**
|
|
236
|
+
* Get subscription tier for a resource
|
|
237
|
+
*/
|
|
238
|
+
export function getResourceTier(resourceName) {
|
|
239
|
+
const resource = getResourceMetadata(resourceName);
|
|
240
|
+
return resource?.tier || null;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Get all resources requiring a specific tier
|
|
244
|
+
*/
|
|
245
|
+
export function getResourcesByTier(tier) {
|
|
246
|
+
const metadata = loadResourceMetadata();
|
|
247
|
+
if (!metadata)
|
|
248
|
+
return [];
|
|
249
|
+
return Object.entries(metadata.resources)
|
|
250
|
+
.filter(([, resource]) => resource.tier?.toUpperCase() === tier.toUpperCase())
|
|
251
|
+
.map(([name]) => name);
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Get import format for a resource
|
|
255
|
+
*/
|
|
256
|
+
export function getResourceImportFormat(resourceName) {
|
|
257
|
+
const resource = getResourceMetadata(resourceName);
|
|
258
|
+
return resource?.import_format || null;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Get dependencies for a resource
|
|
262
|
+
*/
|
|
263
|
+
export function getResourceDependencies(resourceName) {
|
|
264
|
+
const resource = getResourceMetadata(resourceName);
|
|
265
|
+
return resource?.dependencies || null;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Compute creation order based on dependencies (topological sort)
|
|
269
|
+
*/
|
|
270
|
+
export function computeCreationOrder(resourceName) {
|
|
271
|
+
const resource = getResourceMetadata(resourceName);
|
|
272
|
+
if (!resource?.dependencies?.references) {
|
|
273
|
+
return [resourceName];
|
|
274
|
+
}
|
|
275
|
+
const visited = new Set();
|
|
276
|
+
const result = [];
|
|
277
|
+
function visit(name) {
|
|
278
|
+
if (visited.has(name))
|
|
279
|
+
return;
|
|
280
|
+
visited.add(name);
|
|
281
|
+
const res = getResourceMetadata(name);
|
|
282
|
+
if (res?.dependencies?.references) {
|
|
283
|
+
for (const dep of res.dependencies.references) {
|
|
284
|
+
visit(dep);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
result.push(name);
|
|
288
|
+
}
|
|
289
|
+
visit(resourceName);
|
|
290
|
+
return result;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Get error code information
|
|
294
|
+
*/
|
|
295
|
+
export function getErrorCodeInfo(errorCode) {
|
|
296
|
+
const patterns = loadErrorPatterns();
|
|
297
|
+
return patterns?.error_codes[errorCode] || null;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Find error by pattern match
|
|
301
|
+
*/
|
|
302
|
+
export function findErrorByPattern(errorMessage) {
|
|
303
|
+
const patterns = loadErrorPatterns();
|
|
304
|
+
if (!patterns)
|
|
305
|
+
return null;
|
|
306
|
+
for (const [name, info] of Object.entries(patterns.common_patterns)) {
|
|
307
|
+
if (errorMessage.toLowerCase().includes(info.pattern.toLowerCase())) {
|
|
308
|
+
return { name, info };
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
return null;
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Get all error codes
|
|
315
|
+
*/
|
|
316
|
+
export function getAllErrorCodes() {
|
|
317
|
+
const patterns = loadErrorPatterns();
|
|
318
|
+
return patterns?.error_codes || {};
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Get diagnostic tips
|
|
322
|
+
*/
|
|
323
|
+
export function getDiagnosticTips() {
|
|
324
|
+
const patterns = loadErrorPatterns();
|
|
325
|
+
return patterns?.diagnostic_tips || {};
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Enhanced metadata summary with tier and dependency statistics
|
|
329
|
+
*/
|
|
330
|
+
export function getEnhancedMetadataSummary() {
|
|
331
|
+
const metadata = loadResourceMetadata();
|
|
332
|
+
const patterns = loadValidationPatterns();
|
|
333
|
+
const errors = loadErrorPatterns();
|
|
334
|
+
let resourcesWithOneOf = 0;
|
|
335
|
+
let resourcesWithDependencies = 0;
|
|
336
|
+
const resourcesWithTier = {
|
|
337
|
+
Standard: 0,
|
|
338
|
+
Advanced: 0,
|
|
339
|
+
Premium: 0,
|
|
340
|
+
};
|
|
341
|
+
if (metadata) {
|
|
342
|
+
for (const resource of Object.values(metadata.resources)) {
|
|
343
|
+
if (resource.oneof_groups && Object.keys(resource.oneof_groups).length > 0) {
|
|
344
|
+
resourcesWithOneOf++;
|
|
345
|
+
}
|
|
346
|
+
if (resource.dependencies?.references && resource.dependencies.references.length > 0) {
|
|
347
|
+
resourcesWithDependencies++;
|
|
348
|
+
}
|
|
349
|
+
if (resource.tier) {
|
|
350
|
+
const tier = resource.tier.charAt(0).toUpperCase() + resource.tier.slice(1).toLowerCase();
|
|
351
|
+
if (tier in resourcesWithTier) {
|
|
352
|
+
resourcesWithTier[tier]++;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
return {
|
|
358
|
+
resourceCount: metadata ? Object.keys(metadata.resources).length : 0,
|
|
359
|
+
resourcesWithOneOf,
|
|
360
|
+
resourcesWithDependencies,
|
|
361
|
+
resourcesWithTier,
|
|
362
|
+
validationPatternCount: patterns ? Object.keys(patterns.patterns).length : 0,
|
|
363
|
+
errorCodeCount: errors ? Object.keys(errors.error_codes).length : 0,
|
|
364
|
+
generatedAt: metadata?.generated_at || null,
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/services/metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/tools/discover.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAmDrD;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAY1E;
|
|
1
|
+
{"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/tools/discover.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAmDrD;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAY1E;AAuLD,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC"}
|
package/dist/tools/discover.js
CHANGED
|
@@ -63,6 +63,11 @@ function buildResponse(tools, verbose, format) {
|
|
|
63
63
|
}
|
|
64
64
|
function buildJsonResponse(tools, verbose) {
|
|
65
65
|
return {
|
|
66
|
+
provider: {
|
|
67
|
+
name: 'robinmordasiewicz/f5xc',
|
|
68
|
+
registry_url: 'https://registry.terraform.io/providers/robinmordasiewicz/f5xc/latest',
|
|
69
|
+
github_url: 'https://github.com/robinmordasiewicz/terraform-provider-f5xc',
|
|
70
|
+
},
|
|
66
71
|
tools: tools.map((t) => {
|
|
67
72
|
const tool = {
|
|
68
73
|
name: t.name,
|
|
@@ -85,6 +90,9 @@ function buildMarkdownResponse(tools, verbose) {
|
|
|
85
90
|
const lines = [
|
|
86
91
|
'# F5XC Terraform MCP Tools',
|
|
87
92
|
'',
|
|
93
|
+
'**Provider**: `robinmordasiewicz/f5xc`',
|
|
94
|
+
'**Registry**: https://registry.terraform.io/providers/robinmordasiewicz/f5xc/latest',
|
|
95
|
+
'',
|
|
88
96
|
`**Available Tools**: ${tools.length}`,
|
|
89
97
|
`**Token Estimate**: ${verbose ? '~2,000' : '~150'} tokens`,
|
|
90
98
|
'',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/tools/discover.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAa9F,MAAM,aAAa,GAAe;IAChC;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC;KACtC;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;KACtF;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,mCAAmC;QAChD,QAAQ,EAAE,cAAc;QACxB,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;KACrC;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;KAC1C;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,SAAS;KACpB;CACF,CAAC;AAEF,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAoB;IACvD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;IAErD,2BAA2B;IAC3B,MAAM,KAAK,GAAG,QAAQ,KAAK,KAAK;QAC9B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IAEzD,iBAAiB;IACjB,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IAEhE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CACpB,KAAiB,EACjB,OAAgB,EAChB,MAAsB;IAEtB,IAAI,MAAM,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,OAAO,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;
|
|
1
|
+
{"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/tools/discover.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Consolidated Metadata Tool Handler
|
|
3
|
+
*
|
|
4
|
+
* Tool: f5xc_terraform_metadata
|
|
5
|
+
*
|
|
6
|
+
* Provides access to resource metadata for deterministic AI configuration generation.
|
|
7
|
+
* Includes OneOf groups, validation patterns, defaults, and attribute information.
|
|
8
|
+
*/
|
|
9
|
+
import { MetadataInput } from '../schemas/common.js';
|
|
10
|
+
/**
|
|
11
|
+
* Handles the f5xc_terraform_metadata tool invocation
|
|
12
|
+
* Routes to appropriate operation based on input.operation
|
|
13
|
+
*/
|
|
14
|
+
export declare function handleMetadata(input: MetadataInput): Promise<string>;
|
|
15
|
+
export declare const METADATA_TOOL_DEFINITION: {
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/tools/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA8BrD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAoC1E;AA+xBD,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC"}
|