delete_script_include
Remove a script include from a ServiceNow instance by specifying its ID or name to manage server-side logic and maintain system integrity.
Instructions
Delete a script include in ServiceNow
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| script_include_id | Yes | Script include ID or name |
Implementation Reference
- The handler function that executes the delete_script_include tool. It retrieves the script include by ID, constructs the API URL, sends a DELETE request to ServiceNow, and returns a response indicating success or failure.def delete_script_include( config: ServerConfig, auth_manager: AuthManager, params: DeleteScriptIncludeParams, ) -> ScriptIncludeResponse: """Delete a script include from ServiceNow. Args: config: The server configuration. auth_manager: The authentication manager. params: The parameters for the request. Returns: A response indicating the result of the operation. """ # First, get the script include to delete get_params = GetScriptIncludeParams(script_include_id=params.script_include_id) get_result = get_script_include(config, auth_manager, get_params) if not get_result["success"]: return ScriptIncludeResponse( success=False, message=get_result["message"], ) script_include = get_result["script_include"] sys_id = script_include["sys_id"] name = script_include["name"] # Build the URL url = f"{config.instance_url}/api/now/table/sys_script_include/{sys_id}" # Make the request headers = auth_manager.get_headers() try: response = requests.delete( url, headers=headers, timeout=30, ) response.raise_for_status() return ScriptIncludeResponse( success=True, message=f"Deleted script include: {name}", script_include_id=sys_id, script_include_name=name, ) except Exception as e: logger.error(f"Error deleting script include: {e}") return ScriptIncludeResponse( success=False, message=f"Error deleting script include: {str(e)}", )
- Pydantic input schema for the delete_script_include tool parameters.class DeleteScriptIncludeParams(BaseModel): """Parameters for deleting a script include.""" script_include_id: str = Field(..., description="Script include ID or name")
- Pydantic output schema used by the delete_script_include tool.class ScriptIncludeResponse(BaseModel): """Response from script include operations.""" success: bool = Field(..., description="Whether the operation was successful") message: str = Field(..., description="Message describing the result") script_include_id: Optional[str] = Field(None, description="ID of the affected script include") script_include_name: Optional[str] = Field(None, description="Name of the affected script include")
- src/servicenow_mcp/utils/tool_utils.py:699-705 (registration)Tool registration in the central get_tool_definitions dictionary, associating the tool name with its handler, input schema, return type hint, description, and serialization method."delete_script_include": ( delete_script_include_tool, DeleteScriptIncludeParams, str, # Expects JSON string "Delete a script include in ServiceNow", "json_dict", # Tool returns Pydantic model ),
- src/servicenow_mcp/tools/__init__.py:62-62 (registration)Export of the delete_script_include handler function from the tools package __init__.delete_script_include,