letta-client 0.1.263__py3-none-any.whl → 0.1.265__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 letta-client might be problematic. Click here for more details.

letta_client/__init__.py CHANGED
@@ -173,6 +173,7 @@ from .types import (
173
173
  McpServerType,
174
174
  McpTool,
175
175
  McpToolExecuteRequest,
176
+ McpToolHealth,
176
177
  Memory,
177
178
  Message,
178
179
  MessageContentItem,
@@ -578,6 +579,7 @@ __all__ = [
578
579
  "McpServerType",
579
580
  "McpTool",
580
581
  "McpToolExecuteRequest",
582
+ "McpToolHealth",
581
583
  "Memory",
582
584
  "Message",
583
585
  "MessageContentItem",
@@ -24,10 +24,10 @@ class BaseClientWrapper:
24
24
 
25
25
  def get_headers(self) -> typing.Dict[str, str]:
26
26
  headers: typing.Dict[str, str] = {
27
- "User-Agent": "letta-client/0.1.263",
27
+ "User-Agent": "letta-client/0.1.265",
28
28
  "X-Fern-Language": "Python",
29
29
  "X-Fern-SDK-Name": "letta-client",
30
- "X-Fern-SDK-Version": "0.1.263",
30
+ "X-Fern-SDK-Version": "0.1.265",
31
31
  **(self.get_custom_headers() or {}),
32
32
  }
33
33
  if self._project is not None:
@@ -118,6 +118,7 @@ class ToolsClient:
118
118
  return_char_limit: typing.Optional[int] = OMIT,
119
119
  pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
120
120
  npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
121
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
121
122
  request_options: typing.Optional[RequestOptions] = None,
122
123
  ) -> Tool:
123
124
  """
@@ -154,6 +155,9 @@ class ToolsClient:
154
155
  npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
155
156
  Optional list of npm packages required by this tool.
156
157
 
158
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
159
+ A dictionary of additional metadata for the tool.
160
+
157
161
  request_options : typing.Optional[RequestOptions]
158
162
  Request-specific configuration.
159
163
 
@@ -185,6 +189,7 @@ class ToolsClient:
185
189
  return_char_limit=return_char_limit,
186
190
  pip_requirements=pip_requirements,
187
191
  npm_requirements=npm_requirements,
192
+ metadata=metadata,
188
193
  request_options=request_options,
189
194
  )
190
195
  return _response.data
@@ -1028,6 +1033,7 @@ class AsyncToolsClient:
1028
1033
  return_char_limit: typing.Optional[int] = OMIT,
1029
1034
  pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
1030
1035
  npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
1036
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1031
1037
  request_options: typing.Optional[RequestOptions] = None,
1032
1038
  ) -> Tool:
1033
1039
  """
@@ -1064,6 +1070,9 @@ class AsyncToolsClient:
1064
1070
  npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
1065
1071
  Optional list of npm packages required by this tool.
1066
1072
 
1073
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
1074
+ A dictionary of additional metadata for the tool.
1075
+
1067
1076
  request_options : typing.Optional[RequestOptions]
1068
1077
  Request-specific configuration.
1069
1078
 
@@ -1103,6 +1112,7 @@ class AsyncToolsClient:
1103
1112
  return_char_limit=return_char_limit,
1104
1113
  pip_requirements=pip_requirements,
1105
1114
  npm_requirements=npm_requirements,
1115
+ metadata=metadata,
1106
1116
  request_options=request_options,
1107
1117
  )
1108
1118
  return _response.data
@@ -151,6 +151,7 @@ class RawToolsClient:
151
151
  return_char_limit: typing.Optional[int] = OMIT,
152
152
  pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
153
153
  npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
154
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
154
155
  request_options: typing.Optional[RequestOptions] = None,
155
156
  ) -> HttpResponse[Tool]:
156
157
  """
@@ -187,6 +188,9 @@ class RawToolsClient:
187
188
  npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
188
189
  Optional list of npm packages required by this tool.
189
190
 
191
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
192
+ A dictionary of additional metadata for the tool.
193
+
190
194
  request_options : typing.Optional[RequestOptions]
191
195
  Request-specific configuration.
192
196
 
@@ -212,6 +216,7 @@ class RawToolsClient:
212
216
  "npm_requirements": convert_and_respect_annotation_metadata(
213
217
  object_=npm_requirements, annotation=typing.Sequence[NpmRequirement], direction="write"
214
218
  ),
219
+ "metadata_": metadata,
215
220
  },
216
221
  headers={
217
222
  "content-type": "application/json",
@@ -1445,6 +1450,7 @@ class AsyncRawToolsClient:
1445
1450
  return_char_limit: typing.Optional[int] = OMIT,
1446
1451
  pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
1447
1452
  npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
1453
+ metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
1448
1454
  request_options: typing.Optional[RequestOptions] = None,
1449
1455
  ) -> AsyncHttpResponse[Tool]:
1450
1456
  """
@@ -1481,6 +1487,9 @@ class AsyncRawToolsClient:
1481
1487
  npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
1482
1488
  Optional list of npm packages required by this tool.
1483
1489
 
1490
+ metadata : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
1491
+ A dictionary of additional metadata for the tool.
1492
+
1484
1493
  request_options : typing.Optional[RequestOptions]
1485
1494
  Request-specific configuration.
1486
1495
 
@@ -1506,6 +1515,7 @@ class AsyncRawToolsClient:
1506
1515
  "npm_requirements": convert_and_respect_annotation_metadata(
1507
1516
  object_=npm_requirements, annotation=typing.Sequence[NpmRequirement], direction="write"
1508
1517
  ),
1518
+ "metadata_": metadata,
1509
1519
  },
1510
1520
  headers={
1511
1521
  "content-type": "application/json",
@@ -180,6 +180,7 @@ from .mcp_server_schema import McpServerSchema
180
180
  from .mcp_server_type import McpServerType
181
181
  from .mcp_tool import McpTool
182
182
  from .mcp_tool_execute_request import McpToolExecuteRequest
183
+ from .mcp_tool_health import McpToolHealth
183
184
  from .memory import Memory
184
185
  from .message import Message
185
186
  from .message_content_item import MessageContentItem
@@ -471,6 +472,7 @@ __all__ = [
471
472
  "McpServerType",
472
473
  "McpTool",
473
474
  "McpToolExecuteRequest",
475
+ "McpToolHealth",
474
476
  "Memory",
475
477
  "Message",
476
478
  "MessageContentItem",
@@ -10,7 +10,12 @@ from ..core.unchecked_base_model import UncheckedBaseModel
10
10
  class CodeInput(UncheckedBaseModel):
11
11
  code: str = pydantic.Field()
12
12
  """
13
- Python source code to parse for JSON schema
13
+ Source code to parse for JSON schema
14
+ """
15
+
16
+ source_type: typing.Optional[str] = pydantic.Field(default=None)
17
+ """
18
+ The source type of the code (python or typescript)
14
19
  """
15
20
 
16
21
  if IS_PYDANTIC_V2:
@@ -7,6 +7,7 @@ import typing_extensions
7
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
8
8
  from ..core.serialization import FieldMetadata
9
9
  from ..core.unchecked_base_model import UncheckedBaseModel
10
+ from .mcp_tool_health import McpToolHealth
10
11
  from .tool_annotations import ToolAnnotations
11
12
 
12
13
 
@@ -28,6 +29,10 @@ class McpTool(UncheckedBaseModel):
28
29
  meta: typing_extensions.Annotated[
29
30
  typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]], FieldMetadata(alias="_meta")
30
31
  ] = None
32
+ health: typing.Optional[McpToolHealth] = pydantic.Field(default=None)
33
+ """
34
+ Schema health status for OpenAI strict mode
35
+ """
31
36
 
32
37
  if IS_PYDANTIC_V2:
33
38
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -0,0 +1,32 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ from ..core.unchecked_base_model import UncheckedBaseModel
8
+
9
+
10
+ class McpToolHealth(UncheckedBaseModel):
11
+ """
12
+ Health status for an MCP tool's schema.
13
+ """
14
+
15
+ status: str = pydantic.Field()
16
+ """
17
+ Schema health status: STRICT_COMPLIANT, NON_STRICT_ONLY, or INVALID
18
+ """
19
+
20
+ reasons: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
21
+ """
22
+ List of reasons for the health status
23
+ """
24
+
25
+ if IS_PYDANTIC_V2:
26
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
27
+ else:
28
+
29
+ class Config:
30
+ frozen = True
31
+ smart_union = True
32
+ extra = pydantic.Extra.allow
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: letta-client
3
- Version: 0.1.263
3
+ Version: 0.1.265
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -1,4 +1,4 @@
1
- letta_client/__init__.py,sha256=roYG1PSllcV-R5by_werXmNv4kxE7vfvM5wGOmphHOI,21288
1
+ letta_client/__init__.py,sha256=O7fsRABwOkzQ3suOt_ppqlWaWHMBHeeuym_jii4xORI,21328
2
2
  letta_client/agents/__init__.py,sha256=JkuWGGNJsCfnMr2DFzQ1SiqEB1tcFZnafdidODi0_DY,2166
3
3
  letta_client/agents/blocks/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
4
4
  letta_client/agents/blocks/client.py,sha256=Akx-1SYEXkmdtLtytPtdFNhVts8JkjC2aMQnnWgd8Ug,14735
@@ -92,7 +92,7 @@ letta_client/client_side_access_tokens/types/client_side_access_tokens_list_clie
92
92
  letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy_data_item_access_item.py,sha256=kNHfEWFl7u71Pu8NPqutod0a2NXfvq8il05Hqm0iBB4,284
93
93
  letta_client/core/__init__.py,sha256=tpn7rjb6C2UIkYZYIqdrNpI7Yax2jw88sXh2baxaxAI,1715
94
94
  letta_client/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
95
- letta_client/core/client_wrapper.py,sha256=7Ve43IpHu5trhR7sLoSWfmhFsQJ-S1RqlW07aKJh1yk,2776
95
+ letta_client/core/client_wrapper.py,sha256=-eXAADi8oy89qTwqcmr7L_kY2S3_boDAT31kSIkSwfc,2776
96
96
  letta_client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
97
97
  letta_client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
98
98
  letta_client/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
@@ -215,8 +215,8 @@ letta_client/templates/types/__init__.py,sha256=dYa1-Xhxgs1FUtz6gkhZhY59EZuhmBDq
215
215
  letta_client/templates/types/templates_list_response.py,sha256=M2vTXGuqbQBEsh-lO0OWLRaYk5VgWD7pUTfOeERAyXk,729
216
216
  letta_client/templates/types/templates_list_response_templates_item.py,sha256=qplmgPLb_EtucsvkZ9GFj7BCq6D7OSqtVQ2rnMacO_g,775
217
217
  letta_client/tools/__init__.py,sha256=ZR4ev9ZmyWZl9iJPXK_FRk79YjgIytkA_2TlNS1PaQI,725
218
- letta_client/tools/client.py,sha256=IJTnBpZK0d_V-paCcpt7uIQWLJ9L-9wjAlfrfyPzE3s,58621
219
- letta_client/tools/raw_client.py,sha256=RBUu8oo7OZXjiugg4ekg014UK-BAKMzJdsNzDGo7otA,104943
218
+ letta_client/tools/client.py,sha256=uF7Z2l1_TF1Wu6HBHHh3D_g3tfIqMe5ZKvUNiwL8sqI,59151
219
+ letta_client/tools/raw_client.py,sha256=ulZZNTVaUUcfMggx9KnHAv1z4R5cuLYvDAxo0aDDt1o,105489
220
220
  letta_client/tools/types/__init__.py,sha256=A6LN4Xvy2t4O23X5AihXMQwRs1iLnYrA6HOwFqBL720,1055
221
221
  letta_client/tools/types/add_mcp_server_request.py,sha256=N9WDntHlIAxRQafdSnIydUNEEaOwnDISqGLMyHBrWr8,372
222
222
  letta_client/tools/types/add_mcp_server_response_item.py,sha256=LryGwJSSLAX6crN_EctrRlJo0OCOUOK5mEGsgR4hONg,377
@@ -228,7 +228,7 @@ letta_client/tools/types/streaming_response.py,sha256=V1qT-XAqm-z7zffJ7W1JKPCaxZ
228
228
  letta_client/tools/types/test_mcp_server_request.py,sha256=3SqjEL3EYi7iV57TjTIzuBSKv8O3Y7qSUFrCiXEvSRk,373
229
229
  letta_client/tools/types/update_mcp_server_request.py,sha256=MHouV3iyZCTROguOQP5rOYvnmvDbBeXe5VtEejRvrEs,403
230
230
  letta_client/tools/types/update_mcp_server_response.py,sha256=BJTPHWkb8hwgd4FvftQ8eZjl2QzCQT-vZAUVnLft9hw,376
231
- letta_client/types/__init__.py,sha256=FLNlxqjCtpRVHAjP4lOg6rdRU9Lz4zuGnwLvmxpIdS4,25860
231
+ letta_client/types/__init__.py,sha256=o8If6_9RPXTHQ9G-5rOsRPwutiCHsfqqWrhQxCfsPN4,25924
232
232
  letta_client/types/action_model.py,sha256=VTXavHB6J2d4MjjTMEpkuEyVaiTHyj1FGfa4j8kN6hQ,1241
233
233
  letta_client/types/action_parameters_model.py,sha256=s1mJ4tycms8UmCFsxyjKr6RbghSuqv35xpa9mK42sjg,829
234
234
  letta_client/types/action_response_model.py,sha256=LcML150OvsKimVV3sP4jSFh8pVxQXn_r_ff8DADOr3c,825
@@ -285,7 +285,7 @@ letta_client/types/chat_completion_user_message_param_content.py,sha256=bLJRnIuu
285
285
  letta_client/types/chat_completion_user_message_param_content_item.py,sha256=Vfi7YnB1V9FBfD452M6ea-cVG8k9eoIUzCMYjeLbAds,580
286
286
  letta_client/types/child_tool_rule.py,sha256=5Wl7jQgpSSTqYvK29yrQotZebjzQL1ACweJhTVNhpfo,1121
287
287
  letta_client/types/child_tool_rule_schema.py,sha256=g43as4Qsi7p_kL9pnheGdJwaYbfhYdOKr-fpy3V0Ic4,615
288
- letta_client/types/code_input.py,sha256=P5UBaxX2gz3qWZAORtSEhpVDOy_i6JPIJ7CjA-g1veo,638
288
+ letta_client/types/code_input.py,sha256=_Emu9EQBxJ-mD8MFliFaXb4tsD3NiGl-FhiytlfaZv8,772
289
289
  letta_client/types/completion_create_params_non_streaming.py,sha256=WtfSfUapc6UKhyyVku98I9hZMIPAlJpiiT69d5CoUXM,4110
290
290
  letta_client/types/completion_create_params_non_streaming_function_call.py,sha256=rOhhZE6sp3nXl7eza8uPzc1CKsG3cn-fa8x8wvsqfh0,330
291
291
  letta_client/types/completion_create_params_non_streaming_messages_item.py,sha256=_oNVb2SP0tpUWPtmPwbBS6jVP33j8uHmcsG83rFmKbE,884
@@ -397,8 +397,9 @@ letta_client/types/max_count_per_step_tool_rule.py,sha256=tl5vm0BvkHu4HHfQx14z8E
397
397
  letta_client/types/max_count_per_step_tool_rule_schema.py,sha256=yFKS21DiYLnfNVT7s8A4J85TB6H_T50MuFUnywbqNbs,619
398
398
  letta_client/types/mcp_server_schema.py,sha256=G-7-dXSlOXzpfoqRHpu6BdmnVHSeNWuF7J99_XshXqE,1108
399
399
  letta_client/types/mcp_server_type.py,sha256=cEiRY8zJw3YdV0RV6tt4JUYd0AHT_UNeLgxaouU-_4A,172
400
- letta_client/types/mcp_tool.py,sha256=DO7DnUwd29i1Z5IsEy6TgbHc60SVmVJDrIrT8Vq9t-s,1377
400
+ letta_client/types/mcp_tool.py,sha256=o-0Z8eDpkKR8oUb_OhwxPWMFTwN7S0_6k-EvQgW0ikE,1558
401
401
  letta_client/types/mcp_tool_execute_request.py,sha256=SVH2RlYN6Lb95-8eSB_PZYpHK_lOqeEELIZTmw7jBVY,711
402
+ letta_client/types/mcp_tool_health.py,sha256=ToG3Ut-9nvPkdFNL4gzu1LMv4bNmD7yFZ-bkMO16mzg,866
402
403
  letta_client/types/memory.py,sha256=VduNAXj6OQ9lbPKcC5mLUZmnM2yUCiWLTISbvcfs93U,1257
403
404
  letta_client/types/message.py,sha256=1-7MIu7TOSWhbGKw4aoVG07IajswlT4CInMMjS_kg4M,4735
404
405
  letta_client/types/message_content_item.py,sha256=mu9j_dp-XAHQjbE0bv5wxMH3fTRW_dCtiIzbhdCMauw,630
@@ -518,6 +519,6 @@ letta_client/version.py,sha256=bttKLbIhO3UonCYQlqs600zzbQgfhCCMjeXR9WRzid4,79
518
519
  letta_client/voice/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
519
520
  letta_client/voice/client.py,sha256=EbIVOQh4HXqU9McATxwga08STk-HUwPEAUr_UHqyKHg,3748
520
521
  letta_client/voice/raw_client.py,sha256=KvM_3GXuSf51bubM0RVBnxvlf20qZTFMnaA_BzhXzjQ,5938
521
- letta_client-0.1.263.dist-info/METADATA,sha256=MjZEG2iI__ZnMjmyL7EDdhkvLtUlwtkevRBdbQgKv5o,5781
522
- letta_client-0.1.263.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
523
- letta_client-0.1.263.dist-info/RECORD,,
522
+ letta_client-0.1.265.dist-info/METADATA,sha256=uqICMO4qI7vFzrDf6FEDKSj5FpVNdFnrr_0qJ3RyJjg,5781
523
+ letta_client-0.1.265.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
524
+ letta_client-0.1.265.dist-info/RECORD,,