mbxai 1.0.10__tar.gz → 1.0.12__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.10 → mbxai-1.0.12}/PKG-INFO +1 -1
  2. {mbxai-1.0.10 → mbxai-1.0.12}/pyproject.toml +1 -1
  3. {mbxai-1.0.10 → mbxai-1.0.12}/setup.py +1 -1
  4. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/__init__.py +1 -1
  5. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/mcp/server.py +1 -1
  6. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/openrouter/client.py +2 -4
  7. {mbxai-1.0.10 → mbxai-1.0.12}/.gitignore +0 -0
  8. {mbxai-1.0.10 → mbxai-1.0.12}/LICENSE +0 -0
  9. {mbxai-1.0.10 → mbxai-1.0.12}/README.md +0 -0
  10. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/core.py +0 -0
  11. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/mcp/mcp_client_example.py +0 -0
  12. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/mcp/mcp_server_example.py +0 -0
  13. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/openrouter_example.py +0 -0
  14. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/parse_example.py +0 -0
  15. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/parse_tool_example.py +0 -0
  16. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/examples/tool_client_example.py +0 -0
  17. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/mcp/__init__.py +0 -0
  18. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/mcp/client.py +0 -0
  19. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/mcp/example.py +0 -0
  20. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/openrouter/__init__.py +0 -0
  21. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/openrouter/config.py +0 -0
  22. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/openrouter/models.py +0 -0
  23. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/tools/__init__.py +0 -0
  24. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/tools/client.py +0 -0
  25. {mbxai-1.0.10 → mbxai-1.0.12}/src/mbxai/tools/example.py +0 -0
  26. {mbxai-1.0.10 → mbxai-1.0.12}/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.10
3
+ Version: 1.0.12
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.10"
7
+ version = "1.0.12"
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.10",
5
+ version="1.0.12",
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.10"
5
+ __version__ = "1.0.12"
@@ -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.10",
34
+ version="1.0.12",
35
35
  )
36
36
 
37
37
  # Initialize MCP server
@@ -11,6 +11,7 @@ import time
11
11
  import asyncio
12
12
  import traceback
13
13
  from functools import wraps
14
+ import json
14
15
 
15
16
  logger = logging.getLogger(__name__)
16
17
 
@@ -335,7 +336,6 @@ class OpenRouterClient:
335
336
  # If there's no parsed attribute but there is content, try to parse it
336
337
  if not hasattr(response.choices[0].message, 'parsed') and hasattr(response.choices[0].message, 'content'):
337
338
  try:
338
- import json
339
339
  content = response.choices[0].message.content
340
340
  if isinstance(content, str):
341
341
  parsed = json.loads(content)
@@ -355,11 +355,9 @@ class OpenRouterClient:
355
355
  except Exception as e:
356
356
  stack_trace = traceback.format_exc()
357
357
  logger.error(f"Raising error: {e}")
358
- logger.error(f"Full request from ERROR: {request}")
358
+ logger.error(f"Full request from ERROR:\n{json.dumps(request, indent=2)}")
359
359
  logger.error(f"Error in parse completion: {str(e)}")
360
360
  logger.error(f"Stack trace:\n{stack_trace}")
361
- logger.error(f"Request details: model={model or self.model}, response_format={response_format}, kwargs={kwargs}")
362
- logger.error(f"Message structure: {[{'role': msg.get('role'), 'content_length': len(str(msg.get('content', '')))} for msg in messages]}")
363
361
 
364
362
  if hasattr(e, 'response') and e.response is not None:
365
363
  logger.error(f"Response status: {e.response.status_code}")
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