mbxai 0.5.8__py3-none-any.whl → 0.5.9__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.
mbxai/__init__.py CHANGED
@@ -2,4 +2,4 @@
2
2
  MBX AI package.
3
3
  """
4
4
 
5
- __version__ = "0.5.8"
5
+ __version__ = "0.5.9"
mbxai/mcp/server.py CHANGED
@@ -31,7 +31,7 @@ class MCPServer:
31
31
  self.app = FastAPI(
32
32
  title=self.name,
33
33
  description=self.description,
34
- version="0.5.8",
34
+ version="0.5.9",
35
35
  )
36
36
 
37
37
  # Initialize MCP server
mbxai/tools/client.py CHANGED
@@ -128,12 +128,32 @@ class ToolClient:
128
128
  logger.debug(f"Tool result: {result}")
129
129
 
130
130
  # Add the tool response to the messages
131
- messages.append({
131
+ tool_response = {
132
132
  "role": "tool",
133
133
  "tool_call_id": tool_call.id,
134
134
  "name": tool_call.function.name,
135
135
  "content": str(result),
136
- })
136
+ }
137
+ messages.append(tool_response)
138
+ logger.debug(f"Added tool response to messages: {tool_response}")
139
+
140
+ # Get a new response from the model with the tool results
141
+ response = self._client.chat_completion(
142
+ messages=messages,
143
+ model=model,
144
+ stream=stream,
145
+ **kwargs,
146
+ )
147
+
148
+ if stream:
149
+ return response
150
+
151
+ message = response.choices[0].message
152
+ messages.append({"role": "assistant", "content": message.content})
153
+
154
+ # If there are no more tool calls, we're done
155
+ if not message.tool_calls:
156
+ return response
137
157
 
138
158
  async def parse(
139
159
  self,
@@ -217,9 +237,30 @@ class ToolClient:
217
237
  logger.debug(f"Tool result: {result}")
218
238
 
219
239
  # Add the tool response to the messages
220
- messages.append({
240
+ tool_response = {
221
241
  "role": "tool",
222
242
  "tool_call_id": tool_call.id,
223
243
  "name": tool_call.function.name,
224
244
  "content": str(result),
225
- })
245
+ }
246
+ messages.append(tool_response)
247
+ logger.debug(f"Added tool response to messages: {tool_response}")
248
+
249
+ # Get a new response from the model with the tool results
250
+ response = self._client.chat_completion_parse(
251
+ messages=messages,
252
+ response_format=response_format,
253
+ model=model,
254
+ stream=stream,
255
+ **kwargs,
256
+ )
257
+
258
+ if stream:
259
+ return response
260
+
261
+ message = response.choices[0].message
262
+ messages.append({"role": "assistant", "content": message.content})
263
+
264
+ # If there are no more tool calls, we're done
265
+ if not message.tool_calls:
266
+ return response
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mbxai
3
- Version: 0.5.8
3
+ Version: 0.5.9
4
4
  Summary: MBX AI SDK
5
5
  Project-URL: Homepage, https://www.mibexx.de
6
6
  Project-URL: Documentation, https://www.mibexx.de
@@ -1,18 +1,18 @@
1
- mbxai/__init__.py,sha256=jr4xSHeJIuuil62QD7No_Ut6YGCpWh1LTDHPzlHTemE,47
1
+ mbxai/__init__.py,sha256=EGmcQW8yIqs35vLXZTkb_1ZtjO2cYytVbPOV3aHyX2c,47
2
2
  mbxai/core.py,sha256=WMvmU9TTa7M_m-qWsUew4xH8Ul6xseCZ2iBCXJTW-Bs,196
3
3
  mbxai/mcp/__init__.py,sha256=_ek9iYdYqW5saKetj4qDci11jxesQDiHPJRpHMKkxgU,175
4
4
  mbxai/mcp/client.py,sha256=hEAVWIrIq758C1zm9aWGf-FiITB3LxtuxZEZ0CcjJ4s,5343
5
5
  mbxai/mcp/example.py,sha256=oaol7AvvZnX86JWNz64KvPjab5gg1VjVN3G8eFSzuaE,2350
6
- mbxai/mcp/server.py,sha256=c03723Fm1SmYJspMXnKPMQ_6bCQGOb2ssaHVg66iONA,3462
6
+ mbxai/mcp/server.py,sha256=yHzkHwL41vR4st4A0wx1bGuPFoGewDEa5KwVJ5nhSUI,3462
7
7
  mbxai/openrouter/__init__.py,sha256=Ito9Qp_B6q-RLGAQcYyTJVWwR2YAZvNqE-HIYXxhtD8,298
8
8
  mbxai/openrouter/client.py,sha256=XLRMRNRJH96Jl6_af0KkzRDdLJnixh8I3RvEEcFuXyg,10840
9
9
  mbxai/openrouter/config.py,sha256=MTX_YHsFrM7JYqovJSkEF6JzVyIdajeI5Dja2CALH58,2874
10
10
  mbxai/openrouter/models.py,sha256=b3IjjtZAjeGOf2rLsdnCD1HacjTnS8jmv_ZXorc-KJQ,2604
11
11
  mbxai/tools/__init__.py,sha256=QUFaXhDm-UKcuAtT1rbKzhBkvyRBVokcQIOf9cxIuwc,160
12
- mbxai/tools/client.py,sha256=f5sXhh5p39wyYIMH6jZmAVEWkQkEnrcV6BMpj6jCPFA,8047
12
+ mbxai/tools/client.py,sha256=tqOJARnBvmW5Hpjy4RAN45D1RPPT76neltbYHxT0Zt0,9508
13
13
  mbxai/tools/example.py,sha256=1HgKK39zzUuwFbnp3f0ThyWVfA_8P28PZcTwaUw5K78,2232
14
14
  mbxai/tools/types.py,sha256=fo5t9UbsHGynhA88vD_ecgDqL8iLvt2E1h1ym43Rrgk,745
15
- mbxai-0.5.8.dist-info/METADATA,sha256=Hhj1q5xRwFddw0vpyoigoMQy4SLdi6CHXWIFs4t_c7c,4107
16
- mbxai-0.5.8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
- mbxai-0.5.8.dist-info/licenses/LICENSE,sha256=hEyhc4FxwYo3NQ40yNgZ7STqwVk-1_XcTXOnAPbGJAw,1069
18
- mbxai-0.5.8.dist-info/RECORD,,
15
+ mbxai-0.5.9.dist-info/METADATA,sha256=-9DzHsxUcnL7x9afsWKUnF8OOmqZLi-aE7lmnXUx7_A,4107
16
+ mbxai-0.5.9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
+ mbxai-0.5.9.dist-info/licenses/LICENSE,sha256=hEyhc4FxwYo3NQ40yNgZ7STqwVk-1_XcTXOnAPbGJAw,1069
18
+ mbxai-0.5.9.dist-info/RECORD,,
File without changes