@mcp-consultant-tools/azure-data-factory 27.0.0-beta.1

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.
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Azure Data Factory Service
3
+ * Provides authentication and API operations for ADF.
4
+ */
5
+ import type { AdfConfig, AdfFactoryConfig, Pipeline, PipelineRun, CreateRunResponse, QueryPipelineRunsRequest, QueryPipelineRunsResponse, ActivityRun, QueryActivityRunsRequest, QueryActivityRunsResponse, Dataset, LinkedService, DataFlow, Trigger, QueryTriggerRunsRequest, QueryTriggerRunsResponse, IntegrationRuntime, IntegrationRuntimeStatus } from './types.js';
6
+ export declare class AdfService {
7
+ private config;
8
+ private msalClient;
9
+ private accessToken;
10
+ private tokenExpirationTime;
11
+ constructor(config: AdfConfig);
12
+ /**
13
+ * Get an access token for Azure Management API
14
+ */
15
+ private getAccessToken;
16
+ /**
17
+ * Get authorization headers
18
+ */
19
+ private getAuthHeaders;
20
+ /**
21
+ * Get all configured factories
22
+ */
23
+ getAllFactories(): AdfFactoryConfig[];
24
+ /**
25
+ * Get active factories
26
+ */
27
+ getActiveFactories(): AdfFactoryConfig[];
28
+ /**
29
+ * Get factory by ID
30
+ */
31
+ getFactoryById(factoryId: string): AdfFactoryConfig;
32
+ /**
33
+ * Get the default factory (first active factory)
34
+ */
35
+ getDefaultFactory(): AdfFactoryConfig;
36
+ /**
37
+ * Get factory by ID or default
38
+ */
39
+ resolveFactory(factoryId?: string): AdfFactoryConfig;
40
+ /**
41
+ * Get base URL for a factory
42
+ */
43
+ private getBaseUrl;
44
+ /**
45
+ * Check if write operations are enabled
46
+ */
47
+ isWriteEnabled(): boolean;
48
+ /**
49
+ * Check if trigger control is enabled
50
+ */
51
+ isTriggerControlEnabled(): boolean;
52
+ private get;
53
+ private post;
54
+ private handleError;
55
+ /**
56
+ * List all pipelines in a factory
57
+ */
58
+ listPipelines(factoryId?: string): Promise<Pipeline[]>;
59
+ /**
60
+ * Get a pipeline by name
61
+ */
62
+ getPipeline(pipelineName: string, factoryId?: string): Promise<Pipeline>;
63
+ /**
64
+ * Run a pipeline with optional parameters
65
+ */
66
+ runPipeline(pipelineName: string, parameters?: Record<string, any>, factoryId?: string, options?: {
67
+ referencePipelineRunId?: string;
68
+ isRecovery?: boolean;
69
+ startFromFailure?: boolean;
70
+ startActivityName?: string;
71
+ }): Promise<CreateRunResponse>;
72
+ /**
73
+ * Get a pipeline run by ID
74
+ */
75
+ getPipelineRun(runId: string, factoryId?: string): Promise<PipelineRun>;
76
+ /**
77
+ * Cancel a pipeline run
78
+ */
79
+ cancelPipelineRun(runId: string, factoryId?: string): Promise<void>;
80
+ /**
81
+ * Query pipeline runs with filters
82
+ */
83
+ queryPipelineRuns(request: QueryPipelineRunsRequest, factoryId?: string): Promise<QueryPipelineRunsResponse>;
84
+ /**
85
+ * Query activity runs for a pipeline run
86
+ */
87
+ queryActivityRuns(runId: string, request: QueryActivityRunsRequest, factoryId?: string): Promise<QueryActivityRunsResponse>;
88
+ /**
89
+ * Get activity runs for a pipeline run (simplified)
90
+ */
91
+ getActivityRuns(runId: string, factoryId?: string, filters?: {
92
+ status?: string;
93
+ activityName?: string;
94
+ }): Promise<ActivityRun[]>;
95
+ /**
96
+ * List all datasets in a factory
97
+ */
98
+ listDatasets(factoryId?: string): Promise<Dataset[]>;
99
+ /**
100
+ * Get a dataset by name
101
+ */
102
+ getDataset(datasetName: string, factoryId?: string): Promise<Dataset>;
103
+ /**
104
+ * List all linked services in a factory (credentials sanitized)
105
+ */
106
+ listLinkedServices(factoryId?: string): Promise<LinkedService[]>;
107
+ /**
108
+ * Sanitize linked service to remove sensitive data
109
+ */
110
+ private sanitizeLinkedService;
111
+ /**
112
+ * List all data flows in a factory
113
+ */
114
+ listDataFlows(factoryId?: string): Promise<DataFlow[]>;
115
+ /**
116
+ * Get a data flow by name
117
+ */
118
+ getDataFlow(dataFlowName: string, factoryId?: string): Promise<DataFlow>;
119
+ /**
120
+ * List all triggers in a factory
121
+ */
122
+ listTriggers(factoryId?: string): Promise<Trigger[]>;
123
+ /**
124
+ * Get a trigger by name
125
+ */
126
+ getTrigger(triggerName: string, factoryId?: string): Promise<Trigger>;
127
+ /**
128
+ * Start a trigger
129
+ */
130
+ startTrigger(triggerName: string, factoryId?: string): Promise<void>;
131
+ /**
132
+ * Stop a trigger
133
+ */
134
+ stopTrigger(triggerName: string, factoryId?: string): Promise<void>;
135
+ /**
136
+ * Query trigger runs
137
+ */
138
+ queryTriggerRuns(request: QueryTriggerRunsRequest, factoryId?: string): Promise<QueryTriggerRunsResponse>;
139
+ /**
140
+ * List all integration runtimes in a factory
141
+ */
142
+ listIntegrationRuntimes(factoryId?: string): Promise<IntegrationRuntime[]>;
143
+ /**
144
+ * Get integration runtime status
145
+ */
146
+ getIntegrationRuntimeStatus(irName: string, factoryId?: string): Promise<IntegrationRuntimeStatus>;
147
+ /**
148
+ * Start an integration runtime (managed IR only)
149
+ */
150
+ startIntegrationRuntime(irName: string, factoryId?: string): Promise<void>;
151
+ /**
152
+ * Stop an integration runtime (managed IR only)
153
+ */
154
+ stopIntegrationRuntime(irName: string, factoryId?: string): Promise<void>;
155
+ }
156
+ //# sourceMappingURL=AdfService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdfService.d.ts","sourceRoot":"","sources":["../src/AdfService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,482 @@
1
+ /**
2
+ * Azure Data Factory Service
3
+ * Provides authentication and API operations for ADF.
4
+ */
5
+ import { ConfidentialClientApplication } from '@azure/msal-node';
6
+ import axios from 'axios';
7
+ const API_VERSION = '2018-06-01';
8
+ export class AdfService {
9
+ config;
10
+ msalClient;
11
+ accessToken = null;
12
+ tokenExpirationTime = 0;
13
+ constructor(config) {
14
+ this.config = config;
15
+ // Initialize MSAL client
16
+ this.msalClient = new ConfidentialClientApplication({
17
+ auth: {
18
+ clientId: config.clientId,
19
+ clientSecret: config.clientSecret,
20
+ authority: `https://login.microsoftonline.com/${config.tenantId}`,
21
+ },
22
+ });
23
+ }
24
+ // ========================================
25
+ // Authentication
26
+ // ========================================
27
+ /**
28
+ * Get an access token for Azure Management API
29
+ */
30
+ async getAccessToken() {
31
+ const currentTime = Date.now();
32
+ // Return cached token if still valid (with 5 minute buffer)
33
+ if (this.accessToken && this.tokenExpirationTime > currentTime) {
34
+ return this.accessToken;
35
+ }
36
+ try {
37
+ const result = await this.msalClient.acquireTokenByClientCredential({
38
+ scopes: ['https://management.azure.com/.default'],
39
+ });
40
+ if (!result || !result.accessToken) {
41
+ throw new Error('Failed to acquire access token');
42
+ }
43
+ this.accessToken = result.accessToken;
44
+ // Set expiration time (subtract 5 minutes to refresh early)
45
+ if (result.expiresOn) {
46
+ this.tokenExpirationTime = result.expiresOn.getTime() - 5 * 60 * 1000;
47
+ }
48
+ return this.accessToken;
49
+ }
50
+ catch (error) {
51
+ console.error('Error acquiring access token:', error);
52
+ throw new Error('Azure Data Factory authentication failed');
53
+ }
54
+ }
55
+ /**
56
+ * Get authorization headers
57
+ */
58
+ async getAuthHeaders() {
59
+ const token = await this.getAccessToken();
60
+ return {
61
+ Authorization: `Bearer ${token}`,
62
+ 'Content-Type': 'application/json',
63
+ };
64
+ }
65
+ // ========================================
66
+ // Factory Configuration
67
+ // ========================================
68
+ /**
69
+ * Get all configured factories
70
+ */
71
+ getAllFactories() {
72
+ return this.config.factories;
73
+ }
74
+ /**
75
+ * Get active factories
76
+ */
77
+ getActiveFactories() {
78
+ return this.config.factories.filter((f) => f.active);
79
+ }
80
+ /**
81
+ * Get factory by ID
82
+ */
83
+ getFactoryById(factoryId) {
84
+ const factory = this.config.factories.find((f) => f.id === factoryId);
85
+ if (!factory) {
86
+ throw new Error(`Data Factory '${factoryId}' not found in configuration`);
87
+ }
88
+ if (!factory.active) {
89
+ throw new Error(`Data Factory '${factoryId}' is inactive`);
90
+ }
91
+ return factory;
92
+ }
93
+ /**
94
+ * Get the default factory (first active factory)
95
+ */
96
+ getDefaultFactory() {
97
+ const active = this.getActiveFactories();
98
+ if (active.length === 0) {
99
+ throw new Error('No active Data Factory configured');
100
+ }
101
+ return active[0];
102
+ }
103
+ /**
104
+ * Get factory by ID or default
105
+ */
106
+ resolveFactory(factoryId) {
107
+ if (factoryId) {
108
+ return this.getFactoryById(factoryId);
109
+ }
110
+ return this.getDefaultFactory();
111
+ }
112
+ /**
113
+ * Get base URL for a factory
114
+ */
115
+ getBaseUrl(factory) {
116
+ return `https://management.azure.com/subscriptions/${factory.subscriptionId}/resourceGroups/${factory.resourceGroup}/providers/Microsoft.DataFactory/factories/${factory.factoryName}`;
117
+ }
118
+ /**
119
+ * Check if write operations are enabled
120
+ */
121
+ isWriteEnabled() {
122
+ return this.config.enableWrite;
123
+ }
124
+ /**
125
+ * Check if trigger control is enabled
126
+ */
127
+ isTriggerControlEnabled() {
128
+ return this.config.enableTriggerControl;
129
+ }
130
+ // ========================================
131
+ // HTTP Methods
132
+ // ========================================
133
+ async get(url) {
134
+ try {
135
+ const headers = await this.getAuthHeaders();
136
+ const response = await axios.get(url, {
137
+ headers,
138
+ timeout: 30000,
139
+ });
140
+ return response.data;
141
+ }
142
+ catch (error) {
143
+ throw this.handleError(error);
144
+ }
145
+ }
146
+ async post(url, data) {
147
+ try {
148
+ const headers = await this.getAuthHeaders();
149
+ const response = await axios.post(url, data, {
150
+ headers,
151
+ timeout: 60000, // Longer timeout for POST operations
152
+ });
153
+ return response.data;
154
+ }
155
+ catch (error) {
156
+ throw this.handleError(error);
157
+ }
158
+ }
159
+ handleError(error) {
160
+ if (axios.isAxiosError(error)) {
161
+ const axiosError = error;
162
+ // Handle timeout
163
+ if (axiosError.code === 'ECONNABORTED' || axiosError.code === 'ETIMEDOUT') {
164
+ return new Error('Azure Data Factory request timed out. ' +
165
+ 'Try again or check if the factory is accessible.');
166
+ }
167
+ // Handle network errors
168
+ if (axiosError.code === 'ENOTFOUND' || axiosError.code === 'ECONNREFUSED') {
169
+ return new Error('Network error: Unable to connect to Azure Management API. ' +
170
+ 'Check your internet connection and firewall settings.');
171
+ }
172
+ const status = axiosError.response?.status;
173
+ const errorMessage = axiosError.response?.data?.error?.message || axiosError.message;
174
+ if (status === 401) {
175
+ return new Error('Azure Data Factory authentication failed. Check credentials and permissions.');
176
+ }
177
+ if (status === 403) {
178
+ return new Error('Azure Data Factory access denied. Ensure you have the required RBAC role.');
179
+ }
180
+ if (status === 404) {
181
+ return new Error(`Resource not found: ${errorMessage}`);
182
+ }
183
+ if (status === 429) {
184
+ const retryAfter = axiosError.response?.headers['retry-after'] || 60;
185
+ return new Error(`Azure Management API rate limit exceeded. Retry after ${retryAfter} seconds.`);
186
+ }
187
+ return new Error(`Azure Data Factory API error: ${errorMessage}`);
188
+ }
189
+ if (error instanceof Error) {
190
+ return error;
191
+ }
192
+ return new Error('Unknown error occurred');
193
+ }
194
+ // ========================================
195
+ // Pipeline Operations
196
+ // ========================================
197
+ /**
198
+ * List all pipelines in a factory
199
+ */
200
+ async listPipelines(factoryId) {
201
+ const factory = this.resolveFactory(factoryId);
202
+ const url = `${this.getBaseUrl(factory)}/pipelines?api-version=${API_VERSION}`;
203
+ const response = await this.get(url);
204
+ return response.value;
205
+ }
206
+ /**
207
+ * Get a pipeline by name
208
+ */
209
+ async getPipeline(pipelineName, factoryId) {
210
+ const factory = this.resolveFactory(factoryId);
211
+ const url = `${this.getBaseUrl(factory)}/pipelines/${pipelineName}?api-version=${API_VERSION}`;
212
+ return this.get(url);
213
+ }
214
+ /**
215
+ * Run a pipeline with optional parameters
216
+ */
217
+ async runPipeline(pipelineName, parameters, factoryId, options) {
218
+ if (!this.config.enableWrite) {
219
+ throw new Error('Write operations are disabled. Set AZURE_DATA_FACTORY_ENABLE_WRITE=true to enable.');
220
+ }
221
+ const factory = this.resolveFactory(factoryId);
222
+ // Build URL with query parameters for recovery mode
223
+ let url = `${this.getBaseUrl(factory)}/pipelines/${pipelineName}/createRun?api-version=${API_VERSION}`;
224
+ if (options?.referencePipelineRunId) {
225
+ url += `&referencePipelineRunId=${options.referencePipelineRunId}`;
226
+ }
227
+ if (options?.isRecovery) {
228
+ url += '&isRecovery=true';
229
+ }
230
+ if (options?.startFromFailure) {
231
+ url += '&startFromFailure=true';
232
+ }
233
+ if (options?.startActivityName) {
234
+ url += `&startActivityName=${encodeURIComponent(options.startActivityName)}`;
235
+ }
236
+ return this.post(url, parameters || {});
237
+ }
238
+ /**
239
+ * Get a pipeline run by ID
240
+ */
241
+ async getPipelineRun(runId, factoryId) {
242
+ const factory = this.resolveFactory(factoryId);
243
+ const url = `${this.getBaseUrl(factory)}/pipelineruns/${runId}?api-version=${API_VERSION}`;
244
+ return this.get(url);
245
+ }
246
+ /**
247
+ * Cancel a pipeline run
248
+ */
249
+ async cancelPipelineRun(runId, factoryId) {
250
+ if (!this.config.enableWrite) {
251
+ throw new Error('Write operations are disabled. Set AZURE_DATA_FACTORY_ENABLE_WRITE=true to enable.');
252
+ }
253
+ const factory = this.resolveFactory(factoryId);
254
+ const url = `${this.getBaseUrl(factory)}/pipelineruns/${runId}/cancel?api-version=${API_VERSION}`;
255
+ await this.post(url);
256
+ }
257
+ /**
258
+ * Query pipeline runs with filters
259
+ */
260
+ async queryPipelineRuns(request, factoryId) {
261
+ const factory = this.resolveFactory(factoryId);
262
+ const url = `${this.getBaseUrl(factory)}/queryPipelineRuns?api-version=${API_VERSION}`;
263
+ return this.post(url, request);
264
+ }
265
+ // ========================================
266
+ // Activity Run Operations
267
+ // ========================================
268
+ /**
269
+ * Query activity runs for a pipeline run
270
+ */
271
+ async queryActivityRuns(runId, request, factoryId) {
272
+ const factory = this.resolveFactory(factoryId);
273
+ const url = `${this.getBaseUrl(factory)}/pipelineruns/${runId}/queryActivityruns?api-version=${API_VERSION}`;
274
+ return this.post(url, request);
275
+ }
276
+ /**
277
+ * Get activity runs for a pipeline run (simplified)
278
+ */
279
+ async getActivityRuns(runId, factoryId, filters) {
280
+ // Use a wide time range to get all activities
281
+ const now = new Date();
282
+ const request = {
283
+ lastUpdatedAfter: new Date(now.getTime() - 30 * 24 * 60 * 60 * 1000).toISOString(), // 30 days ago
284
+ lastUpdatedBefore: new Date(now.getTime() + 24 * 60 * 60 * 1000).toISOString(), // Tomorrow
285
+ filters: [],
286
+ orderBy: [{ orderBy: 'ActivityRunStart', order: 'ASC' }],
287
+ };
288
+ if (filters?.status) {
289
+ request.filters.push({
290
+ operand: 'Status',
291
+ operator: 'Equals',
292
+ values: [filters.status],
293
+ });
294
+ }
295
+ if (filters?.activityName) {
296
+ request.filters.push({
297
+ operand: 'ActivityName',
298
+ operator: 'Equals',
299
+ values: [filters.activityName],
300
+ });
301
+ }
302
+ const response = await this.queryActivityRuns(runId, request, factoryId);
303
+ return response.value;
304
+ }
305
+ // ========================================
306
+ // Dataset Operations
307
+ // ========================================
308
+ /**
309
+ * List all datasets in a factory
310
+ */
311
+ async listDatasets(factoryId) {
312
+ const factory = this.resolveFactory(factoryId);
313
+ const url = `${this.getBaseUrl(factory)}/datasets?api-version=${API_VERSION}`;
314
+ const response = await this.get(url);
315
+ return response.value;
316
+ }
317
+ /**
318
+ * Get a dataset by name
319
+ */
320
+ async getDataset(datasetName, factoryId) {
321
+ const factory = this.resolveFactory(factoryId);
322
+ const url = `${this.getBaseUrl(factory)}/datasets/${datasetName}?api-version=${API_VERSION}`;
323
+ return this.get(url);
324
+ }
325
+ // ========================================
326
+ // Linked Service Operations
327
+ // ========================================
328
+ /**
329
+ * List all linked services in a factory (credentials sanitized)
330
+ */
331
+ async listLinkedServices(factoryId) {
332
+ const factory = this.resolveFactory(factoryId);
333
+ const url = `${this.getBaseUrl(factory)}/linkedservices?api-version=${API_VERSION}`;
334
+ const response = await this.get(url);
335
+ // Sanitize credentials
336
+ return response.value.map((ls) => this.sanitizeLinkedService(ls));
337
+ }
338
+ /**
339
+ * Sanitize linked service to remove sensitive data
340
+ */
341
+ sanitizeLinkedService(linkedService) {
342
+ const sanitized = { ...linkedService };
343
+ if (sanitized.properties.typeProperties) {
344
+ const props = { ...sanitized.properties.typeProperties };
345
+ // Common sensitive fields to redact
346
+ const sensitiveFields = [
347
+ 'connectionString',
348
+ 'password',
349
+ 'secretAccessKey',
350
+ 'accountKey',
351
+ 'servicePrincipalKey',
352
+ 'accessToken',
353
+ 'refreshToken',
354
+ 'encryptedCredential',
355
+ 'credential',
356
+ ];
357
+ for (const field of sensitiveFields) {
358
+ if (props[field]) {
359
+ props[field] = '[REDACTED]';
360
+ }
361
+ }
362
+ sanitized.properties = {
363
+ ...sanitized.properties,
364
+ typeProperties: props,
365
+ };
366
+ }
367
+ return sanitized;
368
+ }
369
+ // ========================================
370
+ // Data Flow Operations
371
+ // ========================================
372
+ /**
373
+ * List all data flows in a factory
374
+ */
375
+ async listDataFlows(factoryId) {
376
+ const factory = this.resolveFactory(factoryId);
377
+ const url = `${this.getBaseUrl(factory)}/dataflows?api-version=${API_VERSION}`;
378
+ const response = await this.get(url);
379
+ return response.value;
380
+ }
381
+ /**
382
+ * Get a data flow by name
383
+ */
384
+ async getDataFlow(dataFlowName, factoryId) {
385
+ const factory = this.resolveFactory(factoryId);
386
+ const url = `${this.getBaseUrl(factory)}/dataflows/${dataFlowName}?api-version=${API_VERSION}`;
387
+ return this.get(url);
388
+ }
389
+ // ========================================
390
+ // Trigger Operations
391
+ // ========================================
392
+ /**
393
+ * List all triggers in a factory
394
+ */
395
+ async listTriggers(factoryId) {
396
+ const factory = this.resolveFactory(factoryId);
397
+ const url = `${this.getBaseUrl(factory)}/triggers?api-version=${API_VERSION}`;
398
+ const response = await this.get(url);
399
+ return response.value;
400
+ }
401
+ /**
402
+ * Get a trigger by name
403
+ */
404
+ async getTrigger(triggerName, factoryId) {
405
+ const factory = this.resolveFactory(factoryId);
406
+ const url = `${this.getBaseUrl(factory)}/triggers/${triggerName}?api-version=${API_VERSION}`;
407
+ return this.get(url);
408
+ }
409
+ /**
410
+ * Start a trigger
411
+ */
412
+ async startTrigger(triggerName, factoryId) {
413
+ if (!this.config.enableTriggerControl) {
414
+ throw new Error('Trigger control is disabled. Set AZURE_DATA_FACTORY_ENABLE_TRIGGER_CONTROL=true to enable.');
415
+ }
416
+ const factory = this.resolveFactory(factoryId);
417
+ const url = `${this.getBaseUrl(factory)}/triggers/${triggerName}/start?api-version=${API_VERSION}`;
418
+ await this.post(url);
419
+ }
420
+ /**
421
+ * Stop a trigger
422
+ */
423
+ async stopTrigger(triggerName, factoryId) {
424
+ if (!this.config.enableTriggerControl) {
425
+ throw new Error('Trigger control is disabled. Set AZURE_DATA_FACTORY_ENABLE_TRIGGER_CONTROL=true to enable.');
426
+ }
427
+ const factory = this.resolveFactory(factoryId);
428
+ const url = `${this.getBaseUrl(factory)}/triggers/${triggerName}/stop?api-version=${API_VERSION}`;
429
+ await this.post(url);
430
+ }
431
+ /**
432
+ * Query trigger runs
433
+ */
434
+ async queryTriggerRuns(request, factoryId) {
435
+ const factory = this.resolveFactory(factoryId);
436
+ const url = `${this.getBaseUrl(factory)}/queryTriggerRuns?api-version=${API_VERSION}`;
437
+ return this.post(url, request);
438
+ }
439
+ // ========================================
440
+ // Integration Runtime Operations
441
+ // ========================================
442
+ /**
443
+ * List all integration runtimes in a factory
444
+ */
445
+ async listIntegrationRuntimes(factoryId) {
446
+ const factory = this.resolveFactory(factoryId);
447
+ const url = `${this.getBaseUrl(factory)}/integrationRuntimes?api-version=${API_VERSION}`;
448
+ const response = await this.get(url);
449
+ return response.value;
450
+ }
451
+ /**
452
+ * Get integration runtime status
453
+ */
454
+ async getIntegrationRuntimeStatus(irName, factoryId) {
455
+ const factory = this.resolveFactory(factoryId);
456
+ const url = `${this.getBaseUrl(factory)}/integrationRuntimes/${irName}/getStatus?api-version=${API_VERSION}`;
457
+ return this.post(url);
458
+ }
459
+ /**
460
+ * Start an integration runtime (managed IR only)
461
+ */
462
+ async startIntegrationRuntime(irName, factoryId) {
463
+ if (!this.config.enableWrite) {
464
+ throw new Error('Write operations are disabled. Set AZURE_DATA_FACTORY_ENABLE_WRITE=true to enable.');
465
+ }
466
+ const factory = this.resolveFactory(factoryId);
467
+ const url = `${this.getBaseUrl(factory)}/integrationRuntimes/${irName}/start?api-version=${API_VERSION}`;
468
+ await this.post(url);
469
+ }
470
+ /**
471
+ * Stop an integration runtime (managed IR only)
472
+ */
473
+ async stopIntegrationRuntime(irName, factoryId) {
474
+ if (!this.config.enableWrite) {
475
+ throw new Error('Write operations are disabled. Set AZURE_DATA_FACTORY_ENABLE_WRITE=true to enable.');
476
+ }
477
+ const factory = this.resolveFactory(factoryId);
478
+ const url = `${this.getBaseUrl(factory)}/integrationRuntimes/${irName}/stop?api-version=${API_VERSION}`;
479
+ await this.post(url);
480
+ }
481
+ }
482
+ //# sourceMappingURL=AdfService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdfService.js","sourceRoot":"","sources":["../src/AdfService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Azure Data Factory MCP Server
4
+ *
5
+ * Provides tools for pipeline execution, monitoring, and error debugging.
6
+ */
7
+ import { AdfService } from './AdfService.js';
8
+ export declare function registerAzureDataFactoryTools(server: any, adfService?: AdfService): void;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAY7C,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,GAAG,EACX,UAAU,CAAC,EAAE,UAAU,QAkrCxB"}