def METHOD_NAME(
    protocol="http",
    host="127.0.0.1",
    port=80,
    uri="",
    username=None,
    password=None,
    ssl_verify="full",
    user_agent="hedgehog",
):
    status = 400
    message = "Connection error"
    output = []
    if protocol.lower() == "https":
        if ssl_verify.lower() == "full":
            c = HTTPSConnection(host, port=port)
        else:
            c = HTTPSConnection(host, port=port, context=ssl._create_unverified_context())
    elif protocol.lower() == "http":
        c = HTTPConnection(host)
    else:
        c = None
    if c:
        try:
            if username and password:
                c.request(
                    'GET',
                    f'/{uri}',
                    headers={
                        'User-agent': user_agent,
                        'Authorization': 'Basic %s' % b64encode(f"{username}:{password}".encode()).decode("ascii"),
                    },
                )
            else:
                c.request('GET', f'/{uri}', headers={'User-agent': user_agent})
            res = c.getresponse()
            status = res.status
            message = res.reason
            output = text_from_html(res.read())
        except Exception as e:
            if len(output) == 0:
                output = ["Error: {}".format(e)]
    return status, message, output