This workshop demonstrates the evolution of providing context to AI models, from basic chat to function calling, and how we arrived at the need for the Model Context Protocol (MCP). This is a foundational learning experience that prepares you for the next step: diving deep into MCP itself.
Understand the evolution of AI context provision and why MCP emerged:
- Traditional AI: Limited to training data
- Function Calling: Manual, predefined functions
- Modern Tools: Better orchestration, multiple calls
- The MCP Solution: Dynamic, discoverable, standardized context
After completing this workshop, you'll be ready to explore the Model Context Protocol in depth. Continue your journey with:
π Microsoft MCP for Beginners
This comprehensive guide will teach you how to:
- Build your own MCP servers
- Integrate MCP with various applications
- Implement real-world MCP solutions
- Understand MCP's architecture and protocols
ai-models-and-context-evolution/
βββ http-examples/ # REST Client examples showing progression
β βββ 01_static_context_via_system_prompts.http
β βββ 02_dynamic_context_multi_turn_conversation.http
β βββ 03_legacy_function_calling_deprecated.http
β βββ 04_modern_tools_current_best_practice.http
β βββ 05_parallel_multiple_tool_execution.http
β βββ 06_complete_tool_calling_workflow.http
β βββ 07_assistants_api_with_document_search.http
β βββ 08_complete_rag_workflow_with_embeddings.http
βββ notebooks/ # Jupyter notebooks for deep exploration
β βββ 01_context_methods_and_prompting.ipynb
β βββ 02_function_calling_legacy_format.ipynb
β βββ 03_function_calling_modern_tools.ipynb
β βββ 04_parallel_multiple_tool_execution.ipynb
β βββ 05_assistants_api_with_vector_stores.ipynb
β βββ 06_complete_rag_pipeline_deep_dive.ipynb
β βββ sample_knowledge_base_document.txt
βββ assets/
β βββ conference_session_data_sample.json
βββ .env # Environment variables (create this!)
βββ requirements.txt
βββ README.md
Create the .vscode/settings.json
file for REST Client extension:
{
"rest-client.environmentVariables": {
"$shared": {
"endpoint": "{{$dotenv AZURE_OPENAI_ENDPOINT}}",
"apiKey": "{{$dotenv AZURE_OPENAI_API_KEY}}",
"gpt4oDeployment": "{{$dotenv AZURE_OPENAI_GPT4O_DEPLOYMENT_NAME}}",
"apiVersion": "{{$dotenv AZURE_OPENAI_GPT4O_API_VERSION}}",
"embeddingsDeployment": "{{$dotenv AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT_NAME}}",
"embeddingsApiVersion": "{{$dotenv AZURE_OPENAI_EMBEDDINGS_API_VERSION}}"
}
}
}
Create a .env
file with your Azure OpenAI credentials:
# Azure OpenAI Configuration
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
AZURE_OPENAI_API_KEY=your-api-key-here
# GPT-4o Deployment
AZURE_OPENAI_GPT4O_DEPLOYMENT_NAME=gpt-4o
AZURE_OPENAI_GPT4O_API_VERSION=2025-01-01-preview
# Embeddings Deployment
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT_NAME=text-embedding-3-large
AZURE_OPENAI_EMBEDDINGS_API_VERSION=2023-05-15
pip install -r requirements.txt
- Open any
.http
file inhttp-examples
- Click Send Request in VS Code
- REST Client will auto-use
.env
variables
- Start with
notebooks/01_context_methods_and_prompting.ipynb
- Follow the sequence to build understanding step-by-step
01_static_context_via_system_prompts.http
02_dynamic_context_multi_turn_conversation.http
notebooks/01_context_methods_and_prompting.ipynb
03_legacy_function_calling_deprecated.http
04_modern_tools_current_best_practice.http
05_parallel_multiple_tool_execution.http
06_complete_tool_calling_workflow.http
notebooks/02_function_calling_legacy_format.ipynb
notebooks/03_function_calling_modern_tools.ipynb
notebooks/04_parallel_multiple_tool_execution.ipynb
07_assistants_api_with_document_search.http
notebooks/05_assistants_api_with_vector_stores.ipynb
08_complete_rag_workflow_with_embeddings.http
notebooks/06_complete_rag_pipeline_deep_dive.ipynb
Once you've completed this workshop, you'll understand the challenges and limitations of traditional approaches, making you ready to appreciate the revolutionary changes that MCP brings.
π― Next Step: Head to Microsoft MCP for Beginners to learn how MCP solves these challenges with:
- Dynamic tool discovery
- Standardized protocols
- Cross-application context sharing
- Seamless integration across tools and platforms
By the end of this workshop, you'll understand:
- β The Context Problem and its evolution
- β Static & Dynamic Context techniques
- β Function Calling Evolution and limitations
- β Performance Implications of different approaches
- β Best Practices for Tools and RAG
- β Document Intelligence & Vector Search
- β Why MCP emerged as the solution
π Ready for MCP? After completing this workshop, you'll have the foundation to understand why MCP is revolutionary and how it solves the challenges you've experienced here.
- Azure OpenAI with GPT-4o +
text-embedding-3-large
- VS Code with REST Client extension
- Python 3.8+
.env
file with required variablesrequirements.txt
installed
01_static_context_via_system_prompts.http
: Static prompt limitations02_dynamic_context_multi_turn_conversation.http
: Dynamic progression04_modern_tools_current_best_practice.http
: Function calling capabilities07_assistants_api_with_document_search.http
: Assistants + Vector Store08_complete_rag_workflow_with_embeddings.http
: Full RAG workflow
It's not just about calling toolsβit's about understanding why context matters, how approaches evolved, and what challenges led to the creation of MCP.
Q: What are embeddings?
A: Vector representations of text capturing semantic meaning.
Q: What model should I use?
A: text-embedding-3-large
for best results; use -small
or ada
for cost savings.
Q: When to use RAG vs Assistants?
A: RAG = control; Assistants = simplicity + memory.
Q: How to handle large docs?
A: Chunking, metadata, hierarchical summaries.
Q: Azure AI Search vs custom DB?
A: Azure for production; custom if specialized needs.
Q: Reduce embedding cost?
A: Cache, batch, chunk smartly, use smaller models.
Q: Debug poor RAG?
A: Check embeddings, chunking, context window, prompts.
Q: How to secure vector data?
A: RBAC, encryption, managed identities.
Q: How to scale RAG?
A: Caching, horizontal scaling, async updates.
Use Case | Best Approach | Why |
---|---|---|
Real-time data | Function Calling | Live API access |
Document Q&A | RAG or Assistants | Semantic search |
Conversational | Assistants API | Built-in memory |
Custom systems | Function Calling | Full control |
Prototypes | Assistants API | Quick setup |
Ready to see how MCP revolutionizes everything you've learned here?
π Microsoft MCP for Beginners
This next step will show you how MCP addresses every limitation and challenge you've experienced in this workshop, providing a unified, standardized approach to AI context and tool integration.
Ready to understand how we went from limited AI to unlimited possibilities? Let's dive in! π