mbxai 1.0.8__tar.gz → 1.0.10__tar.gz

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.
Files changed (26) hide show
  1. {mbxai-1.0.8 → mbxai-1.0.10}/PKG-INFO +1 -1
  2. {mbxai-1.0.8 → mbxai-1.0.10}/pyproject.toml +1 -1
  3. {mbxai-1.0.8 → mbxai-1.0.10}/setup.py +1 -1
  4. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/__init__.py +1 -1
  5. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/mcp/server.py +1 -1
  6. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/openrouter/client.py +17 -15
  7. {mbxai-1.0.8 → mbxai-1.0.10}/.gitignore +0 -0
  8. {mbxai-1.0.8 → mbxai-1.0.10}/LICENSE +0 -0
  9. {mbxai-1.0.8 → mbxai-1.0.10}/README.md +0 -0
  10. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/core.py +0 -0
  11. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/mcp/mcp_client_example.py +0 -0
  12. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/mcp/mcp_server_example.py +0 -0
  13. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/openrouter_example.py +0 -0
  14. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/parse_example.py +0 -0
  15. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/parse_tool_example.py +0 -0
  16. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/examples/tool_client_example.py +0 -0
  17. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/mcp/__init__.py +0 -0
  18. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/mcp/client.py +0 -0
  19. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/mcp/example.py +0 -0
  20. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/openrouter/__init__.py +0 -0
  21. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/openrouter/config.py +0 -0
  22. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/openrouter/models.py +0 -0
  23. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/tools/__init__.py +0 -0
  24. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/tools/client.py +0 -0
  25. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/tools/example.py +0 -0
  26. {mbxai-1.0.8 → mbxai-1.0.10}/src/mbxai/tools/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mbxai
3
- Version: 1.0.8
3
+ Version: 1.0.10
4
4
  Summary: MBX AI SDK
5
5
  Project-URL: Homepage, https://www.mibexx.de
6
6
  Project-URL: Documentation, https://www.mibexx.de
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "mbxai"
7
- version = "1.0.8"
7
+ version = "1.0.10"
8
8
  authors = [
9
9
  { name = "MBX AI" }
10
10
  ]
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="mbxai",
5
- version="1.0.8",
5
+ version="1.0.10",
6
6
  author="MBX AI",
7
7
  description="MBX AI SDK",
8
8
  long_description=open("README.md").read(),
@@ -2,4 +2,4 @@
2
2
  MBX AI package.
3
3
  """
4
4
 
5
- __version__ = "1.0.8"
5
+ __version__ = "1.0.10"
@@ -31,7 +31,7 @@ class MCPServer:
31
31
  self.app = FastAPI(
32
32
  title=self.name,
33
33
  description=self.description,
34
- version="1.0.8",
34
+ version="1.0.10",
35
35
  )
36
36
 
37
37
  # Initialize MCP server
@@ -3,7 +3,7 @@ OpenRouter client implementation.
3
3
  """
4
4
 
5
5
  from typing import Any, Optional, Union
6
- from openai import OpenAI, OpenAIError, RateLimitError, APITimeoutError, APIConnectionError, InvalidRequestError, AuthenticationError
6
+ from openai import OpenAI, OpenAIError, RateLimitError, APITimeoutError, APIConnectionError, BadRequestError, AuthenticationError
7
7
  from .models import OpenRouterModel, OpenRouterModelRegistry
8
8
  from .config import OpenRouterConfig
9
9
  import logging
@@ -254,6 +254,17 @@ class OpenRouterClient:
254
254
  **kwargs: Any,
255
255
  ) -> Any:
256
256
  """Get a chat completion from OpenRouter."""
257
+
258
+ request = {
259
+ "model": model or self.model,
260
+ "messages": messages,
261
+ "response_format": response_format,
262
+ **kwargs,
263
+ }
264
+
265
+ # Log the full request for debugging
266
+ logger.debug(f"Full request: {request}")
267
+
257
268
  try:
258
269
  # Log the request details
259
270
  logger.info(f"Sending parse request to OpenRouter with model: {model or self.model}")
@@ -264,16 +275,6 @@ class OpenRouterClient:
264
275
  total_size = sum(len(str(msg)) for msg in messages)
265
276
  logger.info(f"Total message size: {total_size} bytes")
266
277
 
267
- request = {
268
- "model": model or self.model,
269
- "messages": messages,
270
- "response_format": response_format,
271
- **kwargs,
272
- }
273
-
274
- # Log the full request for debugging
275
- logger.debug(f"Full request: {request}")
276
-
277
278
  try:
278
279
  response = self._client.beta.chat.completions.parse(**request)
279
280
  except RateLimitError as e:
@@ -288,9 +289,9 @@ class OpenRouterClient:
288
289
  except AuthenticationError as e:
289
290
  logger.error(f"Authentication error: {str(e)}")
290
291
  raise OpenRouterAPIError(f"Authentication error: {str(e)}")
291
- except InvalidRequestError as e:
292
- logger.error(f"Invalid request: {str(e)}")
293
- raise OpenRouterAPIError(f"Invalid request: {str(e)}")
292
+ except BadRequestError as e:
293
+ logger.error(f"Bad request: {str(e)}")
294
+ raise OpenRouterAPIError(f"Bad request: {str(e)}")
294
295
  except OpenAIError as e:
295
296
  logger.error(f"OpenAI error: {str(e)}")
296
297
  raise OpenRouterAPIError(f"OpenAI error: {str(e)}")
@@ -353,7 +354,8 @@ class OpenRouterClient:
353
354
 
354
355
  except Exception as e:
355
356
  stack_trace = traceback.format_exc()
356
- logger.debug(f"Raising error: {e}")
357
+ logger.error(f"Raising error: {e}")
358
+ logger.error(f"Full request from ERROR: {request}")
357
359
  logger.error(f"Error in parse completion: {str(e)}")
358
360
  logger.error(f"Stack trace:\n{stack_trace}")
359
361
  logger.error(f"Request details: model={model or self.model}, response_format={response_format}, kwargs={kwargs}")
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes