ollama-search-fetch-mcp
v1.0.1
Published
MCP stdio server exposing Ollama web_search and web_fetch as tools
Maintainers
Readme
ollama-search-fetch-mcp
An MCP stdio server that exposes Ollama's web_search and web_fetch APIs as tools for any MCP-compatible client (Claude Desktop, Cursor, VS Code Copilot, etc.).
Prerequisites
- Node.js >= 18
- An Ollama API key — get one at ollama.com (required for the hosted search/fetch endpoints)
Installation
npx (no install required)
The easiest way to use this server is via npx:
{
"mcpServers": {
"ollama-search-fetch": {
"command": "npx",
"args": ["-y", "ollama-search-fetch-mcp"],
"env": {
"OLLAMA_API_KEY": "<your-api-key>"
}
}
}
}Global install
npm install -g ollama-search-fetch-mcpThen reference the installed binary in your MCP client config:
{
"mcpServers": {
"ollama-search-fetch": {
"command": "ollama-search-fetch-mcp",
"env": {
"OLLAMA_API_KEY": "<your-api-key>"
}
}
}
}From source
git clone https://github.com/rohithmahesh3/ollama-search-fetch-mcp.git
cd ollama-search-fetch-mcp
npm install
npm run buildThen point your MCP client at the built entry point:
{
"mcpServers": {
"ollama-search-fetch": {
"command": "node",
"args": ["/path/to/ollama-search-fetch-mcp/dist/index.js"],
"env": {
"OLLAMA_API_KEY": "<your-api-key>"
}
}
}
}Configuration
MCP Client Setup
Add the server to your MCP client configuration file. Common locations:
| Client | Config file |
|--------|-------------|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows) |
| Cursor | .cursor/mcp.json in your project root |
| VS Code Copilot | .vscode/mcp.json in your project root |
Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| OLLAMA_API_KEY | Yes | Your Ollama API key (used as Authorization: Bearer <key>) |
Tools
web_search
Perform a web search using Ollama's hosted search API.
Parameters:
| Name | Type | Required | Default | Description |
|------|------|----------|---------|-------------|
| query | string | Yes | — | The search query to run |
| max_results | integer | No | 3 | Maximum number of results to return (1–10) |
Example response:
{
"results": [
{
"content": "Relevant search result content..."
}
]
}web_fetch
Fetch the content of a web page for the provided URL.
Parameters:
| Name | Type | Required | Description |
|------|------|----------|-------------|
| url | string | Yes | The absolute URL to fetch |
Example response:
{
"title": "Example Page",
"url": "https://example.com",
"content": "Page content in markdown format...",
"links": ["https://example.com/about", "https://example.com/contact"]
}Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode
npm run dev
# Start the server
npm startLicense
MIT
