Skip to main content
Glama
vparlapalli490

ServiceNow MCP Server

activate_workflow

Activate ServiceNow workflows to automate processes and trigger automated actions within your instance.

Instructions

Activate a workflow in ServiceNow

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
workflow_idYesWorkflow ID or sys_id

Implementation Reference

  • The handler function that executes the activate_workflow tool. It unwraps parameters using ActivateWorkflowParams, authenticates, and sends a PATCH request to the ServiceNow wf_workflow table to set the workflow as active.
    def activate_workflow( auth_manager: AuthManager, server_config: ServerConfig, params: Dict[str, Any], ) -> Dict[str, Any]: """ Activate a workflow in ServiceNow. Args: auth_manager: Authentication manager server_config: Server configuration params: Parameters for activating a workflow Returns: Dict[str, Any]: Activated workflow details """ # Unwrap parameters if needed params = _unwrap_params(params, ActivateWorkflowParams) # Get the correct auth_manager and server_config try: auth_manager, server_config = _get_auth_and_config(auth_manager, server_config) except ValueError as e: logger.error(f"Error getting auth and config: {e}") return {"error": str(e)} workflow_id = params.get("workflow_id") if not workflow_id: return {"error": "Workflow ID is required"} # Prepare data for the API request data = { "active": "true", } # Make the API request try: headers = auth_manager.get_headers() url = f"{server_config.instance_url}/api/now/table/wf_workflow/{workflow_id}" response = requests.patch(url, headers=headers, json=data) response.raise_for_status() result = response.json() return { "workflow": result.get("result", {}), "message": "Workflow activated successfully", } except requests.RequestException as e: logger.error(f"Error activating workflow: {e}") return {"error": str(e)} except Exception as e: logger.error(f"Unexpected error activating workflow: {e}") return {"error": str(e)}
  • Pydantic BaseModel defining the input schema for the activate_workflow tool, which requires a workflow_id.
    class ActivateWorkflowParams(BaseModel): """Parameters for activating a workflow.""" workflow_id: str = Field(..., description="Workflow ID or sys_id")
  • Central registration of the activate_workflow tool in the tool_definitions dictionary. Maps the tool name to its implementation function, input schema model, return type, description, and serialization hint. This dictionary is loaded by the MCP server to expose the tool.
    "activate_workflow": ( activate_workflow_tool, ActivateWorkflowParams, str, "Activate a workflow in ServiceNow", "str", # Tool returns simple message ),

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vparlapalli490/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server