Skip to content

Commit cb4f276

Browse files
authored
Merge pull request #162 from microsoft/update-translations
🌐 Update translations via Co-op Translator
2 parents bbd1f86 + cdfae07 commit cb4f276

File tree

47 files changed

+4160
-4191
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+4160
-4191
lines changed

translations/ar/04-PracticalImplementation/README.md

Lines changed: 74 additions & 77 deletions
Large diffs are not rendered by default.

translations/bg/04-PracticalImplementation/README.md

Lines changed: 83 additions & 83 deletions
Large diffs are not rendered by default.

translations/bn/04-PracticalImplementation/README.md

Lines changed: 87 additions & 85 deletions
Large diffs are not rendered by default.

translations/br/04-PracticalImplementation/README.md

Lines changed: 71 additions & 71 deletions
Large diffs are not rendered by default.

translations/cs/04-PracticalImplementation/README.md

Lines changed: 115 additions & 116 deletions
Large diffs are not rendered by default.

translations/da/04-PracticalImplementation/README.md

Lines changed: 74 additions & 74 deletions
Large diffs are not rendered by default.

translations/de/04-PracticalImplementation/README.md

Lines changed: 66 additions & 66 deletions
Large diffs are not rendered by default.

translations/el/04-PracticalImplementation/README.md

Lines changed: 114 additions & 114 deletions
Large diffs are not rendered by default.

translations/en/04-PracticalImplementation/README.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<!--
22
CO_OP_TRANSLATOR_METADATA:
33
{
4-
"original_hash": "d88dbf928fa0f159b82312e9a6757ba0",
5-
"translation_date": "2025-06-18T08:28:28+00:00",
4+
"original_hash": "5384bbb2a92d00d5d7e66274dbe0331d",
5+
"translation_date": "2025-06-20T18:17:51+00:00",
66
"source_file": "04-PracticalImplementation/README.md",
77
"language_code": "en"
88
}
@@ -11,13 +11,13 @@ CO_OP_TRANSLATOR_METADATA:
1111

1212
Practical implementation is where the power of the Model Context Protocol (MCP) becomes tangible. While understanding the theory and architecture behind MCP is important, the real value comes when you apply these concepts to build, test, and deploy solutions that solve real-world problems. This chapter bridges the gap between conceptual knowledge and hands-on development, guiding you through the process of bringing MCP-based applications to life.
1313

14-
Whether you’re developing intelligent assistants, integrating AI into business workflows, or building custom tools for data processing, MCP provides a flexible foundation. Its language-agnostic design and official SDKs for popular programming languages make it accessible to a wide range of developers. By leveraging these SDKs, you can quickly prototype, iterate, and scale your solutions across different platforms and environments.
14+
Whether you are developing intelligent assistants, integrating AI into business workflows, or building custom tools for data processing, MCP provides a flexible foundation. Its language-agnostic design and official SDKs for popular programming languages make it accessible to a wide range of developers. By leveraging these SDKs, you can quickly prototype, iterate, and scale your solutions across different platforms and environments.
1515

16-
In the following sections, youll find practical examples, sample code, and deployment strategies that demonstrate how to implement MCP in C#, Java, TypeScript, JavaScript, and Python. Youll also learn how to debug and test your MCP servers, manage APIs, and deploy solutions to the cloud using Azure. These hands-on resources are designed to accelerate your learning and help you confidently build robust, production-ready MCP applications.
16+
In the following sections, you'll find practical examples, sample code, and deployment strategies that demonstrate how to implement MCP in C#, Java, TypeScript, JavaScript, and Python. You'll also learn how to debug and test your MCP servers, manage APIs, and deploy solutions to the cloud using Azure. These hands-on resources are designed to accelerate your learning and help you confidently build robust, production-ready MCP applications.
1717

1818
## Overview
1919

20-
This lesson focuses on the practical aspects of MCP implementation across multiple programming languages. Well explore how to use MCP SDKs in C#, Java, TypeScript, JavaScript, and Python to build robust applications, debug and test MCP servers, and create reusable resources, prompts, and tools.
20+
This lesson focuses on practical aspects of MCP implementation across multiple programming languages. We'll explore how to use MCP SDKs in C#, Java, TypeScript, JavaScript, and Python to build robust applications, debug and test MCP servers, and create reusable resources, prompts, and tools.
2121

2222
## Learning Objectives
2323

@@ -108,7 +108,7 @@ The Java SDK offers robust MCP implementation options with enterprise-grade feat
108108
- Reactive programming support
109109
- Comprehensive error handling
110110

111-
For a complete Java implementation sample, see [MCPSample.java](../../../04-PracticalImplementation/samples/java/MCPSample.java) in the samples directory.
111+
For a complete Java implementation sample, see [Java sample](samples/java/containerapp/README.md) in the samples directory.
112112

113113
## Sample implementation: JavaScript Implementation
114114

@@ -121,7 +121,7 @@ The JavaScript SDK provides a lightweight and flexible approach to MCP implement
121121
- Easy integration with Express and other frameworks
122122
- WebSocket support for streaming
123123

124-
For a complete JavaScript implementation sample, see [mcp_sample.js](../../../04-PracticalImplementation/samples/javascript/mcp_sample.js) in the samples directory.
124+
For a complete JavaScript implementation sample, see [JavaScript sample](samples/javascript/README.md) in the samples directory.
125125

126126
## Sample implementation: Python Implementation
127127

@@ -134,11 +134,11 @@ The Python SDK offers a Pythonic approach to MCP implementation with excellent M
134134
- Simple tool registration
135135
- Native integration with popular ML libraries
136136

137-
For a complete Python implementation sample, see [mcp_sample.py](../../../04-PracticalImplementation/samples/python/mcp_sample.py) in the samples directory.
137+
For a complete Python implementation sample, see [Python sample](samples/python/README.md) in the samples directory.
138138

139139
## API management
140140

141-
Azure API Management is a great solution for securing MCP Servers. The idea is to place an Azure API Management instance in front of your MCP Server and let it handle features you’ll likely want such as:
141+
Azure API Management is a great solution for securing MCP Servers. The idea is to place an Azure API Management instance in front of your MCP Server and let it handle features you’ll likely need such as:
142142

143143
- rate limiting
144144
- token management
@@ -148,21 +148,21 @@ Azure API Management is a great solution for securing MCP Servers. The idea is t
148148

149149
### Azure Sample
150150

151-
Heres an Azure Sample doing exactly that, i.e. [creating an MCP Server and securing it with Azure API Management](https://github.com/Azure-Samples/remote-mcp-apim-functions-python).
151+
Here's an Azure Sample doing exactly that, i.e. [creating an MCP Server and securing it with Azure API Management](https://github.com/Azure-Samples/remote-mcp-apim-functions-python).
152152

153153
See how the authorization flow works in the image below:
154154

155155
![APIM-MCP](https://github.com/Azure-Samples/remote-mcp-apim-functions-python/blob/main/mcp-client-authorization.gif?raw=true)
156156

157157
In the image above, the following happens:
158158

159-
- Authentication/Authorization is done using Microsoft Entra.
159+
- Authentication/Authorization is handled using Microsoft Entra.
160160
- Azure API Management acts as a gateway and uses policies to route and manage traffic.
161161
- Azure Monitor logs all requests for further analysis.
162162

163163
#### Authorization flow
164164

165-
Lets take a closer look at the authorization flow:
165+
Let's take a closer look at the authorization flow:
166166

167167
![Sequence Diagram](https://github.com/Azure-Samples/remote-mcp-apim-functions-python/blob/main/infra/app/apim-oauth/diagrams/images/mcp-client-auth.png?raw=true)
168168

@@ -172,7 +172,7 @@ Learn more about the [MCP Authorization specification](https://modelcontextproto
172172

173173
## Deploy Remote MCP Server to Azure
174174

175-
Lets see how to deploy the sample we mentioned earlier:
175+
Let's see how to deploy the sample we mentioned earlier:
176176

177177
1. Clone the repo
178178

@@ -183,9 +183,9 @@ Let’s see how to deploy the sample we mentioned earlier:
183183

184184
2. Register `Microsoft.App`` resource provider.
185185
* If you are using Azure CLI, run `az provider register --namespace Microsoft.App --wait`.
186-
* If you are using Azure PowerShell, run `Register-AzResourceProvider -ProviderNamespace Microsoft.App`. Then run `(Get-AzResourceProvider -ProviderNamespace Microsoft.App).RegistrationState` after some time to check if the registration is complete.
186+
* If you are using Azure PowerShell, run `Register-AzResourceProvider -ProviderNamespace Microsoft.App`. Then run `(Get-AzResourceProvider -ProviderNamespace Microsoft.App).RegistrationState` and after some time check if the registration is complete.
187187
188-
3. Run this [azd](https://aka.ms/azd) command to provision the API management service, function app (with code), and all other required Azure resources
188+
3. Run this [azd](https://aka.ms/azd) command to provision the API management service, function app (with code), and all other required Azure resources:
189189
190190
```shell
191191
azd up
@@ -201,11 +201,11 @@ Let’s see how to deploy the sample we mentioned earlier:
201201
npx @modelcontextprotocol/inspector
202202
```
203203
204-
You should see an interface similar to:
204+
You should see an interface like this:
205205
206206
![Connect to Node inspector](../../../translated_images/connect.141db0b2bd05f096fb1dd91273771fd8b2469d6507656c3b0c9df4b3c5473929.en.png)
207207
208-
2. CTRL-click to load the MCP Inspector web app from the URL displayed by the app (e.g. http://127.0.0.1:6274/#resources)
208+
2. CTRL-click to open the MCP Inspector web app from the URL displayed by the app (e.g. http://127.0.0.1:6274/#resources)
209209
3. Set the transport type to `SSE`
210210
1. Set the URL to your running API Management SSE endpoint displayed after `azd up` and **Connect**:
211211
@@ -215,7 +215,7 @@ Let’s see how to deploy the sample we mentioned earlier:
215215
216216
5. **List Tools**. Click on a tool and **Run Tool**.
217217
218-
If all steps worked, you should now be connected to the MCP server and able to call a tool.
218+
If everything worked, you should now be connected to the MCP server and able to call a tool.
219219
220220
## MCP servers for Azure
221221
@@ -269,4 +269,4 @@ Design a practical MCP workflow that addresses a real-world problem in your doma
269269
Next: [Advanced Topics](../05-AdvancedTopics/README.md)
270270
271271
**Disclaimer**:
272-
This document has been translated using AI translation service [Co-op Translator](https://github.com/Azure/co-op-translator). While we strive for accuracy, please be aware that automated translations may contain errors or inaccuracies. The original document in its native language should be considered the authoritative source. For critical information, professional human translation is recommended. We are not liable for any misunderstandings or misinterpretations arising from the use of this translation.
272+
This document has been translated using the AI translation service [Co-op Translator](https://github.com/Azure/co-op-translator). While we strive for accuracy, please be aware that automated translations may contain errors or inaccuracies. The original document in its native language should be considered the authoritative source. For critical information, professional human translation is recommended. We are not liable for any misunderstandings or misinterpretations arising from the use of this translation.

0 commit comments

Comments
 (0)