|
@@ -119,6 +119,8 @@ async def get_tools(
|
|
|
function_name = spec["name"]
|
|
|
|
|
|
auth_type = tool_server_connection.get("auth_type", "bearer")
|
|
|
+
|
|
|
+ cookies = {}
|
|
|
headers = {}
|
|
|
|
|
|
if auth_type == "bearer":
|
|
@@ -126,10 +128,12 @@ async def get_tools(
|
|
|
f"Bearer {tool_server_connection.get('key', '')}"
|
|
|
)
|
|
|
elif auth_type == "session":
|
|
|
+ cookies = request.cookies
|
|
|
headers["Authorization"] = (
|
|
|
f"Bearer {request.state.token.credentials}"
|
|
|
)
|
|
|
elif auth_type == "oauth":
|
|
|
+ cookies = request.cookies
|
|
|
oauth_token = None
|
|
|
try:
|
|
|
oauth_token = (
|
|
@@ -145,6 +149,7 @@ async def get_tools(
|
|
|
f"Bearer {oauth_token.get('access_token', '')}"
|
|
|
)
|
|
|
elif auth_type == "request_headers":
|
|
|
+ cookies = request.cookies
|
|
|
headers.update(dict(request.headers))
|
|
|
|
|
|
headers["Content-Type"] = "application/json"
|
|
@@ -154,6 +159,7 @@ async def get_tools(
|
|
|
return await execute_tool_server(
|
|
|
url=tool_server_data["url"],
|
|
|
headers=headers,
|
|
|
+ cookies=cookies,
|
|
|
name=function_name,
|
|
|
params=kwargs,
|
|
|
server_data=tool_server_data,
|
|
@@ -635,6 +641,7 @@ async def get_tool_servers_data(
|
|
|
async def execute_tool_server(
|
|
|
url: str,
|
|
|
headers: Dict[str, str],
|
|
|
+ cookies: Dict[str, str],
|
|
|
name: str,
|
|
|
params: Dict[str, Any],
|
|
|
server_data: Dict[str, Any],
|