ChrisSacrumCor commited on
Commit
1bb9b98
Β·
verified Β·
1 Parent(s): cd404e5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -20
app.py CHANGED
@@ -1750,30 +1750,39 @@ module "{module_name}" {{
1750
  # ============================================================================
1751
 
1752
  async def main():
1753
- """Main function for running the MCP server"""
1754
-
1755
- # Initialize the clean MCP server
1756
- terraform_server = CleanTerraformMCPServer()
1757
-
1758
- # Log startup information
1759
  logger.info("πŸš€ Clean Terraform MCP Server starting...")
1760
  logger.info("πŸ”§ Available tools: generate_terraform_config, validate_terraform_config, get_deployment_workflow, convert_to_module, format_terraform_code, generate_terraform_docs")
1761
  logger.info("πŸ“¦ No external dependencies - pure Terraform tooling")
1762
-
1763
- # Run the server with stdio transport for HF Spaces/MCP clients
1764
- async with stdio_server() as (read_stream, write_stream):
1765
- await terraform_server.server.run(
1766
- read_stream,
1767
- write_stream,
1768
- InitializationOptions(
1769
- server_name="terraform-mcp-server",
1770
- server_version="1.0.0",
1771
- capabilities=terraform_server.server.get_capabilities(
1772
- notification_options=NotificationOptions(),
1773
- experimental_capabilities={}
 
 
 
 
 
1774
  )
1775
  )
1776
- )
 
 
 
 
1777
 
1778
  if __name__ == "__main__":
1779
- asyncio.run(main())
 
 
 
 
 
 
 
1750
  # ============================================================================
1751
 
1752
  async def main():
 
 
 
 
 
 
1753
  logger.info("πŸš€ Clean Terraform MCP Server starting...")
1754
  logger.info("πŸ”§ Available tools: generate_terraform_config, validate_terraform_config, get_deployment_workflow, convert_to_module, format_terraform_code, generate_terraform_docs")
1755
  logger.info("πŸ“¦ No external dependencies - pure Terraform tooling")
1756
+
1757
+ terraform_server = CleanTerraformMCPServer()
1758
+
1759
+ logger.debug("Attempting to initialize stdio_server context...")
1760
+ try:
1761
+ async with stdio_server() as (read_stream, write_stream):
1762
+ logger.debug("stdio_server context entered successfully. Attempting to run MCP server...")
1763
+ await terraform_server.server.run(
1764
+ read_stream,
1765
+ write_stream,
1766
+ InitializationOptions(
1767
+ server_name="terraform-mcp-server",
1768
+ server_version="1.0.0",
1769
+ capabilities=terraform_server.server.get_capabilities(
1770
+ notification_options=NotificationOptions(),
1771
+ experimental_capabilities={}
1772
+ )
1773
  )
1774
  )
1775
+ logger.debug("MCP server.run() completed (should not happen in normal operation unless server exits).")
1776
+ except Exception as e:
1777
+ logger.critical(f"Unhandled exception during stdio_server or server.run: {e}", exc_info=True)
1778
+ # Re-raise or exit with a non-zero code if you want to explicitly signal failure
1779
+ raise # Re-raise to ensure HF Spaces sees the error
1780
 
1781
  if __name__ == "__main__":
1782
+ try:
1783
+ logger.debug("Script execution started via __main__.")
1784
+ asyncio.run(main())
1785
+ logger.debug("Script finished execution (normal exit).")
1786
+ except Exception as e:
1787
+ logger.critical(f"Fatal unhandled exception in main execution block: {e}", exc_info=True)
1788
+ # It's possible the exception here is caught by HF Spaces environment directly