Agent skill

Brave Local Place Descriptions

by brave in brave/brave-search-skills

Fetches AI-written text descriptions for local places from the Brave Search API, using place IDs returned by an earlier local search.

MITAuto-check passedProductivity & Automation

Install Brave Local Place Descriptions

skills CLI
$ npx skills add brave/brave-search-skills --skill local-descriptions -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install brave/brave-search-skills local-descriptions --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/brave/brave-search-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/local-descriptions .claude/skills/local-descriptions && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
local-descriptions
GitHub stars
183
Token cost
~1k tokens
SKILL.md length
278 words
Files
1
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Fetches AI-written text descriptions for local places from the Brave Search API, using place IDs returned by an earlier local search.

  • Adding a short written blurb to restaurant or shop results from a place search
  • SKILL.md covers Quick Start (cURL), Endpoint, Parameters and Response Format, plus 3 more sections
  • Calls curl; reaches api.search.brave.com; needs BRAVE_SEARCH_API_KEY and API_KEY
  • Turning a list of place IDs into readable summaries for a local guide

What it does

This skill documents a single Brave Search API endpoint, a GET request to /res/v1/local/descriptions, that returns a markdown description for each point-of-interest ID you send. The text is generated by AI from web search results, and an entry in the response can be null when nothing is available for that place.

It is the second half of a two-step flow. You first collect place IDs, either from the local-place-search skill or from a web search with result_filter=locations, then pass 1 to 20 of them as repeated ids parameters. The IDs are opaque strings that stay valid for roughly 8 hours, so old ones need a fresh lookup. Requests carry an API key in the X-Subscription-Token header, and the endpoint belongs to the Search plan.

When your agent uses it

  • Adding a short written blurb to restaurant or shop results from a place search
  • Turning a list of place IDs into readable summaries for a local guide
  • Enriching Brave web search results that use the locations result filter

Example prompts

  • “Get Brave descriptions for the restaurants we found in the San Francisco place search.”
  • “Write a short blurb for each coffee shop ID that local-place-search returned.”
  • “Call the descriptions endpoint with the POI IDs from my last locations search and tell me which came back empty.”

Requirements

  • A Brave Search API key on the Search plan
  • POI IDs from local-place-search or a web search with result_filter=locations
  • Network access to api.search.brave.com

What it can do on your machine

Read from SKILL.md and the folder at commit 62793e0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.search.brave.com

    Also links to:

    • api-dashboard.search.brave.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • BRAVE_SEARCH_API_KEY
    • API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Brave Local Place Descriptions loads about 1k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 278 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~62
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from brave/brave-search-skills at commit 62793e0, republished under its MIT licence (© brave). 278 words, ~1,020 tokens.

Download SKILL.mdSave it as .claude/skills/local-descriptions/SKILL.md (or your agent's skills folder).
name
local-descriptions
description
USE FOR getting AI-generated POI text descriptions. Requires POI IDs from local-place-search, or from web-search with result_filter=locations. Returns markdown descriptions grounded in web search context. Max 20 IDs per request.

Local Descriptions (Search API)

Requires API Key: Get one at https://api.search.brave.com

Plan: Included in the Search plan. See https://api-dashboard.search.brave.com/app/subscriptions/subscribe

Two-step flow: This endpoint requires POI IDs from a prior search.

  1. Get POI IDs from local-place-search, or from web-search with result_filter=locations (locations.results[].id)
  2. Pass those IDs to this endpoint to get AI-generated descriptions

Quick Start (cURL)

Get POI Description
bash
curl -s "https://api.search.brave.com/res/v1/local/descriptions?ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA%3D" \
  -H "Accept: application/json" \
  -H "Accept-Encoding: gzip" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"
Multiple POIs
bash
curl -s "https://api.search.brave.com/res/v1/local/descriptions" \
  -H "Accept: application/json" \
  -H "Accept-Encoding: gzip" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -G \
  --data-urlencode "ids=loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=" \
  --data-urlencode "ids=loc4HTAVTJKP4RBEBZCEMBI3NG26YD4II4PATIHPDYI="

Note: POI IDs are opaque strings returned in web search locations.results[].id. They are valid for approximately 8 hours. The example IDs above are for illustration — fetch fresh IDs via web-search with result_filter=locations.

Endpoint

http
GET https://api.search.brave.com/res/v1/local/descriptions

Authentication: X-Subscription-Token: <API_KEY> header

Parameters

ParameterTypeRequiredDefaultDescription
idsstring[]Yes—POI IDs from web search locations.results[].id (1-20, repeated: ?ids=a&ids=b)

Response Format

Response Fields
FieldTypeDescription
typestringAlways "local_descriptions"
resultsarrayList of description objects (entries may be null)
results[].typestringAlways "local_description"
results[].idstringPOI identifier matching the request
results[].descriptionstring?AI-generated markdown description, or null if unavailable
Example Response
json
{
  "type": "local_descriptions",
  "results": [
    {
      "type": "local_description",
      "id": "loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=",
      "description": "### Overview\nA cozy neighborhood cafe known for its **artisanal coffee**..."
    }
  ]
}

Getting POI IDs

local-place-search returns POI IDs directly. They also come from the Web Search API (web-search) with result_filter=locations:

bash
# 1. Search for local businesses
curl -s "https://api.search.brave.com/res/v1/web/search?q=restaurants+san+francisco&result_filter=locations" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"

# 2. Extract POI IDs from locations.results[].id
# 3. Use those IDs with local/pois and local/descriptions

Use Cases

  • Local business overview: Pair with local-pois to get both structured data (hours, ratings) and narrative descriptions
  • Travel/tourism enrichment: Add descriptive context to POIs for travel planning or destination guides
  • Search results augmentation: Supplement web search results with AI-generated summaries of local businesses

Notes

  • Always markdown: Descriptions use ### headings, bullet lists, bold/italics — always formatted as markdown
  • Travel-guide tone: Typically 200-400 words covering what makes the POI notable
  • AI-generated: Descriptions are AI-generated based on web search context, not sourced from business profiles
  • Availability: Not all POIs have descriptions — description may be null
  • Max IDs: Up to 20 IDs per request

© brave, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/local-descriptions of brave/brave-search-skills.

Open the folder on GitHubat commit 62793e0

Compare with similar skills

Brave Local Place Descriptions next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Brave Local Place Descriptions compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Brave Local Place Descriptions this skillbrave/brave-search-skills183—~1kAutomated safety check: PassMIT
9Router Web Searchdecolua/9router30k—~1kAutomated safety check: PassMIT
Read The Damn DocsBuilderIO/skills4.6k—~1.8kAutomated safety check: PassMIT
Search LayeraAAaqwq/AGI-Super-Team1051 repos~1.9kAutomated safety check: PassMIT
Brave SearchLeoYeAI/openclaw-master-skills2.2k—~4.6kAutomated safety check: PassMIT
Firecrawl App Integrationfirecrawl/firecrawl190k—~2.1kAutomated safety check: NotesISC

Similar skills

  • 9Router Web Search

    decolua/9router

    Runs web, news and public X searches through a 9Router gateway's search endpoint, choosing among providers such as Tavily, Exa, Brave and Perplexity.

    30k GitHub stars~1k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Read The Damn Docs

    BuilderIO/skills

    A skill your agent uses when implementing, integrating, upgrading, debugging, or answering anything involving third-party APIs, libraries, frameworks, CLIs, cloud services, model/provider SDKs…

    4.6k GitHub stars~1.8k tokensUpdated yesterday
    Backend & APIsAuto-check passed
  • Search Layer

    aAAaqwq/AGI-Super-Team

    四源同级:Brave (websearch) + Exa + Tavily + Grok。按意图自动选策略、调权重、做合成。

    105 GitHub starsUsed in 1 repo~1.9k tokens
    Productivity & AutomationAuto-check passed
  • Brave Search

    LeoYeAI/openclaw-master-skills

    Brave Search API integration with managed authentication. An agent skill from LeoYeAI/openclaw-master-skills.

    2.2k GitHub stars~4.6k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Firecrawl App Integration

    firecrawl/firecrawl

    Adds web search, scraping, structured extraction and browser interaction to application code using Firecrawl's scrape, search and interact endpoints.

    190k GitHub stars~2.1k tokensUpdated today
    Data & AnalyticsAuto-check: notes
  • Brave Search

    badlogic/pi-skills

    Web search and content extraction via Brave Search API. An agent skill from badlogic/pi-skills.

    2.6k GitHub starsUsed in 5 repos~592 tokens
    Productivity & AutomationAuto-check passed

More from brave/brave-search-skills

All 11 skills in this repo
  • Brave Answers API

    brave/brave-search-skills

    Calls the Brave Search Answers endpoint for AI-grounded, cited answers, either a fast single-search reply or a slower multi-search deep research run.

    183 GitHub stars~2.3k tokensUpdated 16 days ago
    Auto-check passed
  • Brave Image Search

    brave/brave-search-skills

    Searches images through the Brave Search API and returns titles, source pages, thumbnails and original image URLs, with a SafeSearch filter and up to 200 results.

    183 GitHub stars~1.4k tokensUpdated 16 days ago
    Auto-check passed
  • Brave LLM Context API

    brave/brave-search-skills

    Documents Brave's LLM Context API, which returns pre-extracted, ranked web page content for grounding agent and RAG answers, with GET and POST calls and Goggles filters.

    183 GitHub stars~3.3k tokensUpdated 16 days ago
    Auto-check passed
  • Brave Local Place Search

    brave/brave-search-skills

    Looks up businesses, points of interest, addresses and streets through the Brave Search place endpoint, returning contact details, ratings and hours in one call.

    183 GitHub stars~3.4k tokensUpdated 16 days ago
    Auto-check passed
  • Brave Local POI Details

    brave/brave-search-skills

    Looks up full details for local businesses and places, including ratings, hours and contact information, from Brave Search API point-of-interest IDs.

    183 GitHub stars~1.9k tokensUpdated 16 days ago
    Auto-check passed
  • News Search

    brave/brave-search-skills

    A skill your agent uses FOR news search. An agent skill from brave/brave-search-skills.

    183 GitHub stars~2k tokensUpdated 16 days ago
    Auto-check passed

Questions about Brave Local Place Descriptions

What does Brave Local Place Descriptions do?

Fetches AI-written text descriptions for local places from the Brave Search API, using place IDs returned by an earlier local search. This skill documents a single Brave Search API endpoint, a GET request to /res/v1/local/descriptions, that returns a markdown description for each point-of-interest ID you send. The text is generated by AI from web search results, and an entry in the response can be null when nothing is available for that place.

When should I use Brave Local Place Descriptions?

Brave Local Place Descriptions fits situations like: adding a short written blurb to restaurant or shop results from a place search; turning a list of place IDs into readable summaries for a local guide; enriching Brave web search results that use the locations result filter.

How do I install Brave Local Place Descriptions in Claude Code?

Run `npx skills add brave/brave-search-skills --skill local-descriptions -a claude-code`. Or copy the skill folder (skills/local-descriptions in brave/brave-search-skills) into .claude/skills/local-descriptions in your project. Claude Code loads it when a task matches its description.

How do I install Brave Local Place Descriptions in Codex?

Run `npx skills add brave/brave-search-skills --skill local-descriptions -a codex`. Or copy the skill folder (skills/local-descriptions in brave/brave-search-skills) into .agents/skills/local-descriptions in your project. Codex loads it when a task matches its description.

Can I use Brave Local Place Descriptions in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add brave/brave-search-skills --skill local-descriptions -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/local-descriptions, .gemini/skills/local-descriptions, .github/skills/local-descriptions and .opencode/skills/local-descriptions in your project.

What does Brave Local Place Descriptions need to run?

Going by SKILL.md and its folder, Brave Local Place Descriptions needs the command-line tools its instructions call (curl) and credentials named BRAVE_SEARCH_API_KEY and API_KEY. Our summary lists: A Brave Search API key on the Search plan; POI IDs from local-place-search or a web search with result_filter=locations; Network access to api.search.brave.com.

Does Brave Local Place Descriptions access the network?

SKILL.md names 2 domains. In commands or code: api.search.brave.com; the agent is likely to contact it when it follows the instructions. As links in the text: api-dashboard.search.brave.com. This is read from the text; nothing was executed.

Is Brave Local Place Descriptions safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Brave Local Place Descriptions use?

Brave Local Place Descriptions is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Brave Local Place Descriptions use?

About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Brave Local Place Descriptions?

Skills that share tags, products or a category with Brave Local Place Descriptions: 9Router Web Search (decolua/9router, 30k stars), Read The Damn Docs (BuilderIO/skills, 4.6k stars), Search Layer (aAAaqwq/AGI-Super-Team, 105 stars) and Brave Search (LeoYeAI/openclaw-master-skills, 2.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Brave Local Place Descriptions?

brave (a GitHub organization) maintains it in brave/brave-search-skills, which has 183 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 23, 2026.

Source: brave/brave-search-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.