mcp-proxy-adapter 6.4.3__py3-none-any.whl → 6.4.5__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.
@@ -340,51 +340,38 @@ async def create_and_run_server(
340
340
  print(" Use Ctrl+C to stop the server")
341
341
  print("=" * 60)
342
342
 
343
- # Use hypercorn directly
344
- import hypercorn.asyncio
345
- import hypercorn.config
343
+ # Use uvicorn for better FastAPI compatibility
344
+ import uvicorn
346
345
  import asyncio
347
346
 
348
- # Configure hypercorn
349
- config_hypercorn = hypercorn.config.Config()
350
- config_hypercorn.bind = [f"{server_config['host']}:{server_config['port']}"]
351
- config_hypercorn.loglevel = server_config.get("log_level", "info")
347
+ # Configure uvicorn
348
+ uvicorn_config = uvicorn.Config(
349
+ app=app,
350
+ host=server_config["host"],
351
+ port=server_config["port"],
352
+ log_level=server_config.get("log_level", "info"),
353
+ reload=False,
354
+ )
352
355
 
353
356
  # Add SSL configuration if present
354
357
  if "certfile" in server_config:
355
- config_hypercorn.certfile = server_config["certfile"]
358
+ uvicorn_config.ssl_certfile = server_config["certfile"]
356
359
  if "keyfile" in server_config:
357
- config_hypercorn.keyfile = server_config["keyfile"]
360
+ uvicorn_config.ssl_keyfile = server_config["keyfile"]
358
361
  if "ca_certs" in server_config:
359
- config_hypercorn.ca_certs = server_config["ca_certs"]
360
- if "verify_mode" in server_config:
361
- import ssl
362
- # Use the verify_mode from configuration, default to CERT_NONE for simple HTTPS
363
- verify_mode = server_config.get("verify_mode", ssl.CERT_NONE)
364
- if verify_mode == "CERT_REQUIRED":
365
- config_hypercorn.verify_mode = ssl.CERT_REQUIRED
366
- elif verify_mode == "CERT_OPTIONAL":
367
- config_hypercorn.verify_mode = ssl.CERT_OPTIONAL
368
- else:
369
- config_hypercorn.verify_mode = ssl.CERT_NONE
362
+ uvicorn_config.ssl_ca_certs = server_config["ca_certs"]
370
363
 
371
364
  # Determine if SSL is enabled
372
365
  ssl_enabled = any(key in server_config for key in ["certfile", "keyfile"])
373
366
 
374
367
  if ssl_enabled:
375
- print(f"🔐 Starting HTTPS server with hypercorn...")
368
+ print(f"🔐 Starting HTTPS server with uvicorn...")
376
369
  else:
377
- print(f"🌐 Starting HTTP server with hypercorn...")
370
+ print(f"🌐 Starting HTTP server with uvicorn...")
378
371
 
379
- # Run the server
380
- try:
381
- # Check if we're already in an event loop
382
- loop = asyncio.get_running_loop()
383
- # If we're in a loop, use await instead of asyncio.run
384
- await hypercorn.asyncio.serve(app, config_hypercorn)
385
- except RuntimeError:
386
- # No event loop running, use asyncio.run
387
- asyncio.run(hypercorn.asyncio.serve(app, config_hypercorn))
372
+ # Create and run uvicorn server
373
+ server = uvicorn.Server(uvicorn_config)
374
+ await server.serve()
388
375
 
389
376
  except KeyboardInterrupt:
390
377
  print("\n🛑 Server stopped by user")
@@ -2,4 +2,4 @@
2
2
  Version information for MCP Proxy Adapter.
3
3
  """
4
4
 
5
- __version__ = "6.4.3"
5
+ __version__ = "6.4.5"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcp-proxy-adapter
3
- Version: 6.4.3
3
+ Version: 6.4.5
4
4
  Summary: Powerful JSON-RPC microservices framework with built-in security, authentication, and proxy registration
5
5
  Home-page: https://github.com/maverikod/mcp-proxy-adapter
6
6
  Author: Vasiliy Zdanovskiy
@@ -30,6 +30,7 @@ Description-Content-Type: text/markdown
30
30
  Requires-Dist: fastapi<1.0.0,>=0.95.0
31
31
  Requires-Dist: pydantic>=2.0.0
32
32
  Requires-Dist: hypercorn<1.0.0,>=0.15.0
33
+ Requires-Dist: uvicorn<1.0.0,>=0.22.0
33
34
  Requires-Dist: docstring-parser<1.0.0,>=0.15
34
35
  Requires-Dist: typing-extensions<5.0.0,>=4.5.0
35
36
  Requires-Dist: jsonrpc>=1.2.0
@@ -4,7 +4,7 @@ mcp_proxy_adapter/config.py,sha256=-7iVS0mUWWKNeao7nqTAFlUD6FcMwRlDkchN7OwYsr0,2
4
4
  mcp_proxy_adapter/custom_openapi.py,sha256=yLle4CntYK9wpivgn9NflZyJhy-YNrmWjJzt0ai5nP0,14672
5
5
  mcp_proxy_adapter/main.py,sha256=idp3KUR7CT7kTXLVPvvclJlNnt8d_HYl8_jY98uknmo,4677
6
6
  mcp_proxy_adapter/openapi.py,sha256=2UZOI09ZDRJuBYBjKbMyb2U4uASszoCMD5o_4ktRpvg,13480
7
- mcp_proxy_adapter/version.py,sha256=3_EMNZD5GKBpcBZePrwsPGvJkvRuLcziddacRtkwu4g,74
7
+ mcp_proxy_adapter/version.py,sha256=zK2Dhs_fouIY-JZmk040_rQOrWZz-U3znGMwhn_7O3Q,74
8
8
  mcp_proxy_adapter/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  mcp_proxy_adapter/api/app.py,sha256=dIsAWbQFWMa8zxhPro9hxUnUuqnLWlqutWAKrqJIHGE,33386
10
10
  mcp_proxy_adapter/api/handlers.py,sha256=iyFGoEuUS1wxbV1ELA0zmaxIyQR7j4zw-4MrD-uIO6E,8294
@@ -53,7 +53,7 @@ mcp_proxy_adapter/commands/token_management_command.py,sha256=tCVjhWqAQ3KhcwSsZU
53
53
  mcp_proxy_adapter/commands/transport_management_command.py,sha256=HEnUyL4S014jheyBwO90u9gnzk0qxBlOJdC_0Sxhq9E,4585
54
54
  mcp_proxy_adapter/commands/unload_command.py,sha256=6CUM9B9c-mNxw7uvt2vcvZSnxMySfoMT5UmDhzNXq38,4984
55
55
  mcp_proxy_adapter/core/__init__.py,sha256=3yt0CFZdsIG8Ln4bg-r4ISYzipm3ZUAxTn0twYTs9FI,867
56
- mcp_proxy_adapter/core/app_factory.py,sha256=NvJBTY4sh9tIxbEvykfNROkHN6XviZAG6U-WNl8tMpI,19964
56
+ mcp_proxy_adapter/core/app_factory.py,sha256=5Kug6gPqC0JU_OUgDgHOsnEdsP8Z8KtDDZQThD5A7vg,19127
57
57
  mcp_proxy_adapter/core/app_runner.py,sha256=1t9p_UkWb1IvZDTD7FOCRMNSpOSgtNeHM3i7PP7x6xc,10605
58
58
  mcp_proxy_adapter/core/auth_validator.py,sha256=q8TNkdolvP-gM6Bvecc6nrVG9al5J31pocdwhguhTBk,19742
59
59
  mcp_proxy_adapter/core/certificate_utils.py,sha256=yeDwi-j42CxK_g-r5_ragGFY_HdSgDfTWHVUjDHF6nI,38480
@@ -140,8 +140,8 @@ mcp_proxy_adapter/schemas/base_schema.json,sha256=v9G9cGMd4dRhCZsOQ_FMqOi5VFyVbI
140
140
  mcp_proxy_adapter/schemas/openapi_schema.json,sha256=C3yLkwmDsvnLW9B5gnKKdBGl4zxkeU-rEmjTrNVsQU0,8405
141
141
  mcp_proxy_adapter/utils/config_generator.py,sha256=UXxuxxAyKTesAS3DOofQ26e20v771inA7EfBV8PZD1c,47543
142
142
  mcp_proxy_adapter_issue_package/demonstrate_issue.py,sha256=O54fwWQvUAjEGiHhQGm1JLnARkhVCwAqjBk_89HyRbY,7894
143
- mcp_proxy_adapter-6.4.3.dist-info/METADATA,sha256=Ar0t1TJKeIelJI0e5tyvATuDiBP3NZjJjq9dIRUcHyc,22403
144
- mcp_proxy_adapter-6.4.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
145
- mcp_proxy_adapter-6.4.3.dist-info/entry_points.txt,sha256=J3eV6ID0lt_VSp4lIdIgBFTqLCThgObNNxRCbyfiMHw,70
146
- mcp_proxy_adapter-6.4.3.dist-info/top_level.txt,sha256=CHk-Mc-AxjO-tRheegA2qLiQnU4vZRnxuTF81So6SAc,50
147
- mcp_proxy_adapter-6.4.3.dist-info/RECORD,,
143
+ mcp_proxy_adapter-6.4.5.dist-info/METADATA,sha256=ZjmpgjQpSQgbvCfR6KZFiSpKF3LtLoybzscadY9cb-I,22441
144
+ mcp_proxy_adapter-6.4.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
145
+ mcp_proxy_adapter-6.4.5.dist-info/entry_points.txt,sha256=J3eV6ID0lt_VSp4lIdIgBFTqLCThgObNNxRCbyfiMHw,70
146
+ mcp_proxy_adapter-6.4.5.dist-info/top_level.txt,sha256=CHk-Mc-AxjO-tRheegA2qLiQnU4vZRnxuTF81So6SAc,50
147
+ mcp_proxy_adapter-6.4.5.dist-info/RECORD,,