googleapis/mcp-toolbox · error

failed to create longrunning client: %w

Error message

failed to create longrunning client: %w

What it means

The Google Cloud Dataproc BatchControllerClient could not be created during source Initialize, usually because Application Default Credentials are missing/unauthorized or the regional endpoint (<location>-dataproc.googleapis.com:443) is unreachable.

Source

Thrown at internal/sources/serverlessspark/serverlessspark.go:86

	ua, err := util.UserAgentFromContext(ctx)
	if err != nil {
		return nil, fmt.Errorf("error in User Agent retrieval: %s", err)
	}
	endpoint := fmt.Sprintf("%s-dataproc.googleapis.com:443", r.Location)
	batchClient, err := dataproc.NewBatchControllerClient(ctx, option.WithEndpoint(endpoint), option.WithUserAgent(ua))
	if err != nil {
		return nil, fmt.Errorf("failed to create dataproc batch client: %w", err)
	}
	sessionTemplateClient, err := dataproc.NewSessionTemplateControllerClient(ctx, option.WithEndpoint(endpoint), option.WithUserAgent(ua))
	if err != nil {
		batchClient.Close()
		return nil, fmt.Errorf("failed to create dataproc session template client: %w", err)
	}
	opsClient, err := longrunning.NewOperationsClient(ctx, option.WithEndpoint(endpoint), option.WithUserAgent(ua))
	if err != nil {
		batchClient.Close()
		sessionTemplateClient.Close()
		return nil, fmt.Errorf("failed to create longrunning client: %w", err)
	}
	sessionClient, err := dataproc.NewSessionControllerClient(ctx, option.WithEndpoint(endpoint), option.WithUserAgent(ua))
	if err != nil {
		batchClient.Close()
		sessionTemplateClient.Close()
		opsClient.Close()
		return nil, fmt.Errorf("failed to create dataproc session client: %w", err)
	}

	s := &Source{
		Config:                r,
		BatchClient:           batchClient,
		SessionTemplateClient: sessionTemplateClient,
		OpsClient:             opsClient,
		SessionClient:         sessionClient,
	}
	return s, nil
}

View on GitHub (pinned to 8cc6e09de2)

Solutions

  1. Run gcloud auth application-default login or set GOOGLE_APPLICATION_CREDENTIALS
  2. Verify the Dataproc API is enabled and the location is valid
  3. Check network access to the regional Dataproc endpoint
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at internal/sources/serverlessspark/serverlessspark.go:86 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of googleapis/mcp-toolbox@8cc6e09de2 (2026-09-05). Data as JSON: /api/errors/797ba7778b2ca7b0. Report an issue: GitHub.