Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
brave avatar

Local Descriptions

  • 627 installs
  • 164 repo stars
  • Updated August 3, 2026
  • brave/brave-search-skills

local-descriptions is a Brave Search agent skill that fetches AI-generated markdown descriptions for up to 20 POI IDs for developers enriching local landing pages, listings, and geo-targeted SEO content.

About

local-descriptions is a Brave Search API skill in brave-search-skills that turns POI IDs from prior web-search calls into AI-generated markdown business descriptions. The two-step flow requires `web-search` with result_filter=locations to read locations.results[].id values, then GET https://api.search.brave.com/res/v1/local/descriptions with up to 20 ids per request and X-Subscription-Token authentication on the Search plan. Responses return local_description objects with 200-400 word travel-guide tone copy using markdown headings, bullets, and emphasis; description may be null when unavailable. POI IDs are opaque strings valid for roughly eight hours. Developers reach for local-descriptions when building location pages, tourism guides, or local SEO templates that need narrative POI copy grounded in Brave web-search context rather than hand-written blurbs for every listing.

  • Brave Search local place data
  • Geo-specific page enrichment
  • Listing and snippet sourcing
  • Agent-callable search API
  • Location-page copy acceleration

Local Descriptions by the numbers

  • 627 all-time installs (skills.sh)
  • Ranked #675 of 1,879 Marketing & SEO skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/brave/brave-search-skills --skill local-descriptions

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs627
repo stars164
Last updatedAugust 3, 2026
Repositorybrave/brave-search-skills

How do you get AI local business descriptions from Brave?

Pull Brave Search local business descriptions and place metadata to enrich location pages, listings, and geo-targeted landing copy during SEO content production.

Who is it for?

Developers building local SEO pages or travel guides who already use Brave web-search POI IDs and need batch AI-generated place descriptions via API.

Skip if: Developers who need structured hours and ratings without a prior web-search step, or POI batches larger than 20 IDs per request.

When should I use this skill?

The user has Brave POI IDs from web-search and needs AI-generated markdown descriptions for location or listing pages.

What you get

JSON local_descriptions response with markdown description text per POI id, or null when unavailable.

  • Markdown POI descriptions JSON
  • Enriched location page copy

By the numbers

  • Max 20 POI IDs per local/descriptions request
  • Descriptions typically run 200-400 words in markdown
  • POI IDs remain valid for approximately 8 hours

Files

SKILL.mdMarkdownGitHub ↗

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 web search.

>

1. Call web-search with result_filter=locations to get POI IDs from locations.results[].id
2. Pass those IDs to this endpoint to get AI-generated descriptions

Quick Start (cURL)

Get POI Description

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

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

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

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

Parameters

ParameterTypeRequiredDefaultDescription
idsstring[]YesPOI 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

{
  "type": "local_descriptions",
  "results": [
    {
      "type": "local_description",
      "id": "loc4CQWMJWLD4VBEBZ62XQLJTGK6YCJEEJDNAAAAAAA=",
      "description": "### Overview\nA cozy neighborhood cafe known for its **artisanal coffee**..."
    }
  ]
}

Getting POI IDs

POI IDs come from the Web Search API (web-search) with result_filter=locations:

# 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

Related skills

How it compares

Choose local-descriptions for narrative POI markdown after Brave location search when structured hours and ratings from local-pois are also needed in parallel.

FAQ

How do you obtain POI IDs for local-descriptions?

local-descriptions requires POI IDs from a prior Brave web-search call using result_filter=locations. Extract locations.results[].id values, then pass up to 20 ids to GET /res/v1/local/descriptions.

How many POI IDs can local-descriptions request at once?

local-descriptions accepts 1 to 20 POI ids per request as repeated ids query parameters. Descriptions are AI-generated markdown, typically 200-400 words, and may be null when unavailable.

Marketing & SEOseocontentdistribution

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.