This repository contains the complete code for the tutorial on building Model Context Protocol (MCP) servers with Google's Gemini 2.0 model, as described in
MCP is an open standard developed by Anthropic that enables AI models to seamlessly access external tools and resources. It creates a standardized way for AI models to interact with tools, access the internet, run code, and more, without needing custom integrations for each tool or model.
Key benefits include:
- Interoperability: Any MCP-compatible model can use any MCP-compatible tool
- Modularity: Add or update tools without changing model integrations
- Standardization: Consistent interface reduces integration complexity
- Separation of Concerns: Clean division between model capabilities and tool functionality
This tutorial demonstrates how to:
- Build a complete MCP server with Brave Search integration
- Connect it to Google's Gemini 2.0 model
- Create a flexible architecture for AI-powered applications
Bun (for fast TypeScript execution) - Brave Search API key
- Google API key for Gemini access
# Clone the repository
git clone https://github.com/GuiBibeau/mcp-gemini-tutorial.git
cd mcp-tutorial
# Install dependencies
bun install
Create a .env
file with your API keys:
BRAVE_API_KEY="your_brave_api_key"
GOOGLE_API_KEY="your_google_api_key"
bun examples/basic-client.ts
bun examples/gemini-tool-function.ts
src/
- Core implementation of the MCP server and toolsexamples/
- Example clients demonstrating how to use the MCP servertests/
- Test files for the project
This MCP server exposes two main tools:
- Web Search: For general internet searches via Brave Search
- Local Search: For finding businesses and locations via Brave Search
You can add your own tools by:
- Defining a new tool with a schema
- Implementing the functionality
- Registering it with the MCP server
- Official MCP Documentation
Google Gemini API Documentation Brave Search API Documentation
MIT
This project was created using bun init
in bun v1.1.37.