aixtools 0.3.8__py3-none-any.whl → 0.3.10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aixtools might be problematic. Click here for more details.

aixtools/_version.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.3.8'
32
- __version_tuple__ = version_tuple = (0, 3, 8)
31
+ __version__ = version = '0.3.10'
32
+ __version_tuple__ = version_tuple = (0, 3, 10)
33
33
 
34
34
  __commit_id__ = commit_id = None
aixtools/auth/auth.py CHANGED
@@ -125,6 +125,10 @@ class AccessTokenVerifier:
125
125
  raise AuthTokenError(AuthTokenErrorCode.INVALID_ISSUER) from e
126
126
  except InvalidSignatureError as e:
127
127
  raise AuthTokenError(AuthTokenErrorCode.INVALID_SIGNATURE) from e
128
+ except jwt.exceptions.DecodeError as e:
129
+ raise AuthTokenError(AuthTokenErrorCode.INVALID_TOKEN) from e
130
+ except jwt.exceptions.PyJWKClientError as e:
131
+ raise AuthTokenError(AuthTokenErrorCode.INVALID_TOKEN) from e
128
132
  except jwt.exceptions.PyJWTError as e:
129
133
  logger.exception("Unable to check JWT token: %s", token)
130
134
  raise AuthTokenError(AuthTokenErrorCode.JWT_ERROR) from e
@@ -53,8 +53,13 @@ class ContextFilter(logging.Filter): # pylint: disable=too-few-public-methods
53
53
  except ImportError:
54
54
  pass
55
55
 
56
- if not user_id and not session_id:
57
- user_id, session_id = self._extract_from_mcp_context()
56
+ mcp_user_id = None
57
+ mcp_session_id = None
58
+ if not user_id or not session_id:
59
+ mcp_user_id, mcp_session_id = self._extract_from_mcp_context()
60
+
61
+ user_id = user_id or mcp_user_id
62
+ session_id = session_id or mcp_session_id
58
63
 
59
64
  context = ""
60
65
  if session_id and not str(session_id).startswith("default"):
aixtools/mcp/server.py CHANGED
@@ -10,6 +10,7 @@ from fastmcp.utilities.types import NotSet
10
10
  from aixtools.auth.auth import AccessTokenAuthProvider
11
11
  from aixtools.logging.logging_config import get_logger
12
12
  from aixtools.mcp.middleware import AixErrorHandlingMiddleware
13
+ from aixtools.utils import config
13
14
 
14
15
 
15
16
  def create_mcp_server(
@@ -58,7 +59,10 @@ def create_mcp_server(
58
59
  TimingMiddleware(logger=get_logger("middleware.timing")),
59
60
  ]
60
61
 
61
- if auth is NotSet:
62
+ # env SKIP_MCP_AUTHORIZATION overrides config.
63
+ if config.SKIP_MCP_AUTHORIZATION:
64
+ auth = None
65
+ elif auth is NotSet:
62
66
  auth = AccessTokenAuthProvider()
63
67
 
64
68
  mcp_args = {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aixtools
3
- Version: 0.3.8
3
+ Version: 0.3.10
4
4
  Summary: Tools for AI exploration and debugging
5
5
  Requires-Python: >=3.11.2
6
6
  Description-Content-Type: text/markdown
@@ -1,5 +1,5 @@
1
1
  aixtools/__init__.py,sha256=9NGHm7LjsQmsvjTZvw6QFJexSvAU4bCoN_KBk9SCa00,260
2
- aixtools/_version.py,sha256=iWEYFk8Ve-UDYmpiH5KfwfwhQTYtkxZlaGPwKE2xDy0,704
2
+ aixtools/_version.py,sha256=IwCXstmG50R88HCesfawu5BpJEPg8WIKehd-k6CRLJs,706
3
3
  aixtools/app.py,sha256=JzQ0nrv_bjDQokllIlGHOV0HEb-V8N6k_nGQH-TEsVU,5227
4
4
  aixtools/chainlit.md,sha256=yC37Ly57vjKyiIvK4oUvf4DYxZCwH7iocTlx7bLeGLU,761
5
5
  aixtools/context.py,sha256=I_MD40ZnvRm5WPKAKqBUAdXIf8YaurkYUUHSVVy-QvU,598
@@ -34,7 +34,7 @@ aixtools/agents/nodes_to_str.py,sha256=UkOu5Nry827J4H_ohQU3tPBfJxtr3p6FfCfWoUy5u
34
34
  aixtools/agents/print_nodes.py,sha256=wVTngNfqM0As845WTRz6G3Rei_Gr3HuBlvu-G_eXuig,1665
35
35
  aixtools/agents/prompt.py,sha256=p9OYnyJ4-MyGXwHPrQeJBhZ2a3RV2HqhtdUUCrTMsAQ,3361
36
36
  aixtools/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
- aixtools/auth/auth.py,sha256=AUc9Kw8ZrjiIxsp7Vg1bexg8mIuMbRv8XNU3pynfMdU,8487
37
+ aixtools/auth/auth.py,sha256=w8RODphhpBYN3aPQ6x-btILDZ6InQOX1AK5sbDBEtRs,8736
38
38
  aixtools/compliance/__init__.py,sha256=vnw0zEdySIJWvDAJ8DCRRaWmY_agEOz1qlpAdhmtiuo,191
39
39
  aixtools/compliance/private_data.py,sha256=OOM9mIp3_w0fNgj3VAEWBl7-jrPc19_Ls1pC5dfF5UY,5323
40
40
  aixtools/db/__init__.py,sha256=b8vRhme3egV-aUZbAntnOaDkSXB8UT0Xy5oqQhU_z0Q,399
@@ -54,7 +54,7 @@ aixtools/log_view/filters.py,sha256=xbgSzzUnkqHoS_A_p4lRDMFhXqFvXCjwkcIEBQ_L29g,
54
54
  aixtools/log_view/log_utils.py,sha256=PGUUB039x6w7nOLg_M6Jk1aDIvcjyKP4f3YF5kavQ88,914
55
55
  aixtools/log_view/node_summary.py,sha256=EJjnBqdBWI-_bI-4nfTxwaost3mtiufb5cK7T54cfuQ,9299
56
56
  aixtools/logfilters/__init__.py,sha256=pTD8ujCqjPWBCeB7yv7lmCtnA2KXOnkIv0HExDagkXs,129
57
- aixtools/logfilters/context_filter.py,sha256=zR3Bnv3fCqXLeb7bCFTmlnWhC6dFIvUb-u712tOnUPk,2259
57
+ aixtools/logfilters/context_filter.py,sha256=7Tfus83Ja2CmhIyd4xEAnGNAdAVSC1shb7_cRfilZQc,2415
58
58
  aixtools/logging/__init__.py,sha256=b5oYyGQDUHHxhRtzqKUaQPv8hQeWw54rzDXSV8lDY1w,613
59
59
  aixtools/logging/log_objects.py,sha256=gohsgcfyr8vsY7G_hfmj973-Ek1_PN-bMMLEUA-4u6U,7708
60
60
  aixtools/logging/logging_config.py,sha256=LvxV3C75-I0096PpcCIbgM-Cp998LzWXeMM14HYbU20,4985
@@ -70,7 +70,7 @@ aixtools/mcp/exceptions.py,sha256=9m3hy9fRINbXTSgkE71XW_luklgH6xBRp7VnSRfpyzQ,17
70
70
  aixtools/mcp/fast_mcp_log.py,sha256=XYOS406dVjn5YTHyGRsRvVNQ0SKlRObfrKj6EeLFjHg,1057
71
71
  aixtools/mcp/faulty_mcp.py,sha256=uU9vlNGCS_i2k20wocVMaDHTlYjMQxuzjILad9O1cjA,12807
72
72
  aixtools/mcp/middleware.py,sha256=V-bWhSL6F-tv74EtqaoYjbvxIUCIfG3XKz1khU7ebU4,2268
73
- aixtools/mcp/server.py,sha256=wpN7tJmUZqGsb_rOVfXbyTFJ9VPnQl7nG5wa1JAz-No,2566
73
+ aixtools/mcp/server.py,sha256=vebY9xTVMJwM1MSHY2evBrtOA9OU78G-xaebRjfI9kI,2711
74
74
  aixtools/model_patch/model_patch.py,sha256=JT-oHubIn2LeoSwWbzEQ5vLH7crJmFUecHyQfaAFHa0,1813
75
75
  aixtools/server/__init__.py,sha256=rwPx020YpOzCnrxA80Lc4yLLcIp-Mpe9hNqVO9wDPv0,448
76
76
  aixtools/server/app_mounter.py,sha256=0tJ0tC140ezAjnYdlhpLJQjY-TO8NVw7D8LseYCCVY8,3336
@@ -96,8 +96,8 @@ aixtools/utils/chainlit/cl_agent_show.py,sha256=vaRuowp4BRvhxEr5hw0zHEJ7iaSF_5bo
96
96
  aixtools/utils/chainlit/cl_utils.py,sha256=fxaxdkcZg6uHdM8uztxdPowg3a2f7VR7B26VPY4t-3c,5738
97
97
  aixtools/vault/__init__.py,sha256=fsr_NuX3GZ9WZ7dGfe0gp_5-z3URxAfwVRXw7Xyc0dU,141
98
98
  aixtools/vault/vault.py,sha256=9dZLWdZQk9qN_Q9Djkofw9LUKnJqnrX5H0fGusVLBhA,6037
99
- aixtools-0.3.8.dist-info/METADATA,sha256=0pkdCTHZp4FLAwhMxcTKvXA9yQuxhkdOCwzqUO31B6E,27957
100
- aixtools-0.3.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
101
- aixtools-0.3.8.dist-info/entry_points.txt,sha256=q8412TG4T0S8K0SKeWp2vkVPIDYQs0jNoHqcQ7qxOiA,155
102
- aixtools-0.3.8.dist-info/top_level.txt,sha256=wBn-rw9bCtxrR4AYEYgjilNCUVmKY0LWby9Zan2PRJM,9
103
- aixtools-0.3.8.dist-info/RECORD,,
99
+ aixtools-0.3.10.dist-info/METADATA,sha256=AhCPj7Q3xRPJCpAAAfoB7grM12n4eawP4WbtJfcMY9Q,27958
100
+ aixtools-0.3.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
101
+ aixtools-0.3.10.dist-info/entry_points.txt,sha256=q8412TG4T0S8K0SKeWp2vkVPIDYQs0jNoHqcQ7qxOiA,155
102
+ aixtools-0.3.10.dist-info/top_level.txt,sha256=wBn-rw9bCtxrR4AYEYgjilNCUVmKY0LWby9Zan2PRJM,9
103
+ aixtools-0.3.10.dist-info/RECORD,,