# Bing Search

> Use when the user wants Bing search results through Frevana, including localized Bing markets, coordinates, safe search, filters, pagination, and device-specific results.

- Skill: `finpeakinc/bing-search` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add finpeakinc/bing-search`
- Raw SKILL.md: https://api.skillmd.com/api/skills/finpeakinc/bing-search/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: finpeakinc (https://skillmd.com/u/finpeakinc)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/finpeakinc/bing-search

---


# Bing Search

Search Bing results through Frevana.

## Purpose

This skill calls Frevana's `/service/bing-search` endpoint and returns the SerpAPI response unchanged.

Required input: `q`.

Supported request fields:

- `q` (required)
- `location`
- `lat`
- `lon`
- `mkt`
- `cc`
- `setLang`
- `first`
- `count`
- `safeSearch`
- `filters`
- `device`
- `no_cache`
- `async`
- `zero_trace`

The script validates that the response is JSON and prints it to stdout. Do not rewrite or reshape returned data unless the user explicitly asks for a transformation.

## What This Skill Needs

- query
- `FREVANA_TOKEN` in the environment variables, or `--token` for the current run
- `curl`, `bash`, and `python3`

The API base URL defaults to `https://ai-factory.frevana.com`. Set `FREVANA_API_BASE_URL` to point at another host.

## Commands

### Search Bing

```bash
bash <skill-path>/scripts/search_bing.sh \
  --q "best crm software" \
  --mkt "en-US"
```

### Save JSON to a file

```bash
bash <skill-path>/scripts/search_bing.sh \
  --q "Q" \
  --output "./out/bing-search.json"
```

## Fixed Request Shape

The script sends this payload shape, omitting optional fields that were not provided:

```json
{
  "q": "Q",
  "location": "LOCATION",
  "lat": 1.23,
  "lon": 1.23,
  "mkt": "MKT",
  "cc": "CC",
  "setLang": "SETLANG",
  "first": 1
}
```

Do not pass unsupported fields. Do not pass SerpAPI `engine` or `api_key`; Frevana sets those server-side. Use `--output` for local file saving.

## Output

- Success: validated JSON on stdout
- With `--output`: the same JSON is also written to the requested file
- Failure: response body or parsing error on stderr, with a non-zero exit code

## Example Prompts

- "Search Bing for query."
- "Run Bing Search and save the raw JSON."

