UNPKG

alibabacloud-devops-mcp-server

Version:

MCP Server for using the alibabacloud-devops API: allows AI assistants to directly participate in development collaboration, helping teams optimize development processes and improve efficiency.

50 lines (49 loc) 2.85 kB
import { createChangeRequest, getChangeRequestAuditItems, listChangeRequestExecutions, listChangeRequestWorkItems, cancelChangeRequest, closeChangeRequest, CreateChangeRequestRequestSchema, GetChangeRequestAuditItemsRequestSchema, ListChangeRequestExecutionsRequestSchema, ListChangeRequestWorkItemsRequestSchema, CancelChangeRequestRequestSchema, CloseChangeRequestRequestSchema } from '../operations/appstack/changeRequests.js'; /** * Handle the appstack change requests tool requests * * @param request - The tool request * @returns The tool response or null if not handled */ export async function handleAppStackChangeRequestTools(request) { switch (request.params.name) { case 'create_change_request': const createParams = CreateChangeRequestRequestSchema.parse(request.params.arguments); const createResult = await createChangeRequest(createParams); return { content: [{ type: "text", text: JSON.stringify(createResult, null, 2) }], }; case 'get_change_request_audit_items': const getAuditParams = GetChangeRequestAuditItemsRequestSchema.parse(request.params.arguments); const getAuditResult = await getChangeRequestAuditItems(getAuditParams); return { content: [{ type: "text", text: JSON.stringify(getAuditResult, null, 2) }], }; case 'list_change_request_executions': const listExecParams = ListChangeRequestExecutionsRequestSchema.parse(request.params.arguments); const listExecResult = await listChangeRequestExecutions(listExecParams); return { content: [{ type: "text", text: JSON.stringify(listExecResult, null, 2) }], }; case 'list_change_request_work_items': const listWorkParams = ListChangeRequestWorkItemsRequestSchema.parse(request.params.arguments); const listWorkResult = await listChangeRequestWorkItems(listWorkParams); return { content: [{ type: "text", text: JSON.stringify(listWorkResult, null, 2) }], }; case 'cancel_change_request': const cancelParams = CancelChangeRequestRequestSchema.parse(request.params.arguments); const cancelResult = await cancelChangeRequest(cancelParams); return { content: [{ type: "text", text: JSON.stringify(cancelResult, null, 2) }], }; case 'close_change_request': const closeParams = CloseChangeRequestRequestSchema.parse(request.params.arguments); const closeResult = await closeChangeRequest(closeParams); return { content: [{ type: "text", text: JSON.stringify(closeResult, null, 2) }], }; default: return null; } }