About MCP with Gemini Tutorial
This tutorial repository shows how to build an MCP server for Google's Gemini 2.0 model. It targets developers who want Gemini to call external tools, and its example server provides search through Brave Search.
Key features
- 01MCP server implemented with Bun and TypeScript
- 02Web search tool backed by Brave Search
- 03Local search tool for businesses and locations
- 04Example Gemini tool-function client
Use cases
- 01Learning how to build an MCP server for Gemini
- 02Adding custom tools following the example structure
- 03Calling web and local search from Gemini
MCP support
The project implements an MCP server that exposes web search and local search tools, with example clients showing how to call them.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP with Gemini Tutorial
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 this blog post.
What is Model Context Protocol (MCP)?
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
Project Overview
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
Getting Started
Prerequisites
- Bun (for fast TypeScript execution)
- Brave Search API key
- Google API key for Gemini access
Installation
# Clone the repository
git clone https://github.com/GuiBibeau/mcp-gemini-tutorial.git
cd mcp-tutorial
# Install dependencies
bun install
Environment Setup
Create a .env file with your API keys:
BRAVE_API_KEY="your_brave_api_key"
GOOGLE_API_KEY="your_google_api_key"
Usage
Running the Basic Client
bun examples/basic-client.ts
Running the Gemini Integration
bun examples/gemini-tool-function.ts
Project Structure
src/- Core implementation of the MCP server and toolsexamples/- Example clients demonstrating how to use the MCP servertests/- Test files for the project
Tools Implemented
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
Extending the Project
You can add your own tools by:
- Defining a new tool with a schema
- Implementing the functionality
- Registering it with the MCP server
Learn More
License
MIT
This project was created using bun init in bun v1.1.37. Bun is a fast all-in-one JavaScript runtime.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.