agentsclimarketplace

Apify google events ai

Skill johnisanerd/claude-skill-google-events-ai/apify-google-events-ai

Claude/agent skill: local events data for AI agents, as structured JSON. Installs via npx skills add.

Install
npx -y skills add johnisanerd/claude-skill-google-events-ai --skill apify-google-events-ai

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

3 things to look at

  • 20 days oldThe repository was created 20 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Give an AI agent live local event data from Google Events with the Apify Google Events Scraper Actor (johnvc/google-events-api---access-google-events-data). One bounded call takes a query like events in Austin this weekend and returns structured listings, title, start_date, when, address, venue name and rating, and ticket_info seller links, ready for an agent to rank, summarize, or drop into a calendar. Use when the user wants google events ai, an events feed for an AI agent or assistant, event discovery inside Claude, a what is happening this weekend helper, a calendar copilot that suggests concerts or conferences, or wants to wire local events into an app or agent workflow. Pay-per-page billing, MCP-ready for Claude and other AI agents.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

7.6 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it

Google Events AI: A Local Events Feed for Agents

Wire Google Events into an AI agent. One bounded call takes a natural ask like "what is happening in Austin this weekend" and returns structured listings with dates, venues, and ticket links, ready for the agent to rank, summarize, or push into a calendar or app.

When to use this skill

  • The user wants google events ai: live local event data inside Claude or another agent.
  • They are building an event-discovery assistant, calendar copilot, or a "what is happening this weekend" helper.
  • They want an events feed for an app, bot, or agent workflow, refreshed on demand or on a schedule.
  • They ask "how do I get local events into my AI agent" or "events data for an assistant".

Not for: diffing event listings across runs over time (use the google-events-tracking skill), ticket price comparison (ticket_info carries seller links, not numeric prices), or attendance and RSVP data (the source does not publish it).

What the feed returns (one row per results page)

Each dataset row is one page of results with a nested events array, about 10 events per page. Per event: title, date (start_date and when display strings), address (venue and city lines), link, description, ticket_info (per-seller source, link, link_type, source_icon), venue (name, rating, reviews, link, when present), and image. Page level: search_parameters, search_metadata (events_count, pages_processed, pagination_limit_reached, and related counts), page_number, search_timestamp, plus hit_chips and filters when Google offers them. The event link is the dedupe key.

Prerequisites

The Actor

Run it with the Apify CLI

One agent turn, bounded to a single page:

apify actors call "johnvc/google-events-api---access-google-events-data" -i '{"q":"family events in Brooklyn","location":"Brooklyn, NY","gl":"us","hl":"en","advanced":"date:weekend","max_pages":1}' \
  --json \
  --user-agent apify-awesome-skills/apify-google-events-ai \
  2>/dev/null

An online-only feed for a virtual assistant:

apify actors call "johnvc/google-events-api---access-google-events-data" -i '{"q":"ai webinars","gl":"us","hl":"en","advanced":"event_type:Virtual-Event,date:week","max_pages":1}' \
  --json \
  --user-agent apify-awesome-skills/apify-google-events-ai \
  2>/dev/null

Every call carries the three flags this repo expects: --json, --user-agent apify-awesome-skills/apify-google-events-ai, and 2>/dev/null.

Run it from Claude or another AI agent (MCP)

The Actor is MCP-ready. Add the hosted server URL:

https://mcp.apify.com/?tools=actors,docs,johnvc/google-events-api---access-google-events-data

Then ask, for example: "Find family-friendly events in Brooklyn this weekend and give me the ticket links." MCP setup docs: https://docs.apify.com/platform/integrations/mcp

Workflow

  1. Turn the ask into a query. Map the user's words to q ("family events in Brooklyn") and put the time frame into advanced (date:today, date:tomorrow, date:week, date:weekend, date:next_week, date:month, date:next_month); add event_type:Virtual-Event for online-only asks. Comma-separate to combine.
  2. Pin the locale. Set gl and hl explicitly; without them Google localizes to the serving region and the agent can get answers in the wrong language.
  3. Bound each turn. Keep max_pages at 1 or 2 per agent turn; one page is about 10 events, plenty for a ranked answer. max_pages is also the cost cap.
  4. Post-process for the agent. Flatten the nested events array, keep the fields the answer needs (title, date.when, address, venue.rating, ticket_info links), and dedupe on link.
  5. Serve the result. Summarize with ticket links, write events into a calendar, or hand JSON back to the app. For a standing feed, wrap the same input in an Apify Schedule and read the newest dataset each cycle.

Inputs

  • q (string, required): Google Events search query
  • location (string): geographic bias, for example "Brooklyn, NY"
  • gl (enum, ISO 3166-1 alpha-2 lowercase): country code
  • hl (enum, ISO 639-1 lowercase): language code
  • advanced (string): comma-separated hit-chip tokens for date window and virtual-only; invalid tokens are rejected at run start before any charges
  • max_pages (integer, default 1): pages per call, the cost bound
  • output_file (string): optional filename for a JSON copy of the results

Cost

Billing is pay per event: a $0.02 per-run setup fee plus about $0.02 per page on the free tier, with negligible per-start and per-row fees. A one-page agent turn is about $0.04; an assistant answering 100 event asks a month spends about $4. Live prices and thresholds are in references/gotchas.md.

Honest limits

  • This is a pull feed: the agent calls it per ask or on a schedule; there is no push or webhook from the source.
  • date.start_date and date.when are display strings ("Jul 17", "Tomorrow, 7:00 PM"), not ISO timestamps; parse before calendar writes.
  • ticket_info links point at sellers; there are no numeric prices to compare.
  • The venue block (rating, reviews) is missing on some events; rank on it only when present.
  • Inventory varies by city and window; a narrow ask can legitimately return an empty events array.

Troubleshooting

  • Answers in the wrong language: set gl and hl explicitly; unset runs localize to the serving region.
  • Empty events array: widen the date window, drop advanced, or broaden q.
  • Input error at start naming advanced: an invalid hit-chip token; use only the listed tokens (date:month, not date:thismonth).
  • Agent re-suggests the same event: dedupe on the event link before serving.

See references/gotchas.md for cost guardrails and error recovery, and references/actor-index.md for the Actor routing table.

Related local-data Actors

What ships with it: 2 files

4.4 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 327,069. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.