Skip to content

Commit fe45d36

Browse files
authored
Merge branch 'main' into aswinpajayan-patch-1
2 parents ff02e36 + 86ec5ce commit fe45d36

File tree

6 files changed

+19
-23
lines changed

6 files changed

+19
-23
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ You can access the course here 👉 [Coming Soon]
1919
| 0 | Welcome to the Course | Welcome, guidelines, necessary tools, and course overview. |
2020
| 1 | Introduction to Model Context Protocol | Definition of MCP, key concepts, and its role in connecting AI models with external data and tools. |
2121
| 2 | Building with MCP: Practical Development | Learn to implement MCP clients and servers using available SDKs and frameworks. |
22+
| 3 | MCP Protocol Deep Dive | Explore advanced MCP features, architecture, and real-world integration patterns|
23+
| 4 | Bonus Units & Collaborations | Special topics, partner libraries, and community-driven projects.|
2224

2325
## Prerequisites
2426

@@ -50,4 +52,4 @@ To cite this repository in publications:
5052
howpublished = {\url{https://github.com/yourusername/mcp-course}},
5153
note = {GitHub repository},
5254
}
53-
```
55+
```

units/en/unit0/introduction.mdx

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,6 @@ The course is composed of:
4343

4444
This **course is a living project, evolving with your feedback and contributions!** Feel free to open issues and PRs in GitHub, and engage in discussions in our Discord server.
4545

46-
After you have gone through the course, you can also send your feedback 👉 using this form [LINK TO FEEDBACK FORM]
47-
4846
## What's the syllabus?
4947

5048
Here is the **general syllabus for the course**. A more detailed list of topics will be released with each unit.
@@ -54,7 +52,7 @@ Here is the **general syllabus for the course**. A more detailed list of topics
5452
| 0 | Onboarding | Set you up with the tools and platforms that you will use. |
5553
| 1 | MCP Fundamentals, Architecture and Core Concepts | Explain core concepts, architecture, and components of Model Context Protocol. Show a simple use case using MCP. |
5654
| 2 | End-to-end Use case: MCP in Action | Build a simple end-to-end MCP application that you can share with the community. |
57-
| 3 | Deployed Use case: MCP in Action | Build a deployed MCP application using a the Hugging Face ecosystem and partners' services. |
55+
| 3 | Deployed Use case: MCP in Action | Build a deployed MCP application using the Hugging Face ecosystem and partners' services. |
5856
| 4 | Bonus Units | Bonus units to help you get more out of the course, working with partners' libraries and services. |
5957

6058
## What are the prerequisites?
@@ -81,7 +79,7 @@ The above courses are not prerequisites in themselves, so if you understand the
8179
You only need 2 things:
8280

8381
* _A computer_ with an internet connection.
84-
* An _Account_: to access the course resources and create projects. If you don't have an account yet, you can create one [here](https://huggingface.co/join) (it's free).
82+
* An _account_: to access the course resources and create projects. If you don't have an account yet, you can create one [here](https://huggingface.co/join) (it's free).
8583

8684
## The Certification Process
8785

@@ -104,9 +102,9 @@ Since there's a deadline, we provide you a recommended pace:
104102

105103
To get the most out of the course, we have some advice:
106104

107-
1. Join study groups in Discord: studying in groups is always easier. To do that, you need to join our discord server and verify your account.
108-
2. **Do the quizzes and assignments**: the best way to learn is through hands-on practice and self-assessment.
109-
3. **Define a schedule to stay in sync**: you can use our recommended pace schedule below or create yours.
105+
1. [Join study groups in Discord](https://discord.gg/UrrTSsSyjb): Studying in groups is always easier. To do that, you need to join our discord server and verify your account.
106+
2. **Do the quizzes and assignments**: The best way to learn is through hands-on practice and self-assessment.
107+
3. **Define a schedule to stay in sync**: You can use our recommended pace schedule below or create yours.
110108

111109
![Course advice](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit0/3.png)
112110

@@ -116,7 +114,7 @@ About the authors:
116114

117115
### Ben Burtenshaw
118116

119-
Ben is a Machine Learning Engineer at Hugging Face who focuses building LLM applications, with post training and agentic approaches.
117+
Ben is a Machine Learning Engineer at Hugging Face who focuses on building LLM applications, with post training and agentic approaches.
120118

121119
<!-- ## Acknowledgments -->
122120

@@ -128,12 +126,12 @@ Ben is a Machine Learning Engineer at Hugging Face who focuses building LLM appl
128126

129127
Contributions are **welcome** 🤗
130128

131-
* If you _found a bug 🐛 in a notebook_, please open an issue and **describe the problem**.
132-
* If you _want to improve the course_, you can open a Pull Request.
133-
* If you _want to add a full section or a new unit_, the best is to open an issue and **describe what content you want to add before starting to write it so that we can guide you**.
129+
* If you _found a bug 🐛 in a notebook_, please [open an issue](https://github.com/huggingface/mcp-course/issues/new) and **describe the problem**.
130+
* If you _want to improve the course_, you can [open a Pull Request](https://github.com/huggingface/mcp-course/pulls).
131+
* If you _want to add a full section or a new unit_, the best is to [open an issue](https://github.com/huggingface/mcp-course/issues/new) and **describe what content you want to add before starting to write it so that we can guide you**.
134132

135133
## I still have questions
136134

137135
Please ask your question in our discord server #mcp-course-questions.
138136

139-
Now that you have all the information, let's get on board
137+
Now that you have all the information, let's get on board

units/en/unit1/key-concepts.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Now that we understand the problem that MCP solves, let's dive into the core ter
3737

3838
MCP is a standard like HTTP or USB-C, and is a protocol for connecting AI applications to external tools and data sources. Therefore, using standard terminology is crucial to making the MCP work effectively.
3939

40-
When documenting our applications and communincating with the community, we should use the following terminology.
40+
When documenting our applications and communicating with the community, we should use the following terminology.
4141

4242
</Tip>
4343

@@ -68,7 +68,7 @@ Of course, your application's value is the sum of the capabilities it offers. So
6868
| **Tools** | Executable functions that the AI model can invoke to perform actions or retrieve computed data. Typically relating to the use case of the application. | A tool for a weather application might be a function that returns the weather in a specific location. |
6969
| **Resources** | Read-only data sources that provide context without significant computation. | A researcher assistant might have a resource for scientific papers. |
7070
| **Prompts** | Pre-defined templates or workflows that guide interactions between users, AI models, and the available capabilities. | A summarization prompt. |
71-
| **Sampling** | Server-initiated requests for the Client/Host to perform LLM interactions, enabling recursive actions where the LLM can review generated content and make further decisions. | A writing application reviewing its own output and decide to refine it further. |
71+
| **Sampling** | Server-initiated requests for the Client/Host to perform LLM interactions, enabling recursive actions where the LLM can review generated content and make further decisions. | A writing application reviewing its own output and decides to refine it further. |
7272

7373
In the following diagram, we can see the collective capabilities applied to a use case for a code agent.
7474

@@ -85,4 +85,4 @@ This application might use their MCP entities in the following way:
8585

8686
### Conclusion
8787

88-
Understanding these key concepts and terminology provides the foundation for working with MCP effectively. In the following sections, we'll build on this foundation to explore the architectural components, communication protocol, and capabilities that make up the Model Context Protocol.
88+
Understanding these key concepts and terminology provides the foundation for working with MCP effectively. In the following sections, we'll build on this foundation to explore the architectural components, communication protocol, and capabilities that make up the Model Context Protocol.

units/en/unit1/mcp-clients.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ Weather API: Get the weather in a specific location
248248

249249
</details>
250250

251-
We can also connect to an MCP server that is hosted on a remote machine. In this case, we need to pass the `SSEServerParameters` to the `ToolCollection.from_mcp` method.
251+
We can also connect to an MCP server that is hosted on a remote machine. In this case, we need to pass the `SSEServerParameters` to the `MCPClient` class.
252252

253253
```python
254254
from smolagents.mcp_client import MCPClient

units/en/unit2/gradio-client.mdx

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ We'll connect to the MCP server we created in the previous section and use it to
1515
First, we need to install the `smolagents`, gradio and mcp-client libraries, if we haven't already:
1616

1717
```bash
18-
pip install smolagents[mcp] gradio[mcp] mcp
18+
pip install "smolagents[mcp]" "gradio[mcp]" mcp
1919
```
2020

2121
Now, we can import the necessary libraries and create a simple Gradio interface that uses the MCP Client to connect to the MCP Server.
@@ -94,17 +94,12 @@ try:
9494
model = InferenceClientModel()
9595
agent = CodeAgent(tools=[*tools], model=model)
9696

97-
def call_agent(message, history):
98-
return str(agent.run(message))
99-
100-
10197
demo = gr.ChatInterface(
10298
fn=lambda message, history: str(agent.run(message)),
10399
type="messages",
104100
examples=["Prime factorization of 68"],
105101
title="Agent with MCP Tools",
106102
description="This is a simple agent that uses MCP tools to answer questions.",
107-
messages=[],
108103
)
109104

110105
demo.launch()

units/en/unit2/gradio-server.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@ textblob
167167

168168
3. Push your code to the Space:
169169
```bash
170+
cp server.py app.py
170171
git init
171172
git add app.py requirements.txt
172173
git commit -m "Initial commit"

0 commit comments

Comments
 (0)