Skip to content

AWS Diagram MCP Server crashes on Windows in Kiro (SIGALRM) #2246

@proxOP

Description

@proxOP

Describe the bug

On Windows, invoking generate_diagram with the above request causes the MCP server to fail with
AttributeError: module 'signal' has no attribute 'SIGALRM'.
This happens during diagram generation, not during server startup.
Disabling alarm-based timeouts via FASTMCP_DISABLE_ALARM=1 resolves the issue.

Expected Behavior

The generate_diagram MCP tool should successfully generate and return the architecture diagram on Windows, without raising a signal.SIGALRM error, and return a valid output path or rendered diagram image.

Current Behavior

{
"code": "with Diagram("Serverless Application", show=False, direction="LR"):\n # API Gateway\n api = APIGateway("API Gateway")\n \n # Lambda Function\n lambda_func = Lambda("Lambda Function")\n \n # DynamoDB\n dynamodb = Dynamodb("DynamoDB")\n \n # Create the flow\n api >> lambda_func >> dynamodb",
"filename": "serverless_application",
"workspace_dir": "."
}

{
"status": "error",
"path": null,
"message": "Error generating diagram: AttributeError: module 'signal' has no attribute 'SIGALRM'"
}

Reproduction Steps

{
"mcpServers": {
"awslabs.aws-diagram-mcp-server": {
"command": "uvx",
"args": [
"awslabs.aws-diagram-mcp-server"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR"
},
"disabled": false
}
}
}

🔁 Steps to reproduce

On Windows 10/11

Install Graphviz and ensure dot -V works

Install uv

Add AWS Diagram MCP Server to Kiro (or equivalent MCP client)

Enable the MCP server

Run any diagram generation request, e.g.:
Generate an AWS diagram with API Gateway → Lambda → DynamoDB

Possible Solution

{
"mcpServers": {
"awslabs.aws-diagram-mcp-server": {
"command": "uvx",
"args": [
"awslabs.aws-diagram-mcp-server"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"FASTMCP_DISABLE_ALARM": "1"
},
"disabled": false
}
}
}

With this config:

MCP server runs correctly

Diagram generation succeeds

No SIGALRM error

Additional Information/Context

This issue occurs when using the AWS Diagram MCP Server inside Kiro via the built-in MCP integration (added using the “Add to Kiro” button). The MCP tool being invoked is generate_diagram. The server starts correctly and is successfully selected by Kiro, but diagram generation fails at runtime on Windows due to use of signal.SIGALRM, which is not supported on Windows. Setting the environment variable FASTMCP_DISABLE_ALARM=1 resolves the issue and allows diagrams to generate successfully. This appears to be a Windows-specific compatibility issue rather than a configuration or Graphviz setup problem.

OS

Windows 11 (x64)

Server

aws-diagram-mcp-server

Server Version

latest (installed via uvx)

Region experiencing the issue

us-east-1

Other information

No response

Service quota

  • I have reviewed the service quotas for this construct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingneeds-triageThis needs to be handled, it is the first automatically assigned label to issues.

    Type

    No type

    Projects

    Status

    To triage

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions