We use a local AI proxy in our company. When accessing it via the Selfhealing Agent, a certificate error occurs.
We need an option to disable SSL verification.
For example, with a parameter SSL_VERIFY=<bool> in the .env file.
{"browser": "chromium", "headless": true, "chromiumSandbox": false, "devtools": false, "handleSIGHUP": true, "handleSIGINT": true, "handleSIGTERM": true, "slowMo": 0.0, "timeout": 30000.0, "tracesDir": "C:\\Users\\mr_x\\repository\\playground\\mcp\\results\\browser\\traces\\temp\\b0fe892e-a47d-410f-abd4-9253ab769620"}
Starting Browser process C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\wrapper\index.js using at 127.0.0.1:60387
Successfully created browser with options: {"browser":"chromium","headless":true,"chromiumSandbox":false,"devtools":false,"handleSIGHUP":true,"handleSIGINT":true,"handleSIGTERM":true,"slowMo":0,"timeout":30000,"tracesDir":"C:\\Users\\mr_x\\repository\\playground\\mcp\\results\\browser\\traces\\temp\\b0fe892e-a47d-410f-abd4-9253ab769620"}
[ DEBUG ] SelfhealingAgents: Monitoring test 'Login with valid credentials'
{
"acceptDownloads": true,
"bypassCSP": false,
"forcedColors": "none",
"ignoreHTTPSErrors": false,
"javaScriptEnabled": true,
"offline": false,
"reducedMotion": "no-preference",
"serviceWorkers": "allow",
"viewport": {
"height": 720,
"width": 1280
}
}
Successfully created context.
{'acceptDownloads': True, 'bypassCSP': False, 'forcedColors': 'none', 'ignoreHTTPSErrors': False, 'javaScriptEnabled': True, 'offline': False, 'reducedMotion': 'no-preference', 'serviceWorkers': 'allow', 'viewport': {'height': 720, 'width': 1280}}
Successfully initialized new page object and opened url: https://automationintesting.com/selenium/testpage/
[ DEBUG ] Video is not enabled.
Fills the text 'tom' in the given field.
[ DEBUG ] Screenshot successfully captured to: C:\Users\mr_x\repository\playground\mcp\results\browser\screenshot\fail-screenshot-1.png
</td></tr><tr><td colspan="3"><a href="browser/screenshot/fail-screenshot-1.png" target="_blank"><img src="browser/screenshot/fail-screenshot-1.png" width="800px"/></a>
See also file:///C:/Users/mr_x/repository/playground/mcp/results/playwright-log.txt for additional details.
[ FAIL ] TimeoutError: locator.fill: Timeout 1000ms exceeded.
Call log:
- waiting for locator('id=first_name')
[ DEBUG ] Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\playwright.py", line 189, in grpc_channel
yield playwright_pb2_grpc.PlaywrightStub(self._channel)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\keywords\interaction.py", line 797, in _fill_text
response = stub.FillText(
^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\grpc\_channel.py", line 1178, in __call__
return _end_unary_response_blocking(state, call, False, None)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\grpc\_channel.py", line 1006, in _end_unary_response_blocking
raise _InactiveRpcError(state) # pytype: disable=not-instantiable
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.DEADLINE_EXCEEDED
details = "TimeoutError: locator.fill: Timeout 1000ms exceeded.
Call log:
- waiting for locator('id=first_name')
"
debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"TimeoutError: locator.fill: Timeout 1000ms exceeded.\nCall log:\n\x1b[2m - waiting for locator(\'id=first_name\')\x1b[22m\n", grpc_status:4}"
>
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\browser.py", line 1280, in run_keyword
raise e
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\browser.py", line 1268, in run_keyword
return DynamicCore.run_keyword(self, name, args, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\robotlibcore.py", line 173, in run_keyword
return self.keywords[name](*args, **(kwargs or {}))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\keywords\interaction.py", line 115, in fill_text
self._fill_text(selector, txt, strict=self.strict_mode, force=force)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\keywords\interaction.py", line 796, in _fill_text
with self.playwright.grpc_channel() as stub:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\Browser\playwright.py", line 193, in grpc_channel
raise AssertionError(error.details())
AssertionError: TimeoutError: locator.fill: Timeout 1000ms exceeded.
Call log:
- waiting for locator('id=first_name')
[ DEBUG ] RobotAid: Detected failure in keyword 'Fill Text'
JavaScript executed successfully.
[ DEBUG ] Page source obtained successfully.
[ DEBUG ] Using proactor: IocpProactor
[ DEBUG ] Request options: {'method': 'post', 'url': '/chat/completions', 'headers': {'User-Agent': 'pydantic-ai/0.6.2'}, 'files': None, 'idempotency_key': 'stainless-python-retry-52a276a3-bbf1-40de-a3cb-e30a4efe2a9b', 'json_data': {'messages': [{'role': 'system', 'content': 'You are a Robot Framework smart recovery tool and a JSON passthrough machine. Your only job is to return the exact, raw JSON output from a tool.\nThe following tools are available to you:\n- get_healed_locators: This tool provides locator suggestions for a broken locator.\n\n'}, {'role': 'user', 'content': "Call the 'get_healed_locators' tool for the broken locator: `id=first_name`.\n"}], 'model': 'gpt-4o', 'parallel_tool_calls': False, 'stream': False, 'temperature': 0.1, 'tool_choice': 'auto', 'tools': [{'type': 'function', 'function': {'name': 'final_result', 'description': '<summary>Gets a list of healed locator suggestions for a broken locator.</summary>\n<returns>\n<type>str</type>\n<description>List of repaired locator suggestions in JSON format.</description>\n</returns>', 'parameters': {'additionalProperties': False, 'properties': {}, 'type': 'object'}}}]}}
[ DEBUG ] Sending HTTP Request: POST https://ki-proxy-test.somewhere.org/chat/completions
[ DEBUG ] connect_tcp.started host='ki-proxy-test.somewhere.org' port=443 local_address=None timeout=5 socket_options=None
[ DEBUG ] connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x0000025E3C20BAA0>
[ DEBUG ] start_tls.started ssl_context=<ssl.SSLContext object at 0x0000025E3BD7F850> server_hostname='ki-proxy-test.somewhere.org' timeout=5
[ DEBUG ] start_tls.failed exception=ConnectError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)'))
[ DEBUG ] Encountered Exception
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 101, in map_httpcore_exceptions
yield
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 394, in handle_async_request
resp = await self._pool.handle_async_request(req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 256, in handle_async_request
raise exc from None
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 236, in handle_async_request
response = await connection.handle_async_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 101, in handle_async_request
raise exc
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 78, in handle_async_request
stream = await self._connect(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 156, in _connect
stream = await stream.start_tls(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_backends\anyio.py", line 67, in start_tls
with map_exceptions(exc_map):
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\openai\_base_client.py", line 1529, in request
response = await self._client.send(
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1629, in send
response = await self._send_handling_auth(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1657, in _send_handling_auth
response = await self._send_handling_redirects(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1694, in _send_handling_redirects
response = await self._send_single_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1730, in _send_single_request
response = await transport.handle_async_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 393, in handle_async_request
with map_httpcore_exceptions():
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 118, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
[ DEBUG ] 2 retries left
Retrying request to /chat/completions in 0.467564 seconds
[ DEBUG ] Request options: {'method': 'post', 'url': '/chat/completions', 'headers': {'User-Agent': 'pydantic-ai/0.6.2'}, 'files': None, 'idempotency_key': 'stainless-python-retry-52a276a3-bbf1-40de-a3cb-e30a4efe2a9b', 'json_data': {'messages': [{'role': 'system', 'content': 'You are a Robot Framework smart recovery tool and a JSON passthrough machine. Your only job is to return the exact, raw JSON output from a tool.\nThe following tools are available to you:\n- get_healed_locators: This tool provides locator suggestions for a broken locator.\n\n'}, {'role': 'user', 'content': "Call the 'get_healed_locators' tool for the broken locator: `id=first_name`.\n"}], 'model': 'gpt-4o', 'parallel_tool_calls': False, 'stream': False, 'temperature': 0.1, 'tool_choice': 'auto', 'tools': [{'type': 'function', 'function': {'name': 'final_result', 'description': '<summary>Gets a list of healed locator suggestions for a broken locator.</summary>\n<returns>\n<type>str</type>\n<description>List of repaired locator suggestions in JSON format.</description>\n</returns>', 'parameters': {'additionalProperties': False, 'properties': {}, 'type': 'object'}}}]}}
[ DEBUG ] Sending HTTP Request: POST https://ki-proxy-test.somewhere.org/chat/completions
[ DEBUG ] connect_tcp.started host='ki-proxy-test.somewhere.org' port=443 local_address=None timeout=5 socket_options=None
[ DEBUG ] connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x0000025E3D2631A0>
[ DEBUG ] start_tls.started ssl_context=<ssl.SSLContext object at 0x0000025E3BD7F850> server_hostname='ki-proxy-test.somewhere.org' timeout=5
[ DEBUG ] start_tls.failed exception=ConnectError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)'))
[ DEBUG ] Encountered Exception
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 101, in map_httpcore_exceptions
yield
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 394, in handle_async_request
resp = await self._pool.handle_async_request(req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 256, in handle_async_request
raise exc from None
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 236, in handle_async_request
response = await connection.handle_async_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 101, in handle_async_request
raise exc
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 78, in handle_async_request
stream = await self._connect(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 156, in _connect
stream = await stream.start_tls(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_backends\anyio.py", line 67, in start_tls
with map_exceptions(exc_map):
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\openai\_base_client.py", line 1529, in request
response = await self._client.send(
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1629, in send
response = await self._send_handling_auth(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1657, in _send_handling_auth
response = await self._send_handling_redirects(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1694, in _send_handling_redirects
response = await self._send_single_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1730, in _send_single_request
response = await transport.handle_async_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 393, in handle_async_request
with map_httpcore_exceptions():
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 118, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
[ DEBUG ] 1 retry left
Retrying request to /chat/completions in 0.924295 seconds
[ DEBUG ] Request options: {'method': 'post', 'url': '/chat/completions', 'headers': {'User-Agent': 'pydantic-ai/0.6.2'}, 'files': None, 'idempotency_key': 'stainless-python-retry-52a276a3-bbf1-40de-a3cb-e30a4efe2a9b', 'json_data': {'messages': [{'role': 'system', 'content': 'You are a Robot Framework smart recovery tool and a JSON passthrough machine. Your only job is to return the exact, raw JSON output from a tool.\nThe following tools are available to you:\n- get_healed_locators: This tool provides locator suggestions for a broken locator.\n\n'}, {'role': 'user', 'content': "Call the 'get_healed_locators' tool for the broken locator: `id=first_name`.\n"}], 'model': 'gpt-4o', 'parallel_tool_calls': False, 'stream': False, 'temperature': 0.1, 'tool_choice': 'auto', 'tools': [{'type': 'function', 'function': {'name': 'final_result', 'description': '<summary>Gets a list of healed locator suggestions for a broken locator.</summary>\n<returns>\n<type>str</type>\n<description>List of repaired locator suggestions in JSON format.</description>\n</returns>', 'parameters': {'additionalProperties': False, 'properties': {}, 'type': 'object'}}}]}}
[ DEBUG ] Sending HTTP Request: POST https://ki-proxy-test.somewhere.org/chat/completions
[ DEBUG ] connect_tcp.started host='ki-proxy-test.somewhere.org' port=443 local_address=None timeout=5 socket_options=None
[ DEBUG ] connect_tcp.complete return_value=<httpcore._backends.anyio.AnyIOStream object at 0x0000025E3D2F8920>
[ DEBUG ] start_tls.started ssl_context=<ssl.SSLContext object at 0x0000025E3BD7F850> server_hostname='ki-proxy-test.somewhere.org' timeout=5
[ DEBUG ] start_tls.failed exception=ConnectError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)'))
[ DEBUG ] Encountered Exception
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 101, in map_httpcore_exceptions
yield
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 394, in handle_async_request
resp = await self._pool.handle_async_request(req)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 256, in handle_async_request
raise exc from None
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection_pool.py", line 236, in handle_async_request
response = await connection.handle_async_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 101, in handle_async_request
raise exc
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 78, in handle_async_request
stream = await self._connect(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_async\connection.py", line 156, in _connect
stream = await stream.start_tls(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_backends\anyio.py", line 67, in start_tls
with map_exceptions(exc_map):
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpcore\_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\openai\_base_client.py", line 1529, in request
response = await self._client.send(
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1629, in send
response = await self._send_handling_auth(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1657, in _send_handling_auth
response = await self._send_handling_redirects(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1694, in _send_handling_redirects
response = await self._send_single_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_client.py", line 1730, in _send_single_request
response = await transport.handle_async_request(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 393, in handle_async_request
with map_httpcore_exceptions():
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\mr_x\AppData\Roaming\uv\python\cpython-3.12.11-windows-x86_64-none\Lib\contextlib.py", line 158, in __exit__
self.gen.throw(value)
File "C:\Users\mr_x\repository\playground\mcp\.venv\Lib\site-packages\httpx\_transports\default.py", line 118, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
[ DEBUG ] Raising connection error
[ ERROR ] Calling method 'end_library_keyword' of listener 'SelfhealingAgents' failed: APIConnectionError: Connection error.
Switching browser to CURRENT
Returned active browser id. CURRENT
Switching context to CURRENT in CURRENT
Returned active context id: CURRENT
Switching context to context=0f54c29e-4d85-4d86-a5d3-6299fa97b55f in CURRENT
Successfully changed active context: context=0f54c29e-4d85-4d86-a5d3-6299fa97b55f
Successfully closed Context
RobotAid: Test 'Login with valid credentials' failed - collecting information for healing
Closed all browsers
We use a local AI proxy in our company. When accessing it via the Selfhealing Agent, a certificate error occurs.
We need an option to disable SSL verification.
For example, with a parameter SSL_VERIFY=<bool> in the .env file.