yelp-mcp-sdk
Provides tools for searching businesses by text and location, looking up businesses by phone number, matching structured name and address to Yelp listings, retrieving full business profiles, and fetching reviews, all via the Yelp Fusion API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yelp-mcp-sdksearch for coffee shops in Seattle"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
yelp-mcp-sdk
Yelp Fusion MCP server built on the official MCP Python SDK.
Functionally identical to yelp-mcp-min (FastMCP), but uses the low-level
Server class directly — no framework abstractions.
Prerequisites
Python 3.11+
uv 0.11+
Docker (optional)
A Yelp Fusion API key — https://www.yelp.com/developers/v3/manage_app
Installation
uv sync
cp .env.example .env
# Edit .env and set YELP_API_KEYRunning
# stdio transport (for use with Claude Desktop or an MCP client)
uv run python -m server.main
# Docker
docker build -t yelp-mcp-sdk .
docker buildx build -t yelp-mcp-sdk .
docker run --env-file .env yelp-mcp-sdkEnvironment variables
Variable | Required | Default | Description |
| Yes | — | Yelp Fusion API bearer token |
| No |
| API base URL |
| No |
| Request timeout in seconds |
| No |
| Max retry attempts on 429/5xx |
| No |
| Min back-off wait in seconds |
| No |
| Max back-off wait in seconds |
| No |
| structlog level |
| No |
| Emit JSON log lines |
Tools
Tool | Yelp endpoint | Description |
|
| Full-text + geo search with pagination |
|
| Look up a business by E.164 phone number |
|
| Match structured name+address to Yelp listing |
|
| Full business profile by Yelp ID or alias |
|
| Customer reviews with pagination |
Resource
yelp://business/{id} — Full Yelp business profile as application/json.
Declared via list_resource_templates; fetched via read_resource.
Project structure
yelp-mcp-sdk/
server/
main.py # Server("yelp-mcp", lifespan=...) + stdio run
core/
config.py # pydantic-settings
logging.py # structlog → stderr
client.py # async httpx + tenacity retry
models.py # Pydantic output models
handlers/
params.py # Pydantic input models (also generate inputSchema)
tools.py # list_tools() + call_tool() dispatcher
resources.py # list_resource_templates() + read_resource()
tests/
conftest.py
test_client.py
test_models.py
test_handlers.py
Dockerfile
pyproject.toml
.env.exampleRunning tests
uv run pytest -vComparison with yelp-mcp-min (FastMCP)
Aspect | yelp-mcp-min (FastMCP) | yelp-mcp-sdk (official SDK) |
Tool registration |
|
|
Input schema | Auto-generated from func sig |
|
Output type | Return Pydantic model directly |
|
Resources |
|
|
Dependency inject | None (captured via closure) |
|
Transport |
|
|
Server LOC | ~350 | ~450 |
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/miqui/yelp-mcp-sdk'
If you have feedback or need assistance with the MCP directory API, please join our Discord server