mcpField
L
local-descriptions

local-descriptions

github.com/braveOther1921.1k installsUpdated 11w ago
Repository

About local-descriptions

local-descriptions is a Brave Search API endpoint for applications that need narrative context for local search results. It returns AI-generated Markdown descriptions for POI IDs from a prior search; some places may have no description.

Key features

  1. 01Get place descriptions by POI ID
  2. 02Return AI-generated Markdown
  3. 03Query multiple places at once
  4. 04Descriptions may be unavailable

Use cases

  1. 01Add context to local business search results
  2. 02Enrich travel planning with place descriptions
  3. 03Combine narratives with structured place details

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/brave/brave-search-skills --skill local-descriptions

After installing, type/local-descriptionsin Claude Code to confirm it loaded.

Details

From the project README

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
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[]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
{
  "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:

# 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

Comments

Markdown supported