mcp icon indicating copy to clipboard operation
mcp copied to clipboard

Calls to `loadtesting_testrun_create` always end with a timeout, but typically succeed

Open charris-msft opened this issue 1 month ago • 7 comments

Describe the bug

Calls to loadtesting_testrun_create tend to succeed, 8 of 8 I've seen have ended with a timeout.

It looks like the call is synchronous and will not respond until the test is complete, but Copilot Coding Agent won't wait that long, and doesn't expect it to be a synchronous call.

Expected behavior

Expect the call to return quickly, while leaving the test to take however long is required to complete.

Actual behavior

Call to Azure Load Testing

Input
{
  "command": "loadtesting_testrun_create",
  "intent": "Create and run a new load test execution",
  "parameters": {
    "description": "Load test run triggered by GitHub Copilot using Azure MCP tools",
    "display-name": "GitHub Copilot Load Test Run - 2025-11-11",
    "resource-group": "rg-ignite-github-agentic-azure",
    "subscription": "cda6aeab-6dec-4567-a4d8-3770583a13f0",
    "test-id": "octocat-api-github-copilot-test",
    "test-resource-name": "octocat-supply-loadtest",
    "testrun-id": "run-20251111-180957"
  }
}
Tool call failed: MCP error -32001: Request timed out

The test run creation timed out, but it might have been initiated. Let me check the status of the test run:

Call to Azure Load Testing

Input
{
  "command": "loadtesting_testrun_get",
  "intent": "Get status of the test run that was just created",
  "parameters": {
    "resource-group": "rg-ignite-github-agentic-azure",
    "subscription": "cda6aeab-6dec-4567-a4d8-3770583a13f0",
    "test-resource-name": "octocat-supply-loadtest",
    "testrun-id": "run-20251111-180957"
  }
}
{
  "status": 200,
  "message": "Success",
  "results": {
    "TestRun": {
      "testId": "octocat-api-github-copilot-test",
      "testRunId": "run-20251111-180957",
      "displayName": "GitHub Copilot Load Test Run - 2025-11-11",
      "virtualUsers": 0,
      "status": "EXECUTING",
      "startDateTime": "2025-11-11T18:10:17.689+00:00",
      "endDateTime": null,
      "executedDateTime": "2025-11-11T18:10:12.669+00:00",
      "portalUrl": "https://portal.azure.com/#blade/Microsoft_Azure_CloudNativeTesting/TestRunReport.ReactView//resourceId/%2fsubscriptions%2fcda6aeab-6dec-4567-a4d8-3770583a13f0%2fresourcegroups%2frg-ignite-github-agentic-azure%2fproviders%2fmicrosoft.loadtestservice%2floadtests%2foctocat-supply-loadtest/testId/octocat-api-github-copilot-test/testRunId/run-20251111-180957",
      "duration": 0,
      "createdDateTime": "2025-11-11T18:10:15.192+00:00",
      "createdBy": "",
      "lastModifiedDateTime": "2025-11-11T18:10:43.173+00:00",
      "lastModifiedBy": "",
      "description": "Load test run triggered by GitHub Copilot using Azure MCP tools",
      "testResult": "NOT_APPLICABLE"
    }
  },
  "duration": 0
}
Image

Reproduction Steps

run the azure load testing tool 'loadtesting_testrun_create' to kick off a test run for the existing test

Environment

VS Code Insiders or Copilot Coding Agent (now Copilot Cloud Agent)

charris-msft avatar Nov 11 '25 18:11 charris-msft

Copilot in VS Code did wait long enough and returned this response:

{"status":200,"message":"Success","results":{"TestRun":{"testId":"octocat-api-test-01","testRunId":"high-load-20251111-run","displayName":"Load Test Run - Nov 11","virtualUsers":0,"status":"DONE","startDateTime":"2025-11-11T18:19:20.481+00:00","endDateTime":"2025-11-11T18:28:36.778+00:00","executedDateTime":"2025-11-11T18:19:17.634+00:00","portalUrl":"https://portal.azure.com/#blade/Microsoft_Azure_CloudNativeTesting/TestRunReport.ReactView//resourceId/%2fsubscriptions%2fcda6aeab-6dec-4567-a4d8-3770583a13f0%2fresourcegroups%2frg-ignite-github-agentic-azure%2fproviders%2fmicrosoft.loadtestservice%2floadtests%2foctocat-supply-loadtest/testId/octocat-api-test-01/testRunId/high-load-20251111-run","duration":0,"createdDateTime":"2025-11-11T18:19:19.502+00:00","createdBy":"[email protected]","lastModifiedDateTime":"2025-11-11T18:28:41.05+00:00","lastModifiedBy":"[email protected]","description":"Testing auto-scaling with 160 users and 1-3s think time","testResult":"NOT_APPLICABLE"}},"duration":0}

Perhaps there should be a param indicating whether the call is sync or async?

charris-msft avatar Nov 11 '25 18:11 charris-msft

@charris-msft you can find the owners for areas in .github/codeowners for routing bugs -- https://github.com/Azure/azure-mcp/blob/main/.github/CODEOWNERS#L192

joshfree avatar Nov 12 '25 16:11 joshfree

@nishtha489 @knarayanana @krchanda @johnst

joshfree avatar Nov 12 '25 16:11 joshfree

@alzimmermsft it looks like the area tools-loadTesting wasn't properly onboarded. Please work with the partner to get github issue labels created and have their CODEOWNERS entries updated. https://aka.ms/azmcp/intake

joshfree avatar Nov 12 '25 16:11 joshfree

Updated tags to add the missing one for LoadTesting and following up to resolve the two missing aliases.

alzimmermsft avatar Nov 12 '25 18:11 alzimmermsft

@alzimmermsft Can we add to the parameter descriptions to indicate requirements like max length?

Image

I've seen this a number of times and it definitely slows down the process of completing the task.

charris-msft avatar Nov 13 '25 00:11 charris-msft

I've created a PR to address the request for better information in parameters

https://github.com/microsoft/mcp/pull/1203

But that does nothing to address why timeouts are happening

alzimmermsft avatar Nov 17 '25 21:11 alzimmermsft