This document captures the end-to-end scenarios matrix for Azure SDK MCP implementations across languages, mapped to MCP standards, tsp-client
capabilities, and implementation gaps.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Copyright (c) Microsoft Corporation. All rights reserved. | |
//Licensed under the MIT License. | |
package io.clientcore.annotation.processor.test.implementation; | |
import io.clientcore.core.http.models.HttpHeaderName; | |
import io.clientcore.core.http.models.HttpMethod; | |
import io.clientcore.core.http.models.HttpRequest; | |
import io.clientcore.core.http.models.RequestOptions; | |
import io.clientcore.core.http.models.Response; | |
import io.clientcore.core.http.pipeline.HttpPipeline; |
-
Easier Debugging and Issue Reporting
- Users can link directly to the broken source code when reporting issues.
- In scenarios where generated code causes an error, having the code committed ensures visibility and simplifies troubleshooting.
-
Simplified Exploration
- Developers can quickly inspect the implementation without needing to regenerate code or resolve dependencies.
LRO Poller never throws on failed status of the Long running OPeration. Here - https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/core/azure-core/src/main/java/com/azure/core/util/polling/PollerFlux.java#L225
In the usage context of Pollers in Form Recognizer, nothing much is gained out of LongRunningOperationState.FAILED.
LRO current implementation fail state usage:
recognizePoller.map(asyncPollResponse -> {
if (asyncPollResponse.getStatus() == LRO.FAILED) {
// inspect error or may be cancel server side op if it make sense.
if (formContent.getTextContentType().equals(TextContentType.WORD)) {
FormWord formWordElement = (FormWord) (formContent);
// do something
} else if (formContent.getTextContentType().equals(TextContentType.LINE)) {
FormLine formLineElement = (FormLine) (formContent);
// do something else
}
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import com.azure.core.util.Context; | |
import com.azure.data.appconfiguration.ConfigurationClient; | |
import com.azure.data.appconfiguration.ConfigurationClientBuilder; | |
import com.azure.data.appconfiguration.models.ConfigurationSetting; | |
import io.grpc.ManagedChannel; | |
import io.grpc.ManagedChannelBuilder; | |
import io.opentelemetry.context.Scope; | |
import io.opentelemetry.exporters.jaeger.JaegerGrpcSpanExporter; | |
import io.opentelemetry.sdk.trace.TracerSdk; | |
import io.opentelemetry.sdk.trace.export.SimpleSpansProcessor; |
Publishing events is one of the common use-cases for event publishers. Following documentation describes instructions to run the sample program for publishing events with tracing instrumentation for Java SDK libraries.
Sample Code
package com.example;
import com.azure.identity.credential.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
import com.azure.security.keyvault.secrets.models.Secret;
import com.azure.security.keyvault.secrets.models.SecretBase;
NewerOlder