@bitsbound/mcp-server 1.0.5 → 1.0.7

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.
@@ -1,13 +1,9 @@
1
- import type { McpServerConfig, StartUploadInput, StartUploadOutput, UploadChunkInput, UploadChunkOutput, CompleteUploadInput, CompleteUploadOutput, UploadContractInput, UploadContractOutput, AnalyzeContractInput, AnalyzeContractOutput, GetAnalysisStatusInput, AnalysisStatusOutput, AskSacInput, SacResponseOutput, GenerateRedlineInput, RedlineOutput, GenerateNegotiationEmailInput, NegotiationEmailOutput, ExtractClauseInput, ClauseExtractionOutput, ComparePlaybookInput, PlaybookComparisonOutput, InstantSwarmInput, InstantSwarmOutput, QuickScanInput, QuickScanOutput, AskClauseInput, AskClauseOutput, CheckDealbreakersInput, CheckDealbreakersOutput } from '../../types/Bitsbound_Kings_McpServer_Backend_Types.js';
1
+ import type { McpServerConfig, AnalyzeContractInput, AnalyzeContractOutput, GetAnalysisStatusInput, AnalysisStatusOutput, AskSacInput, SacResponseOutput, GenerateRedlineInput, RedlineOutput, GenerateNegotiationEmailInput, NegotiationEmailOutput, ExtractClauseInput, ClauseExtractionOutput, ComparePlaybookInput, PlaybookComparisonOutput, InstantSwarmInput, InstantSwarmOutput, QuickScanInput, QuickScanOutput, AskClauseInput, AskClauseOutput, CheckDealbreakersInput, CheckDealbreakersOutput, DownloadFileInput } from '../../types/Bitsbound_Kings_McpServer_Backend_Types.js';
2
2
  export declare class BitsBoundBackautocrat {
3
3
  private readonly apiUrl;
4
4
  private readonly apiKey;
5
5
  constructor(config: McpServerConfig);
6
6
  private request;
7
- startUpload(input: StartUploadInput): Promise<StartUploadOutput>;
8
- uploadChunk(input: UploadChunkInput): Promise<UploadChunkOutput>;
9
- completeUpload(input: CompleteUploadInput): Promise<CompleteUploadOutput>;
10
- uploadContract(input: UploadContractInput): Promise<UploadContractOutput>;
11
7
  analyzeContract(input: AnalyzeContractInput): Promise<AnalyzeContractOutput>;
12
8
  getAnalysisStatus(input: GetAnalysisStatusInput): Promise<AnalysisStatusOutput>;
13
9
  askSac(input: AskSacInput): Promise<SacResponseOutput>;
@@ -21,5 +17,25 @@ export declare class BitsBoundBackautocrat {
21
17
  quickScan(input: QuickScanInput): Promise<QuickScanOutput>;
22
18
  askClause(input: AskClauseInput): Promise<AskClauseOutput>;
23
19
  checkDealbreakers(input: CheckDealbreakersInput): Promise<CheckDealbreakersOutput>;
20
+ /**
21
+ * T_DOWNLOAD_FILE: Download a file from BitsBound R2 storage
22
+ *
23
+ * TIR{ADVT}O Context:
24
+ * - T: User requests to download a file (e.g., redlined DOCX)
25
+ * - I: downloadUrl from get_analysis_status deliverables
26
+ * - R{ADVT}:
27
+ * - D: MCP download endpoint URL pattern
28
+ * - V: URL must be a valid BitsBound download URL
29
+ * - T: Fetch file via HTTP, optionally save to disk
30
+ * - O: { success, base64Content, savedToPath?, fileName, fileSizeBytes }
31
+ */
32
+ downloadFile(input: DownloadFileInput): Promise<{
33
+ success: boolean;
34
+ base64Content?: string;
35
+ savedToPath?: string;
36
+ fileName?: string;
37
+ fileSizeBytes?: number;
38
+ error?: string;
39
+ }>;
24
40
  }
25
41
  //# sourceMappingURL=Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.d.ts","sourceRoot":"","sources":["../../../orchestration/backautocrat/Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EACV,eAAe,EAEf,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EAEpB,mBAAmB,EACnB,oBAAoB,EAEpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EAKxB,iBAAiB,EACjB,kBAAkB,EAElB,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,wDAAwD,CAAC;AAuEhE,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,MAAM,EAAE,eAAe;YAarB,OAAO;IA4Df,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0ChE,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmDhE,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAuEzE,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAgDzE,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA4E5E,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA4B/E,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoCtD,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;IAkCpE,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA4B/F,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA6BzE,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAoC/E,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAmBxE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA6BjE,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0FnE,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA2B1D,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA2B1D,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAoBzF"}
1
+ {"version":3,"file":"Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.d.ts","sourceRoot":"","sources":["../../../orchestration/backautocrat/Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,6BAA6B,EAC7B,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EAKxB,iBAAiB,EACjB,kBAAkB,EAElB,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EAEvB,iBAAiB,EAClB,MAAM,wDAAwD,CAAC;AAiBhE,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,MAAM,EAAE,eAAe;YAarB,OAAO;IA2Df,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAuD5E,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA4B/E,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAoCtD,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;IAkCpE,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA4B/F,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA6BzE,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAoC/E,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAmBxE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA6BjE,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA0FnE,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA2B1D,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA2B1D,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAyBxF;;;;;;;;;;;OAWG;IACG,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC;QACpD,OAAO,EAAE,OAAO,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CAyEH"}
@@ -3,35 +3,31 @@
3
3
  ////////////////////////////////////////
4
4
  // NO NEW FILES!!!!!!!!!
5
5
  ////////////////////////////////////////
6
+ /*
7
+ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
8
+ */
9
+ // ## REQUIREMENTS 'R'
10
+ /*
11
+ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
12
+ */
13
+ /*
14
+ §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
15
+ */
16
+ // ### DEFINITIONS, VALIDATIONS, AND TRANSFORMATIONS 'R_DVT'
17
+ /*
18
+ §§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
19
+ */
20
+ /*
21
+ ######################################################################################################################################################################################################
22
+ */
23
+ // #### GLOBAL 'R_DVT_G' - Imports & Configuration
24
+ /*
25
+ ######################################################################################################################################################################################################
26
+ */
27
+ import { readFile, writeFile } from 'fs/promises';
28
+ import { basename } from 'path';
6
29
  import { DEFAULT_API_URL } from '../../types/Bitsbound_Kings_McpServer_Backend_Types.js';
7
30
  import { apiLogger } from '../../logger/Bitsbound_Kings_McpServer_Backend_Logger.js';
8
- import { randomUUID } from 'node:crypto';
9
- import { readFile } from 'node:fs/promises';
10
- import { basename } from 'node:path';
11
- // D: In-memory cache with 1-hour expiry
12
- const fileCache = new Map();
13
- // T: Cleanup expired files every 5 minutes
14
- setInterval(() => {
15
- const now = new Date();
16
- for (const [fileId, file] of fileCache) {
17
- if (file.expiresAt <= now) {
18
- fileCache.delete(fileId);
19
- apiLogger.info('Expired file removed from cache', { fileId });
20
- }
21
- }
22
- }, 5 * 60 * 1000);
23
- // D: In-memory chunked upload sessions with 1-hour expiry
24
- const chunkedUploadCache = new Map();
25
- // T: Cleanup expired chunked upload sessions every 5 minutes
26
- setInterval(() => {
27
- const now = new Date();
28
- for (const [uploadId, session] of chunkedUploadCache) {
29
- if (session.expiresAt <= now) {
30
- chunkedUploadCache.delete(uploadId);
31
- apiLogger.info('Expired chunked upload session removed', { uploadId });
32
- }
33
- }
34
- }, 5 * 60 * 1000);
35
31
  /*
36
32
  ❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅❅
37
33
  */
@@ -100,231 +96,36 @@ export class BitsBoundBackautocrat {
100
96
  ######################################################################################################################################################################################################
101
97
  */
102
98
  // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
103
- // CHUNKED UPLOAD TOOLS - Avoids claude.ai permission dialog timeout on large strings
104
- // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
105
- // Tool: start_upload 'R_DVT_L_T_StartUpload' - Step 1: Initialize chunked upload session
106
- async startUpload(input) {
107
- apiLogger.info('startUpload called', {
108
- fileName: input.fileName,
109
- totalChunks: input.totalChunks
110
- });
111
- // V: Validate required fields
112
- if (!input.fileName) {
113
- throw new Error('fileName is required');
114
- }
115
- if (!input.totalChunks || input.totalChunks < 1) {
116
- throw new Error('totalChunks must be at least 1');
117
- }
118
- // T: Generate uploadId and create session
119
- const uploadId = `upload_${randomUUID().slice(0, 8)}`;
120
- const now = new Date();
121
- const expiresAt = new Date(now.getTime() + 60 * 60 * 1000); // 1 hour
122
- chunkedUploadCache.set(uploadId, {
123
- fileName: input.fileName,
124
- totalChunks: input.totalChunks,
125
- chunks: new Map(),
126
- uploadedAt: now,
127
- expiresAt
128
- });
129
- apiLogger.info('Chunked upload session started', {
130
- uploadId,
131
- fileName: input.fileName,
132
- totalChunks: input.totalChunks
133
- });
134
- return {
135
- uploadId,
136
- fileName: input.fileName,
137
- totalChunks: input.totalChunks,
138
- expiresAt: expiresAt.toISOString()
139
- };
140
- }
141
- // Tool: upload_chunk 'R_DVT_L_T_UploadChunk' - Step 2: Upload a single chunk
142
- async uploadChunk(input) {
143
- apiLogger.info('uploadChunk called', {
144
- uploadId: input.uploadId,
145
- chunkIndex: input.chunkIndex,
146
- chunkDataLength: input.chunkData?.length || 0
147
- });
148
- // V: Validate required fields
149
- if (!input.uploadId) {
150
- throw new Error('uploadId is required');
151
- }
152
- if (input.chunkIndex === undefined || input.chunkIndex < 0) {
153
- throw new Error('chunkIndex must be a non-negative integer');
154
- }
155
- if (!input.chunkData) {
156
- throw new Error('chunkData is required');
157
- }
158
- // T: Get upload session
159
- const session = chunkedUploadCache.get(input.uploadId);
160
- if (!session) {
161
- throw new Error(`Upload session not found or expired. uploadId: ${input.uploadId}. Please start a new upload with start_upload.`);
162
- }
163
- // V: Check chunk index is valid
164
- if (input.chunkIndex >= session.totalChunks) {
165
- throw new Error(`chunkIndex ${input.chunkIndex} is out of range. Expected 0-${session.totalChunks - 1}`);
166
- }
167
- // T: Store chunk
168
- session.chunks.set(input.chunkIndex, input.chunkData);
169
- const chunksReceived = session.chunks.size;
170
- const chunksRemaining = session.totalChunks - chunksReceived;
171
- apiLogger.info('Chunk received', {
172
- uploadId: input.uploadId,
173
- chunkIndex: input.chunkIndex,
174
- chunksReceived,
175
- chunksRemaining
176
- });
177
- return {
178
- uploadId: input.uploadId,
179
- chunkIndex: input.chunkIndex,
180
- chunksReceived,
181
- chunksRemaining
182
- };
183
- }
184
- // Tool: complete_upload 'R_DVT_L_T_CompleteUpload' - Step 3: Assemble chunks and get fileId
185
- async completeUpload(input) {
186
- apiLogger.info('completeUpload called', { uploadId: input.uploadId });
187
- // V: Validate required fields
188
- if (!input.uploadId) {
189
- throw new Error('uploadId is required');
190
- }
191
- // T: Get upload session
192
- const session = chunkedUploadCache.get(input.uploadId);
193
- if (!session) {
194
- throw new Error(`Upload session not found or expired. uploadId: ${input.uploadId}. Please start a new upload with start_upload.`);
195
- }
196
- // V: Check all chunks received
197
- if (session.chunks.size !== session.totalChunks) {
198
- const missingChunks = [];
199
- for (let i = 0; i < session.totalChunks; i++) {
200
- if (!session.chunks.has(i)) {
201
- missingChunks.push(i);
202
- }
203
- }
204
- throw new Error(`Missing chunks: ${missingChunks.join(', ')}. Received ${session.chunks.size} of ${session.totalChunks} chunks.`);
205
- }
206
- // T: Reassemble base64 string from chunks in order
207
- const chunks = [];
208
- for (let i = 0; i < session.totalChunks; i++) {
209
- chunks.push(session.chunks.get(i));
210
- }
211
- const docxBase64 = chunks.join('');
212
- // T: Generate fileId and store in file cache
213
- const fileId = `file_${randomUUID().slice(0, 8)}`;
214
- const now = new Date();
215
- const expiresAt = new Date(now.getTime() + 60 * 60 * 1000); // 1 hour
216
- fileCache.set(fileId, {
217
- docxBase64,
218
- fileName: session.fileName,
219
- uploadedAt: now,
220
- expiresAt
221
- });
222
- // T: Clean up upload session
223
- chunkedUploadCache.delete(input.uploadId);
224
- // Calculate file size from base64
225
- const fileSizeBytes = Math.floor((docxBase64.length * 3) / 4);
226
- apiLogger.info('Chunked upload completed', {
227
- uploadId: input.uploadId,
228
- fileId,
229
- fileName: session.fileName,
230
- fileSizeBytes,
231
- totalChunks: session.totalChunks
232
- });
233
- return {
234
- fileId,
235
- fileName: session.fileName,
236
- fileSizeBytes,
237
- expiresAt: expiresAt.toISOString()
238
- };
239
- }
240
- // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
241
- // LEGACY SINGLE UPLOAD - May timeout in claude.ai for large files
242
- // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
243
- // Tool: upload_contract 'R_DVT_L_T_UploadContract' - Legacy: Store file, return fileId
244
- async uploadContract(input) {
245
- apiLogger.info('uploadContract called', {
246
- fileName: input.fileName,
247
- base64Length: input.docxBase64?.length || 0
248
- });
249
- // V: Validate required fields
250
- if (!input.docxBase64) {
251
- throw new Error('docxBase64 is required');
252
- }
253
- if (!input.fileName) {
254
- throw new Error('fileName is required');
255
- }
256
- // T: Generate a short fileId and store in cache
257
- const fileId = `file_${randomUUID().slice(0, 8)}`;
258
- const now = new Date();
259
- const expiresAt = new Date(now.getTime() + 60 * 60 * 1000); // 1 hour
260
- fileCache.set(fileId, {
261
- docxBase64: input.docxBase64,
262
- fileName: input.fileName,
263
- uploadedAt: now,
264
- expiresAt
265
- });
266
- // Calculate file size from base64
267
- const fileSizeBytes = Math.floor((input.docxBase64.length * 3) / 4);
268
- apiLogger.info('Contract uploaded to cache', {
269
- fileId,
270
- fileName: input.fileName,
271
- fileSizeBytes,
272
- expiresAt: expiresAt.toISOString()
273
- });
274
- return {
275
- fileId,
276
- fileName: input.fileName,
277
- fileSizeBytes,
278
- expiresAt: expiresAt.toISOString()
279
- };
280
- }
281
- // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
282
- // Tool: process_contract 'R_DVT_L_T_ProcessContract' - Step 2: Process using fileId
99
+ // Tool: process_contract 'R_DVT_L_T_ProcessContract'
283
100
  // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
284
101
  async analyzeContract(input) {
285
- apiLogger.info('analyzeContract called', {
286
- fileId: input.fileId,
287
- filePath: input.filePath,
288
- inputKeys: Object.keys(input || {})
289
- });
290
- // V: Validate that either fileId OR filePath is provided (not both, not neither)
291
- if (!input.fileId && !input.filePath) {
292
- throw new Error('Either fileId or filePath is required. Use fileId with upload_contract/chunked upload (for claude.ai), or filePath for Claude Desktop (server reads local file directly).');
293
- }
294
- if (input.fileId && input.filePath) {
295
- throw new Error('Provide either fileId OR filePath, not both.');
296
- }
297
102
  let docxBase64;
298
103
  let fileName;
104
+ // Handle filePath (RECOMMENDED) or docxBase64
299
105
  if (input.filePath) {
300
- // T: Claude Desktop mode - read file directly from local filesystem
301
- apiLogger.info('Reading contract from local file path', { filePath: input.filePath });
106
+ // Read file from disk and base64 encode it
107
+ apiLogger.info('Reading contract from file path', { filePath: input.filePath });
302
108
  try {
303
109
  const fileBuffer = await readFile(input.filePath);
304
110
  docxBase64 = fileBuffer.toString('base64');
305
- fileName = basename(input.filePath);
306
- apiLogger.info('Successfully read local file', { fileName, base64Length: docxBase64.length });
111
+ fileName = input.fileName || basename(input.filePath);
112
+ apiLogger.info('File read successfully', { fileName, sizeBytes: fileBuffer.length });
307
113
  }
308
114
  catch (error) {
309
115
  const errorMessage = error instanceof Error ? error.message : 'Unknown error';
310
- throw new Error(`Failed to read local file at ${input.filePath}: ${errorMessage}`);
116
+ apiLogger.error('Failed to read file', { filePath: input.filePath, error: errorMessage });
117
+ throw new Error(`Failed to read file at ${input.filePath}: ${errorMessage}`);
311
118
  }
312
119
  }
120
+ else if (input.docxBase64) {
121
+ // Use provided base64
122
+ docxBase64 = input.docxBase64;
123
+ fileName = input.fileName || 'contract.docx';
124
+ }
313
125
  else {
314
- // T: claude.ai mode - retrieve file from cache using fileId
315
- const cachedFile = fileCache.get(input.fileId);
316
- if (!cachedFile) {
317
- throw new Error(`File not found or expired. fileId: ${input.fileId}. Please upload the contract again using upload_contract.`);
318
- }
319
- // V: Check if expired
320
- if (cachedFile.expiresAt <= new Date()) {
321
- fileCache.delete(input.fileId);
322
- throw new Error(`File expired. fileId: ${input.fileId}. Please upload the contract again using upload_contract.`);
323
- }
324
- docxBase64 = cachedFile.docxBase64;
325
- fileName = cachedFile.fileName;
326
- apiLogger.info('Starting contract analysis from cache', { fileId: input.fileId, fileName, base64Length: docxBase64.length });
126
+ throw new Error('Either filePath or docxBase64 is required. Use filePath for best results (e.g., "/Users/you/Documents/contract.docx")');
327
127
  }
128
+ apiLogger.info('Starting contract analysis', { fileName });
328
129
  const response = await this.request('POST', '/api/v1/mcp/analyze', {
329
130
  contract_content: docxBase64,
330
131
  filename: fileName,
@@ -587,5 +388,85 @@ export class BitsBoundBackautocrat {
587
388
  }
588
389
  return response.data;
589
390
  }
391
+ // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
392
+ // Download File 'R_DVT_L_T_DownloadFile' - Download file from R2 via MCP endpoint
393
+ // ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
394
+ /**
395
+ * T_DOWNLOAD_FILE: Download a file from BitsBound R2 storage
396
+ *
397
+ * TIR{ADVT}O Context:
398
+ * - T: User requests to download a file (e.g., redlined DOCX)
399
+ * - I: downloadUrl from get_analysis_status deliverables
400
+ * - R{ADVT}:
401
+ * - D: MCP download endpoint URL pattern
402
+ * - V: URL must be a valid BitsBound download URL
403
+ * - T: Fetch file via HTTP, optionally save to disk
404
+ * - O: { success, base64Content, savedToPath?, fileName, fileSizeBytes }
405
+ */
406
+ async downloadFile(input) {
407
+ const { downloadUrl, saveToPath } = input;
408
+ apiLogger.info('Downloading file', { downloadUrl, saveToPath });
409
+ try {
410
+ // The download URL is a full URL - just fetch it with auth header
411
+ const response = await fetch(downloadUrl, {
412
+ method: 'GET',
413
+ headers: {
414
+ 'X-API-Key': this.apiKey
415
+ }
416
+ });
417
+ if (!response.ok) {
418
+ const errorText = await response.text();
419
+ throw new Error(`Download failed: ${response.status} ${response.statusText} - ${errorText}`);
420
+ }
421
+ // Get the file as ArrayBuffer
422
+ const arrayBuffer = await response.arrayBuffer();
423
+ const buffer = Buffer.from(arrayBuffer);
424
+ // Extract filename from Content-Disposition header or URL
425
+ const contentDisposition = response.headers.get('Content-Disposition');
426
+ let fileName = 'document.docx';
427
+ if (contentDisposition) {
428
+ const match = contentDisposition.match(/filename="?([^"]+)"?/);
429
+ if (match) {
430
+ fileName = match[1];
431
+ }
432
+ }
433
+ else {
434
+ // Try to extract from URL
435
+ const urlParts = downloadUrl.split('/');
436
+ const lastPart = urlParts[urlParts.length - 1];
437
+ if (lastPart && !lastPart.includes('?')) {
438
+ fileName = decodeURIComponent(lastPart);
439
+ }
440
+ }
441
+ // If saveToPath is provided, write to disk
442
+ if (saveToPath) {
443
+ await writeFile(saveToPath, buffer);
444
+ apiLogger.info('File saved to disk', { path: saveToPath, size: buffer.length });
445
+ return {
446
+ success: true,
447
+ savedToPath: saveToPath,
448
+ fileName,
449
+ fileSizeBytes: buffer.length
450
+ };
451
+ }
452
+ // Otherwise, return as base64
453
+ const base64Content = buffer.toString('base64');
454
+ apiLogger.info('File downloaded as base64', { fileName, size: buffer.length });
455
+ return {
456
+ success: true,
457
+ base64Content,
458
+ fileName,
459
+ fileSizeBytes: buffer.length
460
+ };
461
+ }
462
+ catch (error) {
463
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
464
+ apiLogger.error('Download failed', { error: errorMessage });
465
+ return {
466
+ success: false,
467
+ error: errorMessage
468
+ };
469
+ }
470
+ }
590
471
  }
591
472
  //# sourceMappingURL=Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.js","sourceRoot":"","sources":["../../../orchestration/backautocrat/Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.js","sourceRoot":"","sources":["../../../orchestration/backautocrat/Bitsbound_Kings_McpServer_Backend_Orchestration_Backautocrat.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,wCAAwC;AACxC,wCAAwC;AACxC,wBAAwB;AACxB,wCAAwC;AAExC;;EAEE;AACF,oIAAoI;AACpI;;EAEE;AAGF;;EAEE;AACF,oKAAoK;AACpK;;EAEE;AAGF;;EAEE;AACF,qJAAqJ;AACrJ;;EAEE;AAEF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAkChC,OAAO,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,0DAA0D,CAAC;AAGrF;;EAEE;AACF,mJAAmJ;AACnJ;;EAEE;AAEF,qHAAqH;AACrH,2FAA2F;AAC3F,qHAAqH;AAErH,MAAM,OAAO,qBAAqB;IACf,MAAM,CAAS;IACf,MAAM,CAAS;IAEhC,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,iBAAiB,IAAI,eAAe,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAEvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,mHAAmH;IACnH,mDAAmD;IACnD,mHAAmH;IAE3G,KAAK,CAAC,OAAO,CACnB,MAAsB,EACtB,QAAgB,EAChB,IAA8B;QAE9B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;QAExC,SAAS,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM;gBACN,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACxC,cAAc,EAAE,4BAA4B;iBAC7C;gBACD,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;aAC9C,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,SAAS,CAAC,KAAK,CAAC,oBAAoB,EAAE;oBACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,aAAa,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE;iBACpD,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAO,CAAC;YACxC,SAAS,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YAExD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,SAAS,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YAClE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB,YAAY,EAAE;aACzC,CAAC;QACJ,CAAC;IACH,CAAC;IAGH;;MAEE;IACF,sJAAsJ;IACtJ;;MAEE;IAEA,qHAAqH;IACrH,qDAAqD;IACrD,qHAAqH;IAErH,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,IAAI,UAAkB,CAAC;QACvB,IAAI,QAAgB,CAAC;QAErB,8CAA8C;QAC9C,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,2CAA2C;YAC3C,SAAS,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAClD,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC3C,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACtD,SAAS,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;YACvF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBAC9E,SAAS,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC1F,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC5B,sBAAsB;YACtB,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YAC9B,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,eAAe,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAC;QAC3I,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,qBAAqB,EACrB;YACE,gBAAgB,EAAE,UAAU;YAC5B,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,UAAU;YAChD,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU;SAC7C,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,OAAO;YACL,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;YACpC,MAAM,EAAE,QAAQ;YAChB,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB;YACpD,kBAAkB,EAAE,6DAA6D;SAClF,CAAC;IACJ,CAAC;IAED,qHAAqH;IACrH,kDAAkD;IAClD,qHAAqH;IAErH,KAAK,CAAC,iBAAiB,CAAC,KAA6B;QACnD,SAAS,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAE7E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,KAAK,EACL,wBAAwB,KAAK,CAAC,UAAU,SAAS,CAClD,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,+BAA+B,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAwC;YACrD,eAAe,EAAE,IAAI,CAAC,QAAQ;YAC9B,YAAY,EAAE,IAAI,CAAC,KAAK;YACxB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,iBAAiB,EAAE,IAAI,CAAC,OAAO,EAAE,iBAAiB;YAClD,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAsD,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;SAC1J,CAAC;IACJ,CAAC;IAED,qHAAqH;IACrH,mCAAmC;IACnC,qHAAqH;IAErH,KAAK,CAAC,MAAM,CAAC,KAAkB;QAC7B,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAE/D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAKjC,MAAM,EACN,sBAAsB,EACtB;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,IAAI,IAAI;SAC7D,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;QAClE,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;YAChC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAmD,EAAE,EAAE,CAAC,CAAC;gBACtG,WAAW,EAAE,CAAC,CAAC,OAAO;gBACtB,UAAU,EAAE,CAAC,CAAC,IAAI;gBAClB,UAAU,EAAE,CAAC,CAAC,IAAI;aACnB,CAAC,CAAC;YACH,mBAAmB,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;SAC/C,CAAC;IACJ,CAAC;IAED,qHAAqH;IACrH,qDAAqD;IACrD,qHAAqH;IAErH,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAEvE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAMjC,MAAM,EACN,8BAA8B,EAC9B;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,CAAC;YACzC,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,IAAI;SAC/C,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;QAClE,CAAC;QAED,OAAO;YACL,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;YAC5C,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;YACtC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY;YACxC,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO;SACtC,CAAC;IACJ,CAAC;IAED,qHAAqH;IACrH,6DAA6D;IAC7D,qHAAqH;IAErH,KAAK,CAAC,wBAAwB,CAAC,KAAoC;QACjE,SAAS,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAEjF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAKjC,MAAM,EACN,4BAA4B,EAC5B;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe;YACnC,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,iDAAiD;IACjD,qHAAqH;IAErH,KAAK,CAAC,aAAa,CAAC,KAAyB;QAC3C,SAAS,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAClC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAQjC,KAAK,EACL,wBAAwB,KAAK,CAAC,UAAU,WAAW,KAAK,CAAC,UAAU,EAAE,CACtE,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,qDAAqD;IACrD,qHAAqH;IAErH,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,SAAS,CAAC,IAAI,CAAC,4BAA4B,EAAE;YAC3C,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAWjC,MAAM,EACN,8BAA8B,EAC9B;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,yDAAyD;IACzD,qHAAqH;IAErH,KAAK,CAAC,kBAAkB,CAAC,UAAkB;QACzC,SAAS,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,KAAK,EACL,wBAAwB,UAAU,OAAO,CAC1C,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,iDAAiD;IACjD,qHAAqH;IAErH,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,SAAS,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,KAAK,EACL,wBAAwB,UAAU,EAAE,CACrC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAGH;;MAEE;IACF,iLAAiL;IACjL;;MAEE;IAEA,qHAAqH;IACrH,uGAAuG;IACvG,mFAAmF;IACnF,qHAAqH;IAErH,KAAK,CAAC,YAAY,CAAC,KAAwB;QACzC,SAAS,CAAC,IAAI,CAAC,qDAAqD,EAAE;YACpE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK;SAC9C,CAAC,CAAC;QAEH,gFAAgF;QAChF,oGAAoG;QACpG,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAyBjC,MAAM,EACN,2BAA2B,EAAG,wDAAwD;QACtF;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,iCAAiC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAE3B,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,sBAAsB,EAAE,IAAI,CAAC,oBAAoB;YACjD,mBAAmB,EAAE,IAAI,CAAC,kBAAkB;YAC5C,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC7C,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnB,eAAe,EAAE,EAAE,CAAC,eAAe;gBACnC,eAAe,EAAE,EAAE,CAAC,eAAe;gBACnC,UAAU,EAAE,EAAE,CAAC,UAAU;gBACzB,KAAK,EAAE,EAAE,CAAC,KAAK;gBACf,eAAe,EAAE,EAAE,CAAC,eAAe;aACpC,CAAC,CAAC;YACH,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IAGH;;MAEE;IACF,qKAAqK;IACrK;;MAEE;IAEA,qHAAqH;IACrH,oFAAoF;IACpF,qHAAqH;IAErH,KAAK,CAAC,SAAS,CAAC,KAAqB;QACnC,SAAS,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU;SAC7C,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,gCAAgC,EAChC;YACE,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU;SAC7C,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,8BAA8B,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,4EAA4E;IAC5E,qHAAqH;IAErH,KAAK,CAAC,SAAS,CAAC,KAAqB;QACnC,SAAS,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK;YACjD,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK;SACtC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,gCAAgC,EAChC;YACE,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK;SACtC,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,qGAAqG;IACrG,qHAAqH;IAErH,KAAK,CAAC,iBAAiB,CAAC,KAA6B;QACnD,SAAS,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACtC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,SAAS;SAC1C,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,MAAM,EACN,wCAAwC,EACxC;YACE,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,8BAA8B,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,qHAAqH;IACrH,kFAAkF;IAClF,qHAAqH;IAErH;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,YAAY,CAAC,KAAwB;QAQzC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QAE1C,SAAS,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAEhE,IAAI,CAAC;YACH,kEAAkE;YAClE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE;gBACxC,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI,CAAC,MAAM;iBACzB;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,oBAAoB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,SAAS,EAAE,CAAC,CAAC;YAC/F,CAAC;YAED,8BAA8B;YAC9B,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAExC,0DAA0D;YAC1D,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACvE,IAAI,QAAQ,GAAG,eAAe,CAAC;YAC/B,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAC/D,IAAI,KAAK,EAAE,CAAC;oBACV,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/C,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxC,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACpC,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAEhF,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,UAAU;oBACvB,QAAQ;oBACR,aAAa,EAAE,MAAM,CAAC,MAAM;iBAC7B,CAAC;YACJ,CAAC;YAED,8BAA8B;YAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAE/E,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,aAAa;gBACb,QAAQ;gBACR,aAAa,EAAE,MAAM,CAAC,MAAM;aAC7B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,SAAS,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YAE5D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;aACpB,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -514,6 +514,37 @@ class BitsBoundMcpServer {
514
514
  switch (toolName) {
515
515
  case 'process_contract':
516
516
  return backautocrat.analyzeContract(args);
517
+ case 'get_analysis_status':
518
+ return backautocrat.getAnalysisStatus(args);
519
+ case 'ask_sac':
520
+ return backautocrat.askSac(args);
521
+ case 'generate_redline':
522
+ return backautocrat.generateRedline(args);
523
+ case 'generate_negotiation_email':
524
+ return backautocrat.generateNegotiationEmail(args);
525
+ case 'extract_clause':
526
+ return backautocrat.extractClause(args);
527
+ case 'compare_playbook':
528
+ return backautocrat.comparePlaybook(args);
529
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
530
+ // INSTANT SWARM - Parallel N-Section Redlining (spawns N agents for N sections)
531
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
532
+ case 'instant_swarm':
533
+ return backautocrat.instantSwarm(args);
534
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
535
+ // QUICK TOOLS - Immediate analysis without full pipeline
536
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
537
+ case 'quick_scan':
538
+ return backautocrat.quickScan(args);
539
+ case 'ask_clause':
540
+ return backautocrat.askClause(args);
541
+ case 'check_dealbreakers':
542
+ return backautocrat.checkDealbreakers(args);
543
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
544
+ // FILE DOWNLOAD - Retrieves files from R2 (e.g., redlined DOCX)
545
+ // ═══════════════════════════════════════════════════════════════════════════════════════════
546
+ case 'download_file':
547
+ return backautocrat.downloadFile(args);
517
548
  default:
518
549
  throw new Error(`Unknown tool: ${toolName}`);
519
550
  }