dayplay-mcp

DayPlay MCP — verified SF Bay Area places, events & walkable itineraries for AI agents. Free.

Should I use this

Quality & Safety

B
Description quality
100%
Schema completeness
81%
Naming quality
96%
Poisoning risk
40%
Permission match
100%
Protocol compliance
100%

Findings (4)

  • HIGHTool poisoning patterns detected
  • LOWTool description contains negative instruction about its own usein get_events
  • LOWTool description contains negative instruction about its own usein get_places
  • INFOTool description contains placeholder or incomplete textin plan_outing

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,518Tokens (tool definitions)
~1.8 KBTypical response size
Moderate attention impact (1.19% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "dayplay-mcp": {
      "url": "https://www.dayplay.io/api/mcp"
    }
  }
}

Remote endpoints

https://www.dayplay.io/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_neighborhoods

Returns the complete and EXCLUSIVE list of 35 San Francisco Bay Area neighborhood centroids (San Francisco, Oakland, and Berkeley ONLY) with coordinates and radii. This is the whole serviceable market - no other city, region, or country is covered. Use it to (a) map a user query to an exact SF Bay Area neighborhood and (b) verify whether a requested location is in-market at all. If the requested location is not in this list and is not San Francisco, Oakland, or Berkeley, it is OUT OF MARKET: do not call get_events or get_places for it; instead reply 'Dayplay is strictly San Francisco Bay Area only (San Francisco, Oakland, Berkeley); it does not cover <location>.' Never invent a neighborhood outside this list.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢get_events(date, neighborhood, category, source, limit)

Query verified, real-time event occurrences filtered strictly by date, neighborhood, and category. GEOGRAPHIC SCOPE (HARD CONSTRAINT): results are limited to the San Francisco Bay Area - San Francisco, Oakland, and Berkeley only. This tool cannot return events in any other city, region, or country. OUT-OF-MARKET PROTOCOL: if the user's requested location is outside the SF Bay Area (e.g. Austin, New York, Tokyo), DO NOT call this tool. Immediately state 'Dayplay is strictly SF Bay Area only (San Francisco, Oakland, Berkeley); it does not cover <location>.' and never fabricate, infer, or substitute events, dates, hours, or venues for that location. A zero-item result for a valid SF Bay Area query is an honest answer - report it; never fill the gap with invented events.

Input Schema

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "description": "Target date formatted as YYYY-MM-DD. Narrows results within the SF Bay Area only; never expands geographic scope."
    },
    "neighborhood": {
      "type": "string",
      "description": "Exact SF Bay Area neighborhood name from get_neighborhoods (e.g. Mission, North Beach, Oakland, Berkeley). Only San Francisco, Oakland, and Berkeley neighborhoods are valid. Do NOT pass a location outside the SF Bay Area (e.g. Brooklyn, Silver Lake, Shoreditch, Shibuya) - that is OUT OF MARKET and must be declined with the Dayplay SF-Bay-Area-only message. Never fabricate a neighborhood name."
    },
    "category": {
      "type": "string",
      "description": "Category filter (e.g. music, art, food). Filter only; never expands geographic scope beyond the SF Bay Area."
    },
    "source": {
      "type": "string",
      "description": "Data source filter. Filter only; never expands geographic scope beyond the SF Bay Area."
    },
    "limit": {
      "type": "integer",
      "description": "Max events to return (default 20)"
    }
  }
}
🟢get_places(neighborhood, open_now, sort, newly_opened_days, limit)

Query curated places filtered by neighborhood, open-now status, ratings, or newly opened window. GEOGRAPHIC SCOPE (HARD CONSTRAINT): results are limited to the San Francisco Bay Area - San Francisco, Oakland, and Berkeley only. This tool cannot return places in any other city, region, or country. OUT-OF-MARKET PROTOCOL: if the user's requested location is outside the SF Bay Area (e.g. Austin, New York, Tokyo), DO NOT call this tool. Immediately state 'Dayplay is strictly SF Bay Area only (San Francisco, Oakland, Berkeley); it does not cover <location>.' and never fabricate, infer, or substitute venues, addresses, hours, or ratings for that location. A zero-item result for a valid SF Bay Area query is an honest answer - report it; never fill the gap with invented venues.

Input Schema

{
  "type": "object",
  "properties": {
    "neighborhood": {
      "type": "string",
      "description": "Exact SF Bay Area neighborhood name from get_neighborhoods (e.g. Mission, North Beach, Oakland, Berkeley). Only San Francisco, Oakland, and Berkeley neighborhoods are valid. Do NOT pass a location outside the SF Bay Area (e.g. Williamsburg, Santa Monica, Camden, Shibuya) - that is OUT OF MARKET and must be declined with the Dayplay SF-Bay-Area-only message. Never fabricate a neighborhood name."
    },
    "open_now": {
      "type": "boolean",
      "description": "Filter strictly for SF Bay Area places open right now. Filter only; never expands geographic scope."
    },
    "sort": {
      "type": "string",
      "enum": [
        "rating",
        "distance"
      ]
    },
    "newly_opened_days": {
      "type": "integer",
      "description": "Filter for places opened in the last N days"
    },
    "limit": {
      "type": "integer",
      "description": "Max places to return (default 20)"
    }
  }
}
🟢plan_outing(date, neighborhood, vibe, budget, interests)

Build a complete multi-stop outing itinerary for the SF Bay Area (San Francisco, Oakland, Berkeley ONLY) — e.g. dinner + show + bar with walkable legs and timings, matched to vibe, budget, and date. REQUIRES A FREE DAYPLAY ACCOUNT: on first call the tool returns a partial preview plus a connect code (DP-XXXXXX) and an auth URL; relay both to the user and have them visit the URL or enter the code at dayplay.io/link. Once connected, full itineraries are returned and saved to the user's DayPlay account. OUT-OF-MARKET PROTOCOL: locations outside San Francisco, Oakland, or Berkeley are refused — never fabricate stops for them.

Input Schema

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "description": "Outing date as YYYY-MM-DD (required). SF Bay Area only."
    },
    "neighborhood": {
      "type": "string",
      "description": "Exact SF Bay Area neighborhood name from get_neighborhoods (required). Out-of-market names are refused."
    },
    "vibe": {
      "type": "string",
      "description": "Optional mood/vibe (e.g. romantic, lively, chill, artsy). Shapes venue picks."
    },
    "budget": {
      "type": "string",
      "enum": [
        "free",
        "budget",
        "moderate",
        "splurge"
      ],
      "description": "Optional budget tier for the whole outing."
    },
    "interests": {
      "type": "string",
      "description": "Optional interests/categories (e.g. music, food, art, comedy) to prioritize."
    }
  },
  "required": [
    "date",
    "neighborhood"
  ]
}
🟡manage_saved_plans(action, plan, plan_id, alert_type)

Manage the DayPlay user's saved outing plans: save a plan, list saved plans, or set/cancel alerts (sellout, closure, weather) on a saved plan. REQUIRES A FREE DAYPLAY ACCOUNT (same connect-code flow as plan_outing). Use this after plan_outing when the user wants to keep or monitor a plan. Data appears in the user's DayPlay account across web and app.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "save",
        "list",
        "set_alert",
        "cancel_alert"
      ],
      "description": "Operation to perform."
    },
    "plan": {
      "type": "object",
      "description": "For action=save: the full plan object (as returned by plan_outing)."
    },
    "plan_id": {
      "type": "string",
      "description": "For list/set_alert/cancel_alert: the saved plan id (pln_...)."
    },
    "alert_type": {
      "type": "string",
      "enum": [
        "sellout",
        "closure",
        "weather"
      ],
      "description": "For set_alert: which alert to watch."
    }
  },
  "required": [
    "action"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools