MCP server for AI-powered research using Gemini: quick grounded search + Deep Research Agent
Project description
Gemini Research MCP Server
MCP server for AI-powered research using Gemini. Fast grounded search + comprehensive Deep Research + session management.
Architecture
Tools
| Tool | Description | Latency |
|---|---|---|
research_web |
Fast web search with citations | 5-30 sec |
research_deep |
Multi-step autonomous research | 3-20 min |
resume_research |
Resume interrupted/in-progress sessions | instant |
research_followup |
Continue conversation after research | 5-30 sec |
list_research_sessions |
List saved research sessions | instant |
export_research_session |
Export to Markdown, JSON, or DOCX | instant |
fetch_webpage |
Extract article content (SSRF-protected) | 0.5-2 sec |
Power User Workflow
Key insight: Gemini Deep Research runs asynchronously on Google's servers. Even if VS Code disconnects, your research continues. The
resume_researchtool retrieves completed work.
Features
- Auto-Clarification:
research_deepasks clarifying questions for vague queries via MCP Elicitation - MCP Tasks: Real-time progress with streaming updates
- Session Persistence: Research sessions are automatically saved and can be resumed later
- Export Formats: Export to Markdown, JSON, or professional DOCX with Table of Contents
- File Search: Search your own data alongside web using
file_search_store_names - Format Instructions: Control report structure (sections, tables, tone)
Installation
PyPI (recommended)
pip install gemini-research-mcp
# or
uv add gemini-research-mcp
Claude Desktop (MCPB Bundle)
Download the .mcpb bundle from GitHub Releases and open it in Claude Desktop for single-click installation.
The bundle uses UV runtime - dependencies are installed automatically, no Python required.
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
GEMINI_API_KEY |
Yes | — | Google AI Studio API key |
GEMINI_MODEL |
No | gemini-3-flash-preview |
Model for research_web |
GEMINI_SUMMARY_MODEL |
No | gemini-3-flash-preview |
Model for session summaries (fast) |
DEEP_RESEARCH_AGENT |
No | deep-research-pro-preview-12-2025 |
Agent for research_deep |
cp .env.example .env
# Edit .env with your API key
Usage
VS Code MCP
Add to .vscode/mcp.json:
{
"servers": {
"gemini-research": {
"command": "uvx",
"args": ["gemini-research-mcp"],
"env": {
"GEMINI_API_KEY": "your-api-key"
}
}
}
}
Or run from source:
{
"servers": {
"gemini-research": {
"command": "uv",
"args": ["run", "--directory", "path/to/gemini-research-mcp", "gemini-research-mcp"],
"envFile": "${workspaceFolder}/path/to/gemini-research-mcp/.env"
}
}
}
Command Line
uv run gemini-research-mcp
# or
uvx gemini-research-mcp
DOCX Export
Export research sessions to professional Word documents with:
- Cover page with title, date, and research metadata
- Clickable Table of Contents with navigation to sections
- Professional typography: Calibri fonts, 1-inch margins, 1.5x line spacing
- Executive summary with elegant formatting
- Full research report with proper heading hierarchy
- Sources section with full clickable URLs
- Metadata table with session details
VS Code Setup
To enable DOCX export, install with the [docx] extra:
{
"servers": {
"gemini-research": {
"command": "uvx",
"args": ["--from", "gemini-research-mcp[docx]", "gemini-research-mcp"],
"env": {
"GEMINI_API_KEY": "your-api-key"
}
}
}
}
Downloading Files
After running export_research_session with format: "docx", the tool returns a resource URI:
research://exports/{export_id}
In VS Code Copilot Chat, you can:
- Click "Save" on the resource attachment to download the
.docxfile - Drag-and-drop from the chat into your workspace
Installation (pip/uv)
# Install with DOCX support
pip install 'gemini-research-mcp[docx]'
# or
uv add 'gemini-research-mcp[docx]'
Features
| Feature | Description |
|---|---|
| Cover Page | Title, date, duration, tokens, AI agent |
| Clickable TOC | Internal hyperlinks navigate to sections |
| Syntax Highlighting | Pygments-powered code blocks with GitHub colors |
| Professional Styling | Calibri fonts, proper heading hierarchy (H1-H4) |
| Page Margins | Standard 1-inch (2.54cm) margins |
| Heading Spacing | keep_with_next prevents orphan headings |
| Sources | Full URLs as clickable hyperlinks |
| Pure Python | No external binaries (Pandoc not required) |
Resources
MCP Resources provide read-only data that clients can access:
| Resource | Description |
|---|---|
research://models |
Available models and their capabilities |
research://exports |
List cached exports ready for download |
research://exports/{id} |
Download an exported file (Markdown, JSON, or DOCX) |
File Downloads
The export_research_session tool creates exports and returns a resource URI. Clients (like VS Code) can then fetch the resource to download the file with proper MIME type handling.
Development
uv sync --extra dev
uv run pytest
uv run mypy src/
uv run ruff check src/
Tests
uv run pytest # Unit tests
uv run pytest -m e2e # E2E tests (requires GEMINI_API_KEY)
uv run pytest --cov=src/gemini_research_mcp # With coverage
Pricing
| Tool | Typical Cost |
|---|---|
research_web |
~$0.01-0.05 per query |
research_deep |
~$2-5 per task |
Deep Research uses ~80-160 searches and ~250k-900k tokens per task.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gemini_research_mcp-0.10.3.tar.gz.
File metadata
- Download URL: gemini_research_mcp-0.10.3.tar.gz
- Upload date:
- Size: 25.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9d194ed3d3eea16a7d7b4d02d27436cb92a5dca5db5438465b5f50bb2e1e0d2
|
|
| MD5 |
2cc0aea07d6586e1d2015fa952dff241
|
|
| BLAKE2b-256 |
5dc037b92b483bbd041be5b94eba74a71407719c7b3f6ed1042106daa29e0dc8
|
Provenance
The following attestation bundles were made for gemini_research_mcp-0.10.3.tar.gz:
Publisher:
publish.yml on machinemates-ai/gemini-research-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gemini_research_mcp-0.10.3.tar.gz -
Subject digest:
d9d194ed3d3eea16a7d7b4d02d27436cb92a5dca5db5438465b5f50bb2e1e0d2 - Sigstore transparency entry: 944464040
- Sigstore integration time:
-
Permalink:
machinemates-ai/gemini-research-mcp@2af2593f0fe85b4e59e426e7e7682609b2829be5 -
Branch / Tag:
refs/tags/v0.10.3 - Owner: https://github.com/machinemates-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2af2593f0fe85b4e59e426e7e7682609b2829be5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file gemini_research_mcp-0.10.3-py3-none-any.whl.
File metadata
- Download URL: gemini_research_mcp-0.10.3-py3-none-any.whl
- Upload date:
- Size: 75.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70b0d86ecbd4ebbad438e833c85fde44f231ef16b9eb54a94b07a3bf15ed6e05
|
|
| MD5 |
b50e0f7ce5a52f781c6dc9278c0a0e56
|
|
| BLAKE2b-256 |
6ec04730ee3996a2fdac3666f0fb8add977744446e4b8eb9b215752b8cebce81
|
Provenance
The following attestation bundles were made for gemini_research_mcp-0.10.3-py3-none-any.whl:
Publisher:
publish.yml on machinemates-ai/gemini-research-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gemini_research_mcp-0.10.3-py3-none-any.whl -
Subject digest:
70b0d86ecbd4ebbad438e833c85fde44f231ef16b9eb54a94b07a3bf15ed6e05 - Sigstore transparency entry: 944464088
- Sigstore integration time:
-
Permalink:
machinemates-ai/gemini-research-mcp@2af2593f0fe85b4e59e426e7e7682609b2829be5 -
Branch / Tag:
refs/tags/v0.10.3 - Owner: https://github.com/machinemates-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2af2593f0fe85b4e59e426e7e7682609b2829be5 -
Trigger Event:
release
-
Statement type: