com um clique
ollama-web
// Use Ollama Cloud web APIs for single-query web search and single-page web fetch. Requires OLLAMA_API_KEY and uses shell HTTP requests, preferably curl.
// Use Ollama Cloud web APIs for single-query web search and single-page web fetch. Requires OLLAMA_API_KEY and uses shell HTTP requests, preferably curl.
Use this tool when you need up-to-date web search results from Exa MCP. It calls `web_search_exa` over `text/event-stream`, supports optional `exaApiKey`, and returns extracted text content from search results.
Use this when you need the raw HTTP response for non-HTML content or APIs. Examples: JSON, XML, RSS/Atom, CSV, plain text, files, or downloads. If the target is a human-readable web page (HTML) that should be converted to markdown, use fetch-webpage instead.
Fetch webpages into Markdown by URL, with a selectable --provider parameter for pure.md, defuddle.md, markdown.new, or r.jina.ai.
Use this tool when you need up-to-date information from the internet. It grounds the model with real-time Google Search results across languages, improving factual accuracy and enabling responses with verifiable citations beyond the model's knowledge cutoff.
Generate images using the Pollinations.ai API. Supports models such as flux, zimage, imagen-4, klein, klein-large, gptimage (free), and seedream, kontext, nanobanana, gptimage-large (paid). Use when the user asks to generate, create, or draw images from text prompts.
| name | ollama-web |
| description | Use Ollama Cloud web APIs for single-query web search and single-page web fetch. Requires OLLAMA_API_KEY and uses shell HTTP requests, preferably curl. |
| metadata | {"openclaw":{"requires":{"env":["OLLAMA_API_KEY"]},"primaryEnv":"OLLAMA_API_KEY","emoji":"🦙"}} |
Call Ollama Cloud's web_search and web_fetch APIs from the shell. This skill intentionally does not use a scripts/ directory.
OLLAMA_API_KEY must be set before sending requests.
export OLLAMA_API_KEY=your_api_key_here
test -n "$OLLAMA_API_KEY" || { echo "OLLAMA_API_KEY is required" >&2; exit 1; }
curlcurl is unavailable, use any HTTP client already present in the environment and preserve the same method, URL, headers, and JSON bodyCheck for curl like this:
command -v curl >/dev/null 2>&1 || echo "curl not found"
Performs a web search for a single query and returns relevant results.
POSThttps://ollama.com/api/web_searchAuthorization: Bearer $OLLAMA_API_KEYContent-Type: application/jsonquery (string, required)max_results (integer, optional, default 5, max 10)curl examplecurl --request POST \
--url https://ollama.com/api/web_search \
--header "Authorization: Bearer $OLLAMA_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"query": "what is ollama?",
"max_results": 5
}'
{
"results": [
{
"title": "Ollama",
"url": "https://ollama.com/",
"content": "Cloud models are now available..."
}
]
}
query is a single search string, not a listmax_results unless a non-default value is neededmax_results greater than 10Fetches a single web page by URL and returns its content.
POSThttps://ollama.com/api/web_fetchAuthorization: Bearer $OLLAMA_API_KEYContent-Type: application/jsonurl (string, required)curl examplecurl --request POST \
--url https://ollama.com/api/web_fetch \
--header "Authorization: Bearer $OLLAMA_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://ollama.com"
}'
{
"title": "Ollama",
"content": "[Cloud models](https://ollama.com/blog/cloud-models) are now available in Ollama...",
"links": [
"http://ollama.com/",
"http://ollama.com/models",
"https://github.com/ollama/ollama"
]
}
https://ollama.comtitle, content, and links; do not summarize as if the full page was fetched unless the API returned itcurl is missingIf curl is not available, keep the request contract identical and use another installed client. The contract is:
POSThttps://ollama.com/api/web_search or https://ollama.com/api/web_fetchAuthorization: Bearer $OLLAMA_API_KEYContent-Type: application/json{"query":"...","max_results":5}{"url":"https://example.com"}If no client can send the request, surface the request contract above and stop. That is better than guessing or claiming the API was called when it was not.