# Gemini Search MCP
[](https://badge.fury.io/py/gemini-search-mcp)
[](https://badge.fury.io/js/gemini-search-mcp)
[](https://github.com/MIMICLab/GeminiSearchMCP/actions/workflows/ci.yml)
[](https://opensource.org/licenses/MIT)
Gemini Search MCP packages a [Model Context Protocol](https://www.modelcontextprotocol.io/) server that exposes five tools:
- **web_search** – Uses Gemini with Google Search grounding to answer general questions.
- **document_question_answering** – Converts local documents to captioned markdown and asks Gemini to answer questions about their contents.
- **get_document_content** – Converts a document to markdown and returns the full content for reading.
- **get_document_chunk** – Retrieves specific chunks of large documents for easier processing.
- **get_next_chunk** – Automatically continues reading from where you left off (stateful).
## Installation
### Python (pip)
```bash
pip install gemini-search-mcp
```
### Node.js (npm)
```bash
npm install -g gemini-search-mcp
```
## Usage
Set your Google API key (must have Gemini access):
```bash
export GOOGLE_API_KEY="your-key"
```
Run the MCP server (defaults to stdio transport):
```bash
gemini-search-mcp run
# or simply
# gemini-search-mcp
```
Configure Codex automatically (writes to `~/.codex/config.toml` by default):
```bash
gemini-search-mcp configure --api-key "YOUR_KEY"
```
Configure Copilot CLI (writes to `~/.copilot/config.json`):
```bash
gemini-search-mcp configure --cli-type copilot --api-key "YOUR_KEY"
```
Configure both Codex and Copilot CLI at once:
```bash
gemini-search-mcp configure --cli-type both --api-key "YOUR_KEY"
```
For npm/npx installation with custom command:
```bash
gemini-search-mcp configure --command npx --command-args -y gemini-search-mcp --api-key "YOUR_KEY"
```
Clear cached conversion artifacts:
```bash
gemini-search-mcp clear-cache
# 선택 옵션: --cache-dir /custom/path --remove-root
```
## Development
Install in editable mode with testing dependencies:
```bash
pip install -e .
```
Ensure LibreOffice is installed and on `PATH` if you plan to convert non-PDF documents.
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
## Publishing
For maintainers: See [PUBLISHING.md](PUBLISHING.md) for instructions on how to publish new versions to PyPI and npm.
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for a list of changes in each version.
## License
MIT – all rights reserved.
Raw data
{
"_id": null,
"home_page": null,
"name": "gemini-search-mcp",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "mcp, gemini, search, google, ai, model-context-protocol",
"author": "Gemini Search Team",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/75/4a/f5a4143cf2551cd6574b5bdd040a68a5a40a9ab4b22d2b8d5a1090f3ecd9/gemini_search_mcp-0.3.1.tar.gz",
"platform": null,
"description": "# Gemini Search MCP\n\n[](https://badge.fury.io/py/gemini-search-mcp)\n[](https://badge.fury.io/js/gemini-search-mcp)\n[](https://github.com/MIMICLab/GeminiSearchMCP/actions/workflows/ci.yml)\n[](https://opensource.org/licenses/MIT)\n\nGemini Search MCP packages a [Model Context Protocol](https://www.modelcontextprotocol.io/) server that exposes five tools:\n\n- **web_search** \u2013 Uses Gemini with Google Search grounding to answer general questions.\n- **document_question_answering** \u2013 Converts local documents to captioned markdown and asks Gemini to answer questions about their contents.\n- **get_document_content** \u2013 Converts a document to markdown and returns the full content for reading.\n- **get_document_chunk** \u2013 Retrieves specific chunks of large documents for easier processing.\n- **get_next_chunk** \u2013 Automatically continues reading from where you left off (stateful).\n\n## Installation\n\n### Python (pip)\n\n```bash\npip install gemini-search-mcp\n```\n\n### Node.js (npm)\n\n```bash\nnpm install -g gemini-search-mcp\n```\n\n## Usage\n\nSet your Google API key (must have Gemini access):\n\n```bash\nexport GOOGLE_API_KEY=\"your-key\"\n```\n\nRun the MCP server (defaults to stdio transport):\n\n```bash\ngemini-search-mcp run\n# or simply\n# gemini-search-mcp\n```\n\nConfigure Codex automatically (writes to `~/.codex/config.toml` by default):\n\n```bash\ngemini-search-mcp configure --api-key \"YOUR_KEY\"\n```\n\nConfigure Copilot CLI (writes to `~/.copilot/config.json`):\n\n```bash\ngemini-search-mcp configure --cli-type copilot --api-key \"YOUR_KEY\"\n```\n\nConfigure both Codex and Copilot CLI at once:\n\n```bash\ngemini-search-mcp configure --cli-type both --api-key \"YOUR_KEY\"\n```\n\nFor npm/npx installation with custom command:\n\n```bash\ngemini-search-mcp configure --command npx --command-args -y gemini-search-mcp --api-key \"YOUR_KEY\"\n```\n\nClear cached conversion artifacts:\n\n```bash\ngemini-search-mcp clear-cache\n# \uc120\ud0dd \uc635\uc158: --cache-dir /custom/path --remove-root\n```\n\n## Development\n\nInstall in editable mode with testing dependencies:\n\n```bash\npip install -e .\n```\n\nEnsure LibreOffice is installed and on `PATH` if you plan to convert non-PDF documents.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## Publishing\n\nFor maintainers: See [PUBLISHING.md](PUBLISHING.md) for instructions on how to publish new versions to PyPI and npm.\n\n## Changelog\n\nSee [CHANGELOG.md](CHANGELOG.md) for a list of changes in each version.\n\n## License\n\nMIT \u2013 all rights reserved.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "MCP server that exposes Gemini web search and document question answering tools.",
"version": "0.3.1",
"project_urls": {
"Homepage": "https://github.com/MIMICLab/GeminiSearchMCP",
"Issues": "https://github.com/MIMICLab/GeminiSearchMCP/issues",
"Repository": "https://github.com/MIMICLab/GeminiSearchMCP"
},
"split_keywords": [
"mcp",
" gemini",
" search",
" google",
" ai",
" model-context-protocol"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7f704b7987f465f00d940020b4fadb6878af35ad19c5fdaf29c3b355834fab54",
"md5": "148edbc414955b027d41b879c8e9dd71",
"sha256": "86003ee6a516a0e83bc0460e2b6444d561c59f8cd04e2c5969e2051cdc43be01"
},
"downloads": -1,
"filename": "gemini_search_mcp-0.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "148edbc414955b027d41b879c8e9dd71",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 19612,
"upload_time": "2025-10-12T06:50:37",
"upload_time_iso_8601": "2025-10-12T06:50:37.505073Z",
"url": "https://files.pythonhosted.org/packages/7f/70/4b7987f465f00d940020b4fadb6878af35ad19c5fdaf29c3b355834fab54/gemini_search_mcp-0.3.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "754af5a4143cf2551cd6574b5bdd040a68a5a40a9ab4b22d2b8d5a1090f3ecd9",
"md5": "269a29110da8fc3cc17f4f99de3d8269",
"sha256": "b30450c5272aec8e726fbd4292e689491fea87303c1bc86d62c6f48246054a87"
},
"downloads": -1,
"filename": "gemini_search_mcp-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "269a29110da8fc3cc17f4f99de3d8269",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 18103,
"upload_time": "2025-10-12T06:50:38",
"upload_time_iso_8601": "2025-10-12T06:50:38.733871Z",
"url": "https://files.pythonhosted.org/packages/75/4a/f5a4143cf2551cd6574b5bdd040a68a5a40a9ab4b22d2b8d5a1090f3ecd9/gemini_search_mcp-0.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-12 06:50:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MIMICLab",
"github_project": "GeminiSearchMCP",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "mcp",
"specs": [
[
">=",
"0.4.0"
]
]
},
{
"name": "google-genai",
"specs": [
[
">=",
"0.3.0"
]
]
},
{
"name": "opendataloader-pdf",
"specs": [
[
">=",
"0.5.0"
]
]
},
{
"name": "pydantic",
"specs": [
[
">=",
"2.6.0"
]
]
},
{
"name": "markdown",
"specs": [
[
">=",
"3.5.0"
]
]
},
{
"name": "pillow",
"specs": [
[
">=",
"10.0.0"
]
]
},
{
"name": "tomli",
"specs": [
[
">=",
"2.0.1"
]
]
},
{
"name": "tomli-w",
"specs": [
[
">=",
"1.0.0"
]
]
}
],
"lcname": "gemini-search-mcp"
}