@adcp/client 4.13.0 → 4.15.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/bin/adcp.js +25 -23
- package/dist/lib/adapters/governance-adapter.d.ts +2 -2
- package/dist/lib/adapters/governance-adapter.d.ts.map +1 -1
- package/dist/lib/adapters/governance-adapter.js +1 -3
- package/dist/lib/adapters/governance-adapter.js.map +1 -1
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/GovernanceMiddleware.d.ts +2 -10
- package/dist/lib/core/GovernanceMiddleware.d.ts.map +1 -1
- package/dist/lib/core/GovernanceMiddleware.js +8 -51
- package/dist/lib/core/GovernanceMiddleware.js.map +1 -1
- package/dist/lib/core/GovernanceTypes.d.ts +4 -4
- package/dist/lib/core/GovernanceTypes.d.ts.map +1 -1
- package/dist/lib/core/GovernanceTypes.js +1 -0
- package/dist/lib/core/GovernanceTypes.js.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +6 -3
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/core/TaskExecutor.d.ts +4 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +43 -10
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/index.d.ts +5 -3
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +12 -6
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/index.d.ts +1 -0
- package/dist/lib/protocols/index.d.ts.map +1 -1
- package/dist/lib/protocols/index.js +14 -4
- package/dist/lib/protocols/index.js.map +1 -1
- package/dist/lib/protocols/mcp-tasks.d.ts +55 -0
- package/dist/lib/protocols/mcp-tasks.d.ts.map +1 -0
- package/dist/lib/protocols/mcp-tasks.js +334 -0
- package/dist/lib/protocols/mcp-tasks.js.map +1 -0
- package/dist/lib/protocols/mcp.d.ts +9 -0
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +4 -0
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/server/index.d.ts +2 -0
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js +7 -1
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/server/tasks.d.ts +86 -0
- package/dist/lib/server/tasks.d.ts.map +1 -0
- package/dist/lib/server/tasks.js +110 -0
- package/dist/lib/server/tasks.js.map +1 -0
- package/dist/lib/testing/agent-tester.d.ts +1 -1
- package/dist/lib/testing/agent-tester.d.ts.map +1 -1
- package/dist/lib/testing/agent-tester.js +28 -1
- package/dist/lib/testing/agent-tester.js.map +1 -1
- package/dist/lib/testing/client.d.ts +19 -0
- package/dist/lib/testing/client.d.ts.map +1 -1
- package/dist/lib/testing/client.js +64 -3
- package/dist/lib/testing/client.js.map +1 -1
- package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
- package/dist/lib/testing/compliance/comply.js +218 -3
- package/dist/lib/testing/compliance/comply.js.map +1 -1
- package/dist/lib/testing/compliance/types.d.ts +1 -1
- package/dist/lib/testing/compliance/types.d.ts.map +1 -1
- package/dist/lib/testing/index.d.ts +3 -1
- package/dist/lib/testing/index.d.ts.map +1 -1
- package/dist/lib/testing/index.js +9 -2
- package/dist/lib/testing/index.js.map +1 -1
- package/dist/lib/testing/orchestrator.d.ts.map +1 -1
- package/dist/lib/testing/orchestrator.js +14 -2
- package/dist/lib/testing/orchestrator.js.map +1 -1
- package/dist/lib/testing/scenarios/capabilities.js +2 -2
- package/dist/lib/testing/scenarios/capabilities.js.map +1 -1
- package/dist/lib/testing/scenarios/creative.js +4 -4
- package/dist/lib/testing/scenarios/creative.js.map +1 -1
- package/dist/lib/testing/scenarios/discovery.js +2 -2
- package/dist/lib/testing/scenarios/discovery.js.map +1 -1
- package/dist/lib/testing/scenarios/edge-cases.js +11 -11
- package/dist/lib/testing/scenarios/edge-cases.js.map +1 -1
- package/dist/lib/testing/scenarios/error-compliance.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/error-compliance.js +6 -7
- package/dist/lib/testing/scenarios/error-compliance.js.map +1 -1
- package/dist/lib/testing/scenarios/governance.d.ts +15 -0
- package/dist/lib/testing/scenarios/governance.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/governance.js +386 -49
- package/dist/lib/testing/scenarios/governance.js.map +1 -1
- package/dist/lib/testing/scenarios/health.js +2 -2
- package/dist/lib/testing/scenarios/health.js.map +1 -1
- package/dist/lib/testing/scenarios/index.d.ts +2 -2
- package/dist/lib/testing/scenarios/index.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/index.js +5 -1
- package/dist/lib/testing/scenarios/index.js.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.d.ts +24 -0
- package/dist/lib/testing/scenarios/media-buy.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.js +555 -8
- package/dist/lib/testing/scenarios/media-buy.js.map +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.js +5 -2
- package/dist/lib/testing/scenarios/schema-compliance.js.map +1 -1
- package/dist/lib/testing/scenarios/signals.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/signals.js +39 -3
- package/dist/lib/testing/scenarios/signals.js.map +1 -1
- package/dist/lib/testing/scenarios/sponsored-intelligence.js +6 -6
- package/dist/lib/testing/scenarios/sponsored-intelligence.js.map +1 -1
- package/dist/lib/testing/stubs/governance-agent-stub.d.ts +72 -0
- package/dist/lib/testing/stubs/governance-agent-stub.d.ts.map +1 -0
- package/dist/lib/testing/stubs/governance-agent-stub.js +295 -0
- package/dist/lib/testing/stubs/governance-agent-stub.js.map +1 -0
- package/dist/lib/testing/stubs/index.d.ts +3 -0
- package/dist/lib/testing/stubs/index.d.ts.map +1 -0
- package/dist/lib/testing/stubs/index.js +6 -0
- package/dist/lib/testing/stubs/index.js.map +1 -0
- package/dist/lib/testing/types.d.ts +5 -1
- package/dist/lib/testing/types.d.ts.map +1 -1
- package/dist/lib/types/core.generated.d.ts +7890 -92
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js +1 -1
- package/dist/lib/types/error-codes.d.ts +4 -4
- package/dist/lib/types/error-codes.d.ts.map +1 -1
- package/dist/lib/types/error-codes.js +26 -2
- package/dist/lib/types/error-codes.js.map +1 -1
- package/dist/lib/types/schemas.generated.d.ts +7649 -3768
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +677 -418
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +8325 -450
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/utils/response-schemas.d.ts +9 -0
- package/dist/lib/utils/response-schemas.d.ts.map +1 -0
- package/dist/lib/utils/response-schemas.js +60 -0
- package/dist/lib/utils/response-schemas.js.map +1 -0
- package/dist/lib/utils/response-unwrapper.d.ts +2 -2
- package/dist/lib/utils/response-unwrapper.d.ts.map +1 -1
- package/dist/lib/utils/response-unwrapper.js +3 -91
- package/dist/lib/utils/response-unwrapper.js.map +1 -1
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/package.json +1 -1
package/dist/lib/index.js
CHANGED
|
@@ -16,11 +16,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
17
17
|
};
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.isStandardErrorCode = exports.STANDARD_ERROR_CODES = exports.InputRequiredError = exports.is401Error = exports.extractErrorInfo = exports.isErrorOfType = exports.isADCPError = exports.FeatureUnsupportedError = exports.AuthenticationRequiredError = exports.ConfigurationError = exports.InvalidContextError = exports.MissingInputHandlerError = exports.ADCPValidationError = exports.ProtocolError = exports.UnsupportedTaskError = exports.AgentNotFoundError = exports.TaskAbortedError = exports.DeferredTaskError = exports.MaxClarificationError = exports.TaskTimeoutError = exports.ADCPError = exports.createMemoryStorageConfig = exports.createMemoryStorage = exports.MemoryStorage = exports.createAsyncHandler = exports.AsyncHandler = exports.createOperationId = exports.
|
|
20
|
-
exports.
|
|
21
|
-
exports.
|
|
22
|
-
exports.
|
|
23
|
-
exports.creativeAgent = exports.TEST_AGENT_NO_AUTH_A2A_CONFIG = exports.TEST_AGENT_NO_AUTH_MCP_CONFIG = exports.testAgentNoAuthA2A = exports.testAgentNoAuth = exports.TEST_AGENT_A2A_CONFIG = exports.TEST_AGENT_MCP_CONFIG = exports.TEST_AGENT_TOKEN = exports.createTestAgent = exports.testAgentClient = exports.testAgentA2A = exports.testAgent = exports.AdCPClient = exports.isGovernanceAdapterError = exports.GovernanceAdapterErrorCodes = exports.defaultGovernanceAdapter = exports.GovernanceAdapter = exports.defaultSISessionManager = exports.SIErrorCodes = exports.AISISessionManager = exports.SISessionManager = exports.defaultProposalManager = exports.ProposalErrorCodes = exports.AIProposalManager = exports.ProposalManager = void 0;
|
|
19
|
+
exports.getErrorRecovery = exports.isStandardErrorCode = exports.STANDARD_ERROR_CODES = exports.InputRequiredError = exports.is401Error = exports.extractErrorInfo = exports.isErrorOfType = exports.isADCPError = exports.FeatureUnsupportedError = exports.AuthenticationRequiredError = exports.ConfigurationError = exports.InvalidContextError = exports.MissingInputHandlerError = exports.ADCPValidationError = exports.ProtocolError = exports.UnsupportedTaskError = exports.AgentNotFoundError = exports.TaskAbortedError = exports.DeferredTaskError = exports.MaxClarificationError = exports.TaskTimeoutError = exports.ADCPError = exports.createMemoryStorageConfig = exports.createMemoryStorage = exports.MemoryStorage = exports.createAsyncHandler = exports.AsyncHandler = exports.createOperationId = exports.GovernanceMiddleware = exports.responseValidator = exports.ResponseValidator = exports.ADCP_STATUS = exports.responseParser = exports.ProtocolResponseParser = exports.TaskExecutor = exports.STANDARD_CREATIVE_AGENTS = exports.createCreativeAgentClient = exports.CreativeAgentClient = exports.ConfigurationManager = exports.createADCPMultiAgentClient = exports.ADCPMultiAgentClient = exports.AgentClient = exports.UnsupportedFeatureError = exports.createSingleAgentClient = exports.SingleAgentClient = exports.PropertyCrawler = exports.resetPropertyIndex = exports.getPropertyIndex = exports.PropertyIndex = exports.RegistryClient = void 0;
|
|
20
|
+
exports.getFormatAssets = exports.paginatePages = exports.paginate = exports.isCPAPricing = exports.stripAgentCardPath = exports.buildCardUrls = exports.isWellKnownAgentCardUrl = exports.isAgentCardPath = exports.A2A_CARD_PATHS = exports.detectProtocolWithTimeout = exports.detectProtocol = exports.STANDARD_FORMATS = exports.MAX_CONCURRENT = exports.REQUEST_TIMEOUT = exports.isAdcpSuccess = exports.isAdcpError = exports.unwrapProtocolResponse = exports.getStandardFormats = exports.createA2AClient = exports.createMCPClient = exports.callA2ATool = exports.callMCPTool = exports.ProtocolClient = exports.handleAdCPResponse = exports.getExpectedSchema = exports.validateAdCPResponse = exports.validateAgentUrl = exports.createAuthenticatedFetch = exports.createMCPAuthHeaders = exports.createAdCPHeaders = exports.getAuthToken = exports.normalizePackageParams = exports.normalizeRequestParams = exports.promotedOfferingsToCatalog = exports.promotedProductsToCatalog = exports.brandManifestToBrandReference = exports.getExpectedAction = exports.resolveRecovery = exports.extractAdcpErrorFromTransport = exports.extractAdcpErrorFromMcp = exports.isTerminal = exports.InMemoryTaskStore = exports.createTaskCapableServer = exports.registerAdcpTaskTool = exports.taskToolResponse = exports.deliveryResponse = exports.mediaBuyResponse = exports.productsResponse = exports.capabilitiesResponse = exports.adcpError = void 0;
|
|
21
|
+
exports.getRenderId = exports.usesV3RenderFields = exports.usesV2RenderFields = exports.normalizePreviewCreativeResponse = exports.normalizePreview = exports.normalizePreviewRender = exports.getFormatDimensions = exports.usesV3Renders = exports.usesV2Dimensions = exports.isMultiRenderFormat = exports.getCompanionRenders = exports.getPrimaryRender = exports.getFormatRenders = exports.normalizeFormatsResponse = exports.normalizeFormatRenders = exports.getCreativeAssignments = exports.getCreativeIds = exports.usesV3CreativeAssignments = exports.usesV2CreativeIds = exports.normalizeMediaBuyResponse = exports.normalizePackageResponse = exports.adaptUpdateMediaBuyRequestForV2 = exports.adaptCreateMediaBuyRequestForV2 = exports.adaptPackageRequestForV2 = exports.TASK_FEATURE_MAP = exports.PROTOCOL_TOOLS = exports.ACCOUNT_TOOLS = exports.EVENT_TRACKING_TOOLS = exports.CREATIVE_TOOLS = exports.GOVERNANCE_TOOLS = exports.SIGNALS_TOOLS = exports.MEDIA_BUY_TOOLS = exports.listDeclaredFeatures = exports.resolveFeature = exports.supportsSandbox = exports.requiresAccountForProducts = exports.requiresOperatorAuth = exports.supportsContentStandards = exports.supportsPropertyListFiltering = exports.supportsProtocol = exports.supportsV3 = exports.parseCapabilitiesResponse = exports.buildSyntheticCapabilities = exports.hasAssets = exports.getAssetCount = exports.usesDeprecatedAssetsField = exports.getRepeatableGroups = exports.getIndividualAssets = exports.getOptionalAssets = exports.getRequiredAssets = void 0;
|
|
22
|
+
exports.defaultContentStandardsAdapter = exports.isContentStandardsError = exports.ContentStandardsErrorCodes = exports.ContentStandardsAdapter = exports.AgentCollection = exports.Agent = exports.recordSpanException = exports.addSpanAttributes = exports.withSpan = exports.injectTraceHeaders = exports.isTracingEnabled = exports.getTracer = exports.VERSION_INFO = exports.COMPATIBLE_ADCP_VERSIONS = exports.LIBRARY_VERSION = exports.ADCP_VERSION = exports.getCompatibleVersions = exports.isCompatibleWith = exports.getLibraryVersion = exports.getAdcpVersion = exports.isSyncCreativesFailed = exports.isSyncCreativesSubmitted = exports.isSyncCreativesInputRequired = exports.isSyncCreativesWorking = exports.isSyncCreativesCompleted = exports.isUpdateMediaBuyFailed = exports.isUpdateMediaBuySubmitted = exports.isUpdateMediaBuyInputRequired = exports.isUpdateMediaBuyWorking = exports.isUpdateMediaBuyCompleted = exports.isCreateMediaBuyFailed = exports.isCreateMediaBuySubmitted = exports.isCreateMediaBuyInputRequired = exports.isCreateMediaBuyWorking = exports.isCreateMediaBuyCompleted = exports.isGetProductsFailed = exports.isGetProductsSubmitted = exports.isGetProductsInputRequired = exports.isGetProductsWorking = exports.isGetProductsCompleted = exports.isStatusRejected = exports.isStatusFailed = exports.isStatusSubmitted = exports.isStatusInputRequired = exports.isStatusWorking = exports.isStatusCompleted = exports.getPreviewHtml = exports.getPreviewUrl = exports.getPrimaryPreviewRender = exports.getRenderRole = void 0;
|
|
23
|
+
exports.creativeAgent = exports.TEST_AGENT_NO_AUTH_A2A_CONFIG = exports.TEST_AGENT_NO_AUTH_MCP_CONFIG = exports.testAgentNoAuthA2A = exports.testAgentNoAuth = exports.TEST_AGENT_A2A_CONFIG = exports.TEST_AGENT_MCP_CONFIG = exports.TEST_AGENT_TOKEN = exports.createTestAgent = exports.testAgentClient = exports.testAgentA2A = exports.testAgent = exports.AdCPClient = exports.isGovernanceAdapterError = exports.GovernanceAdapterErrorCodes = exports.defaultGovernanceAdapter = exports.GovernanceAdapter = exports.defaultSISessionManager = exports.SIErrorCodes = exports.AISISessionManager = exports.SISessionManager = exports.defaultProposalManager = exports.ProposalErrorCodes = exports.AIProposalManager = exports.ProposalManager = exports.defaultPropertyListAdapter = exports.isPropertyListError = exports.PropertyListErrorCodes = exports.PropertyListAdapter = void 0;
|
|
24
24
|
exports.createAdCPClient = createAdCPClient;
|
|
25
25
|
exports.createAdCPClientFromEnv = createAdCPClientFromEnv;
|
|
26
26
|
// ====== REGISTRY LOOKUPS ======
|
|
@@ -61,7 +61,6 @@ Object.defineProperty(exports, "ResponseValidator", { enumerable: true, get: fun
|
|
|
61
61
|
Object.defineProperty(exports, "responseValidator", { enumerable: true, get: function () { return ResponseValidator_1.responseValidator; } });
|
|
62
62
|
var GovernanceMiddleware_1 = require("./core/GovernanceMiddleware");
|
|
63
63
|
Object.defineProperty(exports, "GovernanceMiddleware", { enumerable: true, get: function () { return GovernanceMiddleware_1.GovernanceMiddleware; } });
|
|
64
|
-
Object.defineProperty(exports, "extractGovernanceContext", { enumerable: true, get: function () { return GovernanceMiddleware_1.extractGovernanceContext; } });
|
|
65
64
|
var TaskEventTypes_1 = require("./core/TaskEventTypes");
|
|
66
65
|
Object.defineProperty(exports, "createOperationId", { enumerable: true, get: function () { return TaskEventTypes_1.createOperationId; } });
|
|
67
66
|
var AsyncHandler_1 = require("./core/AsyncHandler");
|
|
@@ -109,6 +108,13 @@ Object.defineProperty(exports, "capabilitiesResponse", { enumerable: true, get:
|
|
|
109
108
|
Object.defineProperty(exports, "productsResponse", { enumerable: true, get: function () { return server_1.productsResponse; } });
|
|
110
109
|
Object.defineProperty(exports, "mediaBuyResponse", { enumerable: true, get: function () { return server_1.mediaBuyResponse; } });
|
|
111
110
|
Object.defineProperty(exports, "deliveryResponse", { enumerable: true, get: function () { return server_1.deliveryResponse; } });
|
|
111
|
+
// MCP Tasks server-side helpers
|
|
112
|
+
var server_2 = require("./server");
|
|
113
|
+
Object.defineProperty(exports, "taskToolResponse", { enumerable: true, get: function () { return server_2.taskToolResponse; } });
|
|
114
|
+
Object.defineProperty(exports, "registerAdcpTaskTool", { enumerable: true, get: function () { return server_2.registerAdcpTaskTool; } });
|
|
115
|
+
Object.defineProperty(exports, "createTaskCapableServer", { enumerable: true, get: function () { return server_2.createTaskCapableServer; } });
|
|
116
|
+
Object.defineProperty(exports, "InMemoryTaskStore", { enumerable: true, get: function () { return server_2.InMemoryTaskStore; } });
|
|
117
|
+
Object.defineProperty(exports, "isTerminal", { enumerable: true, get: function () { return server_2.isTerminal; } });
|
|
112
118
|
// ====== ERROR EXTRACTION ======
|
|
113
119
|
// Extract structured AdCP errors from transport responses
|
|
114
120
|
var error_extraction_1 = require("./utils/error-extraction");
|
package/dist/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,sEAAsE;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,sEAAsE;;;;;;;;;;;;;;;;;;;;;AAmqBtE,4CAEC;AAMD,0DAEC;AA3qBD,iCAAiC;AACjC,uCAA4C;AAAnC,0GAAA,cAAc,OAAA;AAuBvB,iDAAiD;AACjD,6DAMoC;AALlC,+GAAA,aAAa,OAAA;AACb,kHAAA,gBAAgB,OAAA;AAChB,oHAAA,kBAAkB,OAAA;AAIpB,iEAAiG;AAAxF,mHAAA,eAAe,OAAA;AASxB,gDAAgD;AAChD,4DAA4D;AAC5D,8DAA+G;AAAtG,sHAAA,iBAAiB,OAAA;AAAE,4HAAA,uBAAuB,OAAA;AAAE,4HAAA,uBAAuB,OAAA;AAE5E,kDAA8F;AAArF,0GAAA,WAAW,OAAA;AACpB,oEAA+F;AAAtF,4HAAA,oBAAoB,OAAA;AAAE,kIAAA,0BAA0B,OAAA;AACzD,oEAAmE;AAA1D,4HAAA,oBAAoB,OAAA;AAC7B,kEAOoC;AANlC,0HAAA,mBAAmB,OAAA;AACnB,gIAAA,yBAAyB,OAAA;AACzB,+HAAA,wBAAwB,OAAA;AAK1B,oDAAmD;AAA1C,4GAAA,YAAY,OAAA;AACrB,wEAAqH;AAA5G,gIAAA,sBAAsB,OAAA;AAAE,wHAAA,cAAc,OAAA;AAAE,qHAAA,WAAW,OAAA;AAC5D,8DAKkC;AAJhC,sHAAA,iBAAiB,OAAA;AACjB,sHAAA,iBAAiB,OAAA;AAiCnB,oEAAmE;AAA1D,4HAAA,oBAAoB,OAAA;AAa7B,wDAA0D;AAAjD,mHAAA,iBAAiB,OAAA;AAc1B,oDAAuE;AAA9D,4GAAA,YAAY,OAAA;AAAE,kHAAA,kBAAkB,OAAA;AAEzC,+BAA+B;AAC/B,mDAAiC;AAcjC,yDAAwG;AAA/F,8GAAA,aAAa,OAAA;AAAE,oHAAA,mBAAmB,OAAA;AAAE,0HAAA,yBAAyB,OAAA;AAEtE,8BAA8B;AAC9B,mCAmBkB;AAlBhB,mGAAA,SAAS,OAAA;AACT,0GAAA,gBAAgB,OAAA;AAChB,+GAAA,qBAAqB,OAAA;AACrB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,8GAAA,oBAAoB,OAAA;AACpB,uGAAA,aAAa,OAAA;AACb,6GAAA,eAAe,OAAuB;AACtC,kHAAA,wBAAwB,OAAA;AACxB,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAClB,qHAAA,2BAA2B,OAAA;AAC3B,iHAAA,uBAAuB,OAAA;AACvB,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,0GAAA,gBAAgB,OAAA;AAChB,oGAAA,UAAU,OAAA;AAGZ,oDAAyD;AAAhD,kHAAA,kBAAkB,OAAA;AAE3B,2BAA2B;AAC3B,0CAAwB;AAoNxB,mDAAkG;AAAzF,mHAAA,oBAAoB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAAE,+GAAA,gBAAgB,OAAA;AAGpE,oCAAoC;AACpC,kDAAkD;AAClD,mCAAiH;AAAxG,mGAAA,SAAS,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAG9F,gCAAgC;AAChC,mCAMkB;AALhB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AACvB,2GAAA,iBAAiB,OAAA;AACjB,oGAAA,UAAU,OAAA;AAeZ,iCAAiC;AACjC,0DAA0D;AAC1D,6DAKkC;AAJhC,2HAAA,uBAAuB,OAAA;AACvB,iIAAA,6BAA6B,OAAA;AAC7B,mHAAA,eAAe,OAAA;AACf,qHAAA,iBAAiB,OAAA;AAcnB,yCAAsH;AAA7G,uHAAA,6BAA6B,OAAA;AAAE,mHAAA,yBAAyB,OAAA;AAAE,oHAAA,0BAA0B,OAAA;AAE7F,qEAAqE;AACrE,iEAA4F;AAAnF,4HAAA,sBAAsB,OAAA;AAAE,4HAAA,sBAAsB,OAAA;AAEvD,qDAAqD;AACrD,sDAAsD;AACtD,4DAA0C;AAE1C,+BAA+B;AAC/B,yCAAyC;AACzC,+BAAyG;AAAhG,oGAAA,YAAY,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAAE,4GAAA,oBAAoB,OAAA;AAAE,gHAAA,wBAAwB,OAAA;AAExF,2BAA2B;AAC3B,2CAA2C;AAC3C,2CAA6G;AAApG,8GAAA,gBAAgB,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAAE,+GAAA,iBAAiB,OAAA;AAAE,gHAAA,kBAAkB,OAAA;AAEtF,iCAAiC;AACjC,qEAAqE;AACrE,yCAAyG;AAAhG,2GAAA,cAAc,OAAA;AAAE,wGAAA,WAAW,OAAA;AAAE,wGAAA,WAAW,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,4GAAA,eAAe,OAAA;AAEnF,mCAAmC;AACnC,mDAAmD;AACnD,iCAAiG;AAAxF,2GAAA,kBAAkB,OAAA;AAAE,+GAAA,sBAAsB,OAAA;AAAE,oGAAA,WAAW,OAAA;AAAE,sGAAA,aAAa,OAAA;AAC/E,iCAA4E;AAAnE,wGAAA,eAAe,OAAA;AAAE,uGAAA,cAAc,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAC1D,iCAAoE;AAA3D,uGAAA,cAAc,OAAA;AAAE,kHAAA,yBAAyB,OAAA;AAClD,iCAAsH;AAA7G,uGAAA,cAAc,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,gHAAA,uBAAuB,OAAA;AAAE,sGAAA,aAAa,OAAA;AAAE,2GAAA,kBAAkB,OAAA;AAEpG,kCAAkC;AAClC,4DAA4D;AAC5D,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AAErB,qCAAqC;AACrC,0DAA0D;AAC1D,iCAAwE;AAA/D,iGAAA,QAAQ,OAAA;AAAE,sGAAA,aAAa,OAAA;AAEhC,uCAAuC;AACvC,8CAA8C;AAC9C,uDAS+B;AAR7B,gHAAA,eAAe,OAAA;AACf,kHAAA,iBAAiB,OAAA;AACjB,kHAAA,iBAAiB,OAAA;AACjB,oHAAA,mBAAmB,OAAA;AACnB,oHAAA,mBAAmB,OAAA;AACnB,0HAAA,yBAAyB,OAAA;AACzB,8GAAA,aAAa,OAAA;AACb,0GAAA,SAAS,OAAA;AAGX,6CAA6C;AAC7C,mEAAmE;AACnE,qDAoB8B;AAnB5B,0HAAA,0BAA0B,OAAA;AAC1B,yHAAA,yBAAyB,OAAA;AACzB,0GAAA,UAAU,OAAA;AACV,gHAAA,gBAAgB,OAAA;AAChB,6HAAA,6BAA6B,OAAA;AAC7B,wHAAA,wBAAwB,OAAA;AACxB,oHAAA,oBAAoB,OAAA;AACpB,0HAAA,0BAA0B,OAAA;AAC1B,+GAAA,eAAe,OAAA;AACf,8GAAA,cAAc,OAAA;AACd,oHAAA,oBAAoB,OAAA;AACpB,+GAAA,eAAe,OAAA;AACf,6GAAA,aAAa,OAAA;AACb,gHAAA,gBAAgB,OAAA;AAChB,8GAAA,cAAc,OAAA;AACd,oHAAA,oBAAoB,OAAA;AACpB,6GAAA,aAAa,OAAA;AACb,8GAAA,cAAc,OAAA;AACd,gHAAA,gBAAgB,OAAA;AAYlB,0EAA0E;AAC1E,6DAUkC;AAThC,4HAAA,wBAAwB,OAAA;AACxB,mIAAA,+BAA+B,OAAA;AAC/B,mIAAA,+BAA+B,OAAA;AAC/B,4HAAA,wBAAwB,OAAA;AACxB,6HAAA,yBAAyB,OAAA;AACzB,qHAAA,iBAAiB,OAAA;AACjB,6HAAA,yBAAyB,OAAA;AACzB,kHAAA,cAAc,OAAA;AACd,0HAAA,sBAAsB,OAAA;AAIxB,yDAAyD;AACzD,yDAUgC;AAT9B,wHAAA,sBAAsB,OAAA;AACtB,0HAAA,wBAAwB,OAAA;AACxB,kHAAA,gBAAgB,OAAA;AAChB,kHAAA,gBAAgB,OAAA;AAChB,qHAAA,mBAAmB,OAAA;AACnB,qHAAA,mBAAmB,OAAA;AACnB,kHAAA,gBAAgB,OAAA;AAChB,+GAAA,aAAa,OAAA;AACb,qHAAA,mBAAmB,OAAA;AAIrB,4DAA4D;AAC5D,iEAWoC;AAVlC,4HAAA,sBAAsB,OAAA;AACtB,sHAAA,gBAAgB,OAAA;AAChB,sIAAA,gCAAgC,OAAA;AAChC,wHAAA,kBAAkB,OAAA;AAClB,wHAAA,kBAAkB,OAAA;AAClB,iHAAA,WAAW,OAAA;AACX,mHAAA,aAAa,OAAA;AACb,6HAAA,uBAAuB,OAAA;AACvB,mHAAA,aAAa,OAAA;AACb,oHAAA,cAAc,OAAA;AAIhB,qCAAqC;AACrC,0EAA0E;AAC1E,iDAgC4B;AA/B1B,wBAAwB;AACxB,+GAAA,iBAAiB,OAAA;AACjB,6GAAA,eAAe,OAAA;AACf,mHAAA,qBAAqB,OAAA;AACrB,+GAAA,iBAAiB,OAAA;AACjB,4GAAA,cAAc,OAAA;AACd,8GAAA,gBAAgB,OAAA;AAChB,0BAA0B;AAC1B,oHAAA,sBAAsB,OAAA;AACtB,kHAAA,oBAAoB,OAAA;AACpB,wHAAA,0BAA0B,OAAA;AAC1B,oHAAA,sBAAsB,OAAA;AACtB,iHAAA,mBAAmB,OAAA;AACnB,6BAA6B;AAC7B,uHAAA,yBAAyB,OAAA;AACzB,qHAAA,uBAAuB,OAAA;AACvB,2HAAA,6BAA6B,OAAA;AAC7B,uHAAA,yBAAyB,OAAA;AACzB,oHAAA,sBAAsB,OAAA;AACtB,6BAA6B;AAC7B,uHAAA,yBAAyB,OAAA;AACzB,qHAAA,uBAAuB,OAAA;AACvB,2HAAA,6BAA6B,OAAA;AAC7B,uHAAA,yBAAyB,OAAA;AACzB,oHAAA,sBAAsB,OAAA;AACtB,4BAA4B;AAC5B,sHAAA,wBAAwB,OAAA;AACxB,oHAAA,sBAAsB,OAAA;AACtB,0HAAA,4BAA4B,OAAA;AAC5B,sHAAA,wBAAwB,OAAA;AACxB,mHAAA,qBAAqB,OAAA;AAGvB,oCAAoC;AACpC,qCASmB;AARjB,yGAAA,cAAc,OAAA;AACd,4GAAA,iBAAiB,OAAA;AACjB,2GAAA,gBAAgB,OAAA;AAChB,gHAAA,qBAAqB,OAAA;AACrB,uGAAA,YAAY,OAAA;AACZ,0GAAA,eAAe,OAAA;AACf,mHAAA,wBAAwB,OAAA;AACxB,uGAAA,YAAY,OAAA;AAGd,8BAA8B;AAC9B,8EAA8E;AAC9E,iDAOyB;AANvB,0GAAA,SAAS,OAAA;AACT,iHAAA,gBAAgB,OAAA;AAChB,mHAAA,kBAAkB,OAAA;AAClB,yGAAA,QAAQ,OAAA;AACR,kHAAA,iBAAiB,OAAA;AACjB,oHAAA,mBAAmB,OAAA;AAGrB,8BAA8B;AAC9B,uDAAuD;AACvD,4DAAkE;AAAzD,wGAAA,KAAK,OAAA;AAAE,kHAAA,eAAe,OAAA;AAE/B,qCAAqC;AACrC,sEAAsE;AACtE,uCAsCoB;AArClB,oBAAoB;AACpB,mHAAA,uBAAuB,OAAA;AAGvB,sHAAA,0BAA0B,OAAA;AAC1B,mHAAA,uBAAuB,OAAA;AACvB,0HAAA,8BAA8B,OAAA;AAC9B,iBAAiB;AACjB,+GAAA,mBAAmB,OAAA;AAGnB,kHAAA,sBAAsB,OAAA;AACtB,+GAAA,mBAAmB,OAAA;AACnB,sHAAA,0BAA0B,OAAA;AAC1B,sBAAsB;AACtB,2GAAA,eAAe,OAAA;AACf,6GAAA,iBAAiB,OAAA;AAGjB,8GAAA,kBAAkB,OAAA;AAClB,kHAAA,sBAAsB,OAAA;AACtB,kCAAkC;AAClC,4GAAA,gBAAgB,OAAA;AAChB,8GAAA,kBAAkB,OAAA;AAGlB,wGAAA,YAAY,OAAA;AACZ,mHAAA,uBAAuB,OAAA;AACvB,4CAA4C;AAC5C,6GAAA,iBAAiB,OAAA;AACjB,oHAAA,wBAAwB,OAAA;AAKxB,uHAAA,2BAA2B,OAAA;AAC3B,oHAAA,wBAAwB,OAAA;AAM1B,sEAAmE;AAEnE;;;GAGG;AACU,QAAA,UAAU,GAAG,2CAAoB,CAAC;AAE/C,qEAAqE;AACrE,sDAAsD;AAEtD;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,MAAsB;IACrD,OAAO,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB;IACrC,OAAO,2CAAoB,CAAC,OAAO,EAAE,CAAC;AACxC,CAAC;AAED,6BAA6B;AAC7B,mFAAmF;AACnF,yCAayB;AAZvB,kGAAA,SAAS,OAAA;AACT,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,wGAAA,eAAe,OAAA;AACf,yGAAA,gBAAgB,OAAA;AAChB,8GAAA,qBAAqB,OAAA;AACrB,8GAAA,qBAAqB,OAAA;AACrB,wGAAA,eAAe,OAAA;AACf,2GAAA,kBAAkB,OAAA;AAClB,sHAAA,6BAA6B,OAAA;AAC7B,sHAAA,6BAA6B,OAAA;AAC7B,sGAAA,aAAa,OAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { callMCPTool, callMCPToolWithOAuth, connectMCP, closeMCPConnections, UnauthorizedError } from './mcp';
|
|
2
2
|
export type { MCPCallOptions, MCPConnectionResult } from './mcp';
|
|
3
3
|
export { callA2ATool } from './a2a';
|
|
4
|
+
export { callMCPToolWithTasks, getMCPTaskStatus, getMCPTaskResult, listMCPTasks, cancelMCPTask, mapMCPTaskStatus, serverSupportsTasks, } from './mcp-tasks';
|
|
4
5
|
import type { AgentConfig, DebugLogEntry } from '../types';
|
|
5
6
|
/**
|
|
6
7
|
* Universal protocol client - automatically routes to the correct protocol implementation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,UAAU,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC9G,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,UAAU,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC9G,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAM3D;;GAEG;AACH,qBAAa,cAAc;IACzB;;;;;;;;;;;;;OAaG;WACU,QAAQ,CACnB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,GAAE,aAAa,EAAO,EAC/B,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,OAAO,CAAC;CAqDpB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,YAAY,MAAM,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;yBAC/E,MAAM,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,aAAa,EAAE;CAEvF,CAAC;AAEH,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,YAAY,MAAM,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;yBAC/E,MAAM,cAAc,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,aAAa,EAAE;CAE7F,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createA2AClient = exports.createMCPClient = exports.ProtocolClient = exports.callA2ATool = exports.UnauthorizedError = exports.closeMCPConnections = exports.connectMCP = exports.callMCPToolWithOAuth = exports.callMCPTool = void 0;
|
|
3
|
+
exports.createA2AClient = exports.createMCPClient = exports.ProtocolClient = exports.serverSupportsTasks = exports.mapMCPTaskStatus = exports.cancelMCPTask = exports.listMCPTasks = exports.getMCPTaskResult = exports.getMCPTaskStatus = exports.callMCPToolWithTasks = exports.callA2ATool = exports.UnauthorizedError = exports.closeMCPConnections = exports.connectMCP = exports.callMCPToolWithOAuth = exports.callMCPTool = void 0;
|
|
4
4
|
// Unified Protocol Interface for AdCP
|
|
5
5
|
var mcp_1 = require("./mcp");
|
|
6
6
|
Object.defineProperty(exports, "callMCPTool", { enumerable: true, get: function () { return mcp_1.callMCPTool; } });
|
|
@@ -10,7 +10,15 @@ Object.defineProperty(exports, "closeMCPConnections", { enumerable: true, get: f
|
|
|
10
10
|
Object.defineProperty(exports, "UnauthorizedError", { enumerable: true, get: function () { return mcp_1.UnauthorizedError; } });
|
|
11
11
|
var a2a_1 = require("./a2a");
|
|
12
12
|
Object.defineProperty(exports, "callA2ATool", { enumerable: true, get: function () { return a2a_1.callA2ATool; } });
|
|
13
|
-
|
|
13
|
+
var mcp_tasks_1 = require("./mcp-tasks");
|
|
14
|
+
Object.defineProperty(exports, "callMCPToolWithTasks", { enumerable: true, get: function () { return mcp_tasks_1.callMCPToolWithTasks; } });
|
|
15
|
+
Object.defineProperty(exports, "getMCPTaskStatus", { enumerable: true, get: function () { return mcp_tasks_1.getMCPTaskStatus; } });
|
|
16
|
+
Object.defineProperty(exports, "getMCPTaskResult", { enumerable: true, get: function () { return mcp_tasks_1.getMCPTaskResult; } });
|
|
17
|
+
Object.defineProperty(exports, "listMCPTasks", { enumerable: true, get: function () { return mcp_tasks_1.listMCPTasks; } });
|
|
18
|
+
Object.defineProperty(exports, "cancelMCPTask", { enumerable: true, get: function () { return mcp_tasks_1.cancelMCPTask; } });
|
|
19
|
+
Object.defineProperty(exports, "mapMCPTaskStatus", { enumerable: true, get: function () { return mcp_tasks_1.mapMCPTaskStatus; } });
|
|
20
|
+
Object.defineProperty(exports, "serverSupportsTasks", { enumerable: true, get: function () { return mcp_tasks_1.serverSupportsTasks; } });
|
|
21
|
+
const mcp_tasks_2 = require("./mcp-tasks");
|
|
14
22
|
const a2a_2 = require("./a2a");
|
|
15
23
|
const auth_1 = require("../auth");
|
|
16
24
|
const validation_1 = require("../validation");
|
|
@@ -60,7 +68,9 @@ class ProtocolClient {
|
|
|
60
68
|
const argsWithWebhook = pushNotificationConfig
|
|
61
69
|
? { ...args, push_notification_config: pushNotificationConfig }
|
|
62
70
|
: args;
|
|
63
|
-
|
|
71
|
+
// Use callMCPToolWithTasks which auto-detects server tasks capability
|
|
72
|
+
// and falls back to standard callTool when tasks are not supported
|
|
73
|
+
return (0, mcp_tasks_2.callMCPToolWithTasks)(agent.agent_uri, toolName, argsWithWebhook, authToken, debugLogs, agent.headers);
|
|
64
74
|
}
|
|
65
75
|
else if (agent.protocol === 'a2a') {
|
|
66
76
|
// For A2A, pass pushNotificationConfig separately (not in skill parameters)
|
|
@@ -78,7 +88,7 @@ exports.ProtocolClient = ProtocolClient;
|
|
|
78
88
|
* Simple factory functions for protocol-specific clients
|
|
79
89
|
*/
|
|
80
90
|
const createMCPClient = (agentUrl, authToken, headers) => ({
|
|
81
|
-
callTool: (toolName, args, debugLogs) => (0,
|
|
91
|
+
callTool: (toolName, args, debugLogs) => (0, mcp_tasks_2.callMCPToolWithTasks)(agentUrl, toolName, args, authToken, debugLogs, headers),
|
|
82
92
|
});
|
|
83
93
|
exports.createMCPClient = createMCPClient;
|
|
84
94
|
const createA2AClient = (agentUrl, authToken, headers) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AACtC,6BAA8G;AAArG,kGAAA,WAAW,OAAA;AAAE,2GAAA,oBAAoB,OAAA;AAAE,iGAAA,UAAU,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAAE,wGAAA,iBAAiB,OAAA;AAE9F,6BAAoC;AAA3B,kGAAA,WAAW,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Tasks protocol integration for async tool calls.
|
|
3
|
+
*
|
|
4
|
+
* When an MCP server declares `capabilities.tasks.requests.tools.call`, this module
|
|
5
|
+
* uses the SDK's experimental tasks API instead of custom AdCP tool calls for async
|
|
6
|
+
* lifecycle management. This removes the LLM from the polling path.
|
|
7
|
+
*
|
|
8
|
+
* Detection: check `client.getServerCapabilities()?.tasks?.requests?.tools?.call`
|
|
9
|
+
* after connection. The SDK's `isToolTask()` auto-detects per-tool `taskSupport`.
|
|
10
|
+
*/
|
|
11
|
+
import type { Client as MCPClient } from '@modelcontextprotocol/sdk/client/index.js';
|
|
12
|
+
import type { DebugLogEntry } from '../types/adcp';
|
|
13
|
+
import type { TaskInfo } from '../core/ConversationTypes';
|
|
14
|
+
/**
|
|
15
|
+
* Check if an MCP server supports the Tasks protocol for tool calls.
|
|
16
|
+
*/
|
|
17
|
+
export declare function serverSupportsTasks(client: MCPClient): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Map MCP Tasks status to AdCP status.
|
|
20
|
+
*
|
|
21
|
+
* MCP Tasks uses underscores and British spelling; AdCP uses hyphens and American spelling.
|
|
22
|
+
*/
|
|
23
|
+
export declare function mapMCPTaskStatus(mcpStatus: string): string;
|
|
24
|
+
/**
|
|
25
|
+
* Call an MCP tool with Tasks protocol support.
|
|
26
|
+
*
|
|
27
|
+
* If the server supports MCP Tasks and the tool has `taskSupport: 'optional' | 'required'`,
|
|
28
|
+
* uses `callToolStream()` which handles task creation, polling, and result retrieval.
|
|
29
|
+
*
|
|
30
|
+
* If the server doesn't support tasks, falls back to regular `client.callTool()`.
|
|
31
|
+
*
|
|
32
|
+
* The stream is consumed with a timeout. If the task doesn't complete within the timeout,
|
|
33
|
+
* returns a working-status response with the MCP task_id for follow-up polling.
|
|
34
|
+
*/
|
|
35
|
+
export declare function callMCPToolWithTasks(agentUrl: string, toolName: string, args: Record<string, unknown>, authToken?: string, debugLogs?: DebugLogEntry[], customHeaders?: Record<string, string>, options?: {
|
|
36
|
+
workingTimeout?: number;
|
|
37
|
+
}): Promise<unknown>;
|
|
38
|
+
/**
|
|
39
|
+
* Get task status via MCP Tasks protocol method (not tool call).
|
|
40
|
+
* Re-throws auth errors (401) — only catches protocol capability errors.
|
|
41
|
+
*/
|
|
42
|
+
export declare function getMCPTaskStatus(agentUrl: string, taskId: string, authToken?: string, debugLogs?: DebugLogEntry[], toolName?: string): Promise<TaskInfo>;
|
|
43
|
+
/**
|
|
44
|
+
* Get task result via MCP Tasks protocol method (blocks until terminal).
|
|
45
|
+
*/
|
|
46
|
+
export declare function getMCPTaskResult(agentUrl: string, taskId: string, authToken?: string, debugLogs?: DebugLogEntry[]): Promise<unknown>;
|
|
47
|
+
/**
|
|
48
|
+
* List tasks via MCP Tasks protocol method.
|
|
49
|
+
*/
|
|
50
|
+
export declare function listMCPTasks(agentUrl: string, authToken?: string, debugLogs?: DebugLogEntry[]): Promise<TaskInfo[]>;
|
|
51
|
+
/**
|
|
52
|
+
* Cancel a task via MCP Tasks protocol method.
|
|
53
|
+
*/
|
|
54
|
+
export declare function cancelMCPTask(agentUrl: string, taskId: string, authToken?: string, debugLogs?: DebugLogEntry[]): Promise<void>;
|
|
55
|
+
//# sourceMappingURL=mcp-tasks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tasks.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/mcp-tasks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AA8B1D;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAG9D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAe1D;AAuED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAa,EAAO,EAC/B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC,OAAO,CAAC,OAAO,CAAC,CA4JlB;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAa,EAAO,EAC/B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC,CAuBnB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAa,EAAO,GAC9B,OAAO,CAAC,OAAO,CAAC,CAalB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAa,EAAO,GAC9B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAYrB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAa,EAAO,GAC9B,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* MCP Tasks protocol integration for async tool calls.
|
|
4
|
+
*
|
|
5
|
+
* When an MCP server declares `capabilities.tasks.requests.tools.call`, this module
|
|
6
|
+
* uses the SDK's experimental tasks API instead of custom AdCP tool calls for async
|
|
7
|
+
* lifecycle management. This removes the LLM from the polling path.
|
|
8
|
+
*
|
|
9
|
+
* Detection: check `client.getServerCapabilities()?.tasks?.requests?.tools?.call`
|
|
10
|
+
* after connection. The SDK's `isToolTask()` auto-detects per-tool `taskSupport`.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.serverSupportsTasks = serverSupportsTasks;
|
|
14
|
+
exports.mapMCPTaskStatus = mapMCPTaskStatus;
|
|
15
|
+
exports.callMCPToolWithTasks = callMCPToolWithTasks;
|
|
16
|
+
exports.getMCPTaskStatus = getMCPTaskStatus;
|
|
17
|
+
exports.getMCPTaskResult = getMCPTaskResult;
|
|
18
|
+
exports.listMCPTasks = listMCPTasks;
|
|
19
|
+
exports.cancelMCPTask = cancelMCPTask;
|
|
20
|
+
const mcp_1 = require("./mcp");
|
|
21
|
+
const auth_1 = require("../auth");
|
|
22
|
+
const tracing_1 = require("../observability/tracing");
|
|
23
|
+
/**
|
|
24
|
+
* Track which MCP clients have had listTools() called.
|
|
25
|
+
* The SDK's isToolTask() needs tool metadata from listTools() to determine
|
|
26
|
+
* per-tool taskSupport. Without this, callToolStream silently degrades to
|
|
27
|
+
* a synchronous tools/call (no task creation).
|
|
28
|
+
*/
|
|
29
|
+
const toolsListedClients = new WeakSet();
|
|
30
|
+
/**
|
|
31
|
+
* Ensure tool metadata is cached in the SDK so isToolTask() works.
|
|
32
|
+
* Called once per client connection when tasks are supported.
|
|
33
|
+
*/
|
|
34
|
+
async function ensureToolsListed(client) {
|
|
35
|
+
if (toolsListedClients.has(client))
|
|
36
|
+
return;
|
|
37
|
+
await client.listTools();
|
|
38
|
+
toolsListedClients.add(client);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check if an MCP server supports the Tasks protocol for tool calls.
|
|
42
|
+
*/
|
|
43
|
+
function serverSupportsTasks(client) {
|
|
44
|
+
const caps = client.getServerCapabilities();
|
|
45
|
+
return !!caps?.tasks?.requests?.tools?.call;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Map MCP Tasks status to AdCP status.
|
|
49
|
+
*
|
|
50
|
+
* MCP Tasks uses underscores and British spelling; AdCP uses hyphens and American spelling.
|
|
51
|
+
*/
|
|
52
|
+
function mapMCPTaskStatus(mcpStatus) {
|
|
53
|
+
switch (mcpStatus) {
|
|
54
|
+
case 'working':
|
|
55
|
+
return 'working';
|
|
56
|
+
case 'input_required':
|
|
57
|
+
return 'input-required';
|
|
58
|
+
case 'completed':
|
|
59
|
+
return 'completed';
|
|
60
|
+
case 'failed':
|
|
61
|
+
return 'failed';
|
|
62
|
+
case 'cancelled':
|
|
63
|
+
return 'canceled';
|
|
64
|
+
default:
|
|
65
|
+
return mcpStatus;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Map an MCP Task object to an AdCP TaskInfo.
|
|
70
|
+
*/
|
|
71
|
+
function mapMCPTaskToTaskInfo(task, toolName) {
|
|
72
|
+
return {
|
|
73
|
+
taskId: task.taskId,
|
|
74
|
+
status: mapMCPTaskStatus(task.status),
|
|
75
|
+
taskType: toolName ?? 'unknown',
|
|
76
|
+
createdAt: new Date(task.createdAt).getTime(),
|
|
77
|
+
updatedAt: new Date(task.lastUpdatedAt).getTime(),
|
|
78
|
+
error: task.status === 'failed' ? task.statusMessage : undefined,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Build auth headers for MCP connections.
|
|
83
|
+
*/
|
|
84
|
+
function buildAuthHeaders(authToken, customHeaders) {
|
|
85
|
+
const traceHeaders = (0, tracing_1.injectTraceHeaders)();
|
|
86
|
+
return {
|
|
87
|
+
...customHeaders,
|
|
88
|
+
...traceHeaders,
|
|
89
|
+
...(authToken ? (0, auth_1.createMCPAuthHeaders)(authToken) : {}),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Redact sensitive fields from tool args before logging.
|
|
94
|
+
*/
|
|
95
|
+
function redactArgsForLog(args) {
|
|
96
|
+
if (!args.push_notification_config)
|
|
97
|
+
return args;
|
|
98
|
+
return {
|
|
99
|
+
...args,
|
|
100
|
+
push_notification_config: { ...args.push_notification_config, authentication: '***' },
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Validate taskId before passing to protocol methods.
|
|
105
|
+
*/
|
|
106
|
+
function validateTaskId(taskId) {
|
|
107
|
+
if (!taskId || typeof taskId !== 'string' || taskId.length > 256) {
|
|
108
|
+
throw new Error(`Invalid taskId: expected non-empty string (max 256 chars)`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Check for MCP isError responses and throw, matching callMCPTool behavior.
|
|
113
|
+
*/
|
|
114
|
+
function throwOnMCPError(response, toolName) {
|
|
115
|
+
if (response?.isError && response?.content && Array.isArray(response.content)) {
|
|
116
|
+
const errorText = response.content
|
|
117
|
+
.filter(item => item.type === 'text' && item.text)
|
|
118
|
+
.map(item => item.text)
|
|
119
|
+
.join('\n');
|
|
120
|
+
throw new Error(errorText || `MCP tool '${toolName}' execution failed (no error details provided)`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Call an MCP tool with Tasks protocol support.
|
|
125
|
+
*
|
|
126
|
+
* If the server supports MCP Tasks and the tool has `taskSupport: 'optional' | 'required'`,
|
|
127
|
+
* uses `callToolStream()` which handles task creation, polling, and result retrieval.
|
|
128
|
+
*
|
|
129
|
+
* If the server doesn't support tasks, falls back to regular `client.callTool()`.
|
|
130
|
+
*
|
|
131
|
+
* The stream is consumed with a timeout. If the task doesn't complete within the timeout,
|
|
132
|
+
* returns a working-status response with the MCP task_id for follow-up polling.
|
|
133
|
+
*/
|
|
134
|
+
async function callMCPToolWithTasks(agentUrl, toolName, args, authToken, debugLogs = [], customHeaders, options) {
|
|
135
|
+
return (0, tracing_1.withSpan)('adcp.mcp.call_tool', {
|
|
136
|
+
'adcp.tool': toolName,
|
|
137
|
+
'http.url': agentUrl,
|
|
138
|
+
}, async () => {
|
|
139
|
+
const authHeaders = buildAuthHeaders(authToken, customHeaders);
|
|
140
|
+
const workingTimeout = options?.workingTimeout ?? 120_000;
|
|
141
|
+
// Log auth configuration (matching callMCPTool debug format for test compatibility)
|
|
142
|
+
debugLogs.push({
|
|
143
|
+
type: 'info',
|
|
144
|
+
message: `MCP: Auth configuration`,
|
|
145
|
+
timestamp: new Date().toISOString(),
|
|
146
|
+
hasAuth: !!authToken,
|
|
147
|
+
headers: authToken ? { 'x-adcp-auth': '***' } : {},
|
|
148
|
+
customHeaderKeys: customHeaders ? Object.keys(customHeaders) : [],
|
|
149
|
+
});
|
|
150
|
+
debugLogs.push({
|
|
151
|
+
type: 'info',
|
|
152
|
+
message: `MCP: Calling tool ${toolName} with args: ${JSON.stringify(redactArgsForLog(args))}`,
|
|
153
|
+
timestamp: new Date().toISOString(),
|
|
154
|
+
});
|
|
155
|
+
if (authToken) {
|
|
156
|
+
debugLogs.push({
|
|
157
|
+
type: 'info',
|
|
158
|
+
message: `MCP: Transport configured with x-adcp-auth header for ${toolName}`,
|
|
159
|
+
timestamp: new Date().toISOString(),
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
return (0, mcp_1.withCachedConnection)(agentUrl, authToken, authHeaders, debugLogs, toolName, async (client) => {
|
|
163
|
+
// Check if server supports MCP Tasks
|
|
164
|
+
if (!serverSupportsTasks(client)) {
|
|
165
|
+
debugLogs.push({
|
|
166
|
+
type: 'info',
|
|
167
|
+
message: `MCP Tasks: Server does not support tasks, using standard callTool for ${toolName}`,
|
|
168
|
+
timestamp: new Date().toISOString(),
|
|
169
|
+
});
|
|
170
|
+
const response = (await client.callTool({ name: toolName, arguments: args }));
|
|
171
|
+
debugLogs.push({
|
|
172
|
+
type: response?.isError ? 'error' : 'success',
|
|
173
|
+
message: `MCP: Tool ${toolName} response received (${response?.isError ? 'error' : 'success'})`,
|
|
174
|
+
timestamp: new Date().toISOString(),
|
|
175
|
+
response: response,
|
|
176
|
+
});
|
|
177
|
+
throwOnMCPError(response, toolName);
|
|
178
|
+
return response;
|
|
179
|
+
}
|
|
180
|
+
// Ensure tool metadata is cached so the SDK's isToolTask() works correctly.
|
|
181
|
+
// Without this, callToolStream silently skips task creation for tools that
|
|
182
|
+
// declare taskSupport: 'optional' | 'required'.
|
|
183
|
+
await ensureToolsListed(client);
|
|
184
|
+
debugLogs.push({
|
|
185
|
+
type: 'info',
|
|
186
|
+
message: `MCP Tasks: Server supports tasks, using callToolStream for ${toolName}`,
|
|
187
|
+
timestamp: new Date().toISOString(),
|
|
188
|
+
});
|
|
189
|
+
// Use callToolStream which handles the full task lifecycle
|
|
190
|
+
const stream = client.experimental.tasks.callToolStream({ name: toolName, arguments: args }, undefined, {
|
|
191
|
+
timeout: workingTimeout,
|
|
192
|
+
resetTimeoutOnProgress: true,
|
|
193
|
+
});
|
|
194
|
+
let capturedTaskId;
|
|
195
|
+
let capturedTask;
|
|
196
|
+
try {
|
|
197
|
+
for await (const message of stream) {
|
|
198
|
+
switch (message.type) {
|
|
199
|
+
case 'taskCreated':
|
|
200
|
+
capturedTaskId = message.task.taskId;
|
|
201
|
+
capturedTask = message.task;
|
|
202
|
+
debugLogs.push({
|
|
203
|
+
type: 'info',
|
|
204
|
+
message: `MCP Tasks: Task created ${capturedTaskId} for ${toolName}`,
|
|
205
|
+
timestamp: new Date().toISOString(),
|
|
206
|
+
});
|
|
207
|
+
break;
|
|
208
|
+
case 'taskStatus':
|
|
209
|
+
capturedTask = message.task;
|
|
210
|
+
debugLogs.push({
|
|
211
|
+
type: 'info',
|
|
212
|
+
message: `MCP Tasks: Status update for ${capturedTaskId}: ${message.task.status}`,
|
|
213
|
+
timestamp: new Date().toISOString(),
|
|
214
|
+
});
|
|
215
|
+
break;
|
|
216
|
+
case 'result': {
|
|
217
|
+
debugLogs.push({
|
|
218
|
+
type: 'success',
|
|
219
|
+
message: `MCP: Tool ${toolName} response received (success)`,
|
|
220
|
+
timestamp: new Date().toISOString(),
|
|
221
|
+
response: message.result,
|
|
222
|
+
});
|
|
223
|
+
// Check for isError on the final result (same as non-tasks path)
|
|
224
|
+
const result = message.result;
|
|
225
|
+
throwOnMCPError(result, toolName);
|
|
226
|
+
return result;
|
|
227
|
+
}
|
|
228
|
+
case 'error':
|
|
229
|
+
debugLogs.push({
|
|
230
|
+
type: 'error',
|
|
231
|
+
message: `MCP Tasks: Error for ${toolName}: ${message.error.message}`,
|
|
232
|
+
timestamp: new Date().toISOString(),
|
|
233
|
+
});
|
|
234
|
+
throw message.error;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
// If we timed out but have a taskId, return a working status
|
|
240
|
+
// so the caller can poll via getMCPTaskStatus/getMCPTaskResult
|
|
241
|
+
if (capturedTaskId && error instanceof Error && error.message.includes('Timeout')) {
|
|
242
|
+
debugLogs.push({
|
|
243
|
+
type: 'info',
|
|
244
|
+
message: `MCP Tasks: Timeout for ${toolName}, returning working status with taskId ${capturedTaskId}`,
|
|
245
|
+
timestamp: new Date().toISOString(),
|
|
246
|
+
});
|
|
247
|
+
return {
|
|
248
|
+
structuredContent: {
|
|
249
|
+
status: 'working',
|
|
250
|
+
task_id: capturedTaskId,
|
|
251
|
+
poll_interval: capturedTask?.pollInterval,
|
|
252
|
+
},
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
throw error;
|
|
256
|
+
}
|
|
257
|
+
// Stream ended without result — shouldn't happen with well-behaved servers
|
|
258
|
+
if (capturedTaskId) {
|
|
259
|
+
return {
|
|
260
|
+
structuredContent: {
|
|
261
|
+
status: 'working',
|
|
262
|
+
task_id: capturedTaskId,
|
|
263
|
+
poll_interval: capturedTask?.pollInterval,
|
|
264
|
+
},
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
throw new Error(`MCP Tasks: callToolStream for ${toolName} ended without result or task`);
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Get task status via MCP Tasks protocol method (not tool call).
|
|
273
|
+
* Re-throws auth errors (401) — only catches protocol capability errors.
|
|
274
|
+
*/
|
|
275
|
+
async function getMCPTaskStatus(agentUrl, taskId, authToken, debugLogs = [], toolName) {
|
|
276
|
+
validateTaskId(taskId);
|
|
277
|
+
const authHeaders = buildAuthHeaders(authToken);
|
|
278
|
+
return (0, mcp_1.withCachedConnection)(agentUrl, authToken, authHeaders, debugLogs, `tasks/get:${taskId}`, async (client) => {
|
|
279
|
+
const result = await client.experimental.tasks.getTask(taskId);
|
|
280
|
+
debugLogs.push({
|
|
281
|
+
type: 'info',
|
|
282
|
+
message: `MCP Tasks: getTask ${taskId} → ${result.status}`,
|
|
283
|
+
timestamp: new Date().toISOString(),
|
|
284
|
+
});
|
|
285
|
+
return mapMCPTaskToTaskInfo(result, toolName);
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Get task result via MCP Tasks protocol method (blocks until terminal).
|
|
290
|
+
*/
|
|
291
|
+
async function getMCPTaskResult(agentUrl, taskId, authToken, debugLogs = []) {
|
|
292
|
+
validateTaskId(taskId);
|
|
293
|
+
const authHeaders = buildAuthHeaders(authToken);
|
|
294
|
+
return (0, mcp_1.withCachedConnection)(agentUrl, authToken, authHeaders, debugLogs, `tasks/result:${taskId}`, async (client) => {
|
|
295
|
+
const result = await client.experimental.tasks.getTaskResult(taskId);
|
|
296
|
+
debugLogs.push({
|
|
297
|
+
type: 'success',
|
|
298
|
+
message: `MCP Tasks: getTaskResult ${taskId} received`,
|
|
299
|
+
timestamp: new Date().toISOString(),
|
|
300
|
+
});
|
|
301
|
+
return result;
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* List tasks via MCP Tasks protocol method.
|
|
306
|
+
*/
|
|
307
|
+
async function listMCPTasks(agentUrl, authToken, debugLogs = []) {
|
|
308
|
+
const authHeaders = buildAuthHeaders(authToken);
|
|
309
|
+
return (0, mcp_1.withCachedConnection)(agentUrl, authToken, authHeaders, debugLogs, 'tasks/list', async (client) => {
|
|
310
|
+
const result = await client.experimental.tasks.listTasks();
|
|
311
|
+
debugLogs.push({
|
|
312
|
+
type: 'info',
|
|
313
|
+
message: `MCP Tasks: listTasks returned ${result.tasks.length} tasks`,
|
|
314
|
+
timestamp: new Date().toISOString(),
|
|
315
|
+
});
|
|
316
|
+
return result.tasks.map((task) => mapMCPTaskToTaskInfo(task));
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Cancel a task via MCP Tasks protocol method.
|
|
321
|
+
*/
|
|
322
|
+
async function cancelMCPTask(agentUrl, taskId, authToken, debugLogs = []) {
|
|
323
|
+
validateTaskId(taskId);
|
|
324
|
+
const authHeaders = buildAuthHeaders(authToken);
|
|
325
|
+
await (0, mcp_1.withCachedConnection)(agentUrl, authToken, authHeaders, debugLogs, `tasks/cancel:${taskId}`, async (client) => {
|
|
326
|
+
await client.experimental.tasks.cancelTask(taskId);
|
|
327
|
+
debugLogs.push({
|
|
328
|
+
type: 'info',
|
|
329
|
+
message: `MCP Tasks: cancelTask ${taskId} succeeded`,
|
|
330
|
+
timestamp: new Date().toISOString(),
|
|
331
|
+
});
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
//# sourceMappingURL=mcp-tasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tasks.js","sourceRoot":"","sources":["../../../src/lib/protocols/mcp-tasks.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,15 @@ export { UnauthorizedError };
|
|
|
9
9
|
* Call this at the end of comply/test runs or before process exit.
|
|
10
10
|
*/
|
|
11
11
|
export declare function closeMCPConnections(): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Get or create a cached MCP connection, then call `fn` with it.
|
|
14
|
+
* On transport errors, evicts the stale connection and retries once.
|
|
15
|
+
* Auth errors (401) evict and close the connection, then throw immediately.
|
|
16
|
+
*
|
|
17
|
+
* @internal Used by mcp-tasks.ts for protocol-level task operations.
|
|
18
|
+
* Not part of the public API — do not import from outside the protocols directory.
|
|
19
|
+
*/
|
|
20
|
+
export declare function withCachedConnection<T>(agentUrl: string, authToken: string | undefined, authHeaders: Record<string, string>, debugLogs: DebugLogEntry[], label: string, fn: (client: MCPClient) => Promise<T>): Promise<T>;
|
|
12
21
|
/**
|
|
13
22
|
* Options for MCP tool calls with OAuth support
|
|
14
23
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/mcp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EACL,6BAA6B,EAG9B,MAAM,oDAAoD,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAIpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAInD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAyD7B;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUzD;
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/mcp.ts"],"names":[],"mappings":"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"}
|