Cursor Hackathon1st Place

Remaking the web for AI.

Read data and take actions. Call a typed function to access any site, no browser needed.

Get started

The internet wasn’t built for AI

Bowmark converts everything to AI-readable code.

AI accesses the web programmatically.

Install the
for
claude plugin marketplace add bowmark-ai/plugin claude plugin install bowmark@bowmark-ai

Up to 20x faster than browser agents.

For sites with published APIs.

Choose a task

Finished run

Book a hotel

Prompt: “book me a hotel in Kyoto for 3 nights, under $200”.

Bowmark calls searchHotels and bookHotel and answers: Booked ✓ $184/night, Hyatt Place Kyoto · Oct 9 → Oct 12 · free cancellation · Confirmation K4Q7TM. Done — 3 nights at Hyatt Place Kyoto, $184 a night. Replay figures: 1,186 tokens, $0.02, 2.5 seconds.

A browser agent works through 12 steps in a web browser, ending blocked at captcha at “Solving captcha…”. Replay figures: 50,640 tokens, $0.91, 3:56.

BowmarkDone

2.5s
Tokens used
1,186
Cost
$0.02

Browser agentblocked at captcha

3:56
Tokens used
50,640
Cost
$0.91

Every capability.
One import.

Bowmark covers consumer and public sites — shopping, travel, maps, content, scheduling, and third-party APIs.

  • Etsy.search1 function
  • Best Buy.search2 functions
    • Best Buy.getProduct
  • eBay.search1 function
  • Amazon.searchProducts14 functions
    • Amazon.getProduct
    • Amazon.listBestSellers
    • Amazon.listDeals
    • Amazon.getDeliveryEstimate
    +9 more
  • Walmart.search1 function
  • Target.search2 functions
    • Target.findStore
  • Chipotle.getBowlBuilder1 function
  • Apple.search25 functions
    • Apple.getProduct
    • Apple.compareModels
    • Apple.getPickupAvailability
    • Apple.getTradeInEstimate
    +20 more
  • Costco.search1 function
  • lululemon.search5 functions
    • lululemon.getProduct
    • lululemon.getProducts
    • lululemon.getSimilarProducts
    • lululemon.getReviews
  • Abercrombie & Fitch.search4 functions
    • Abercrombie & Fitch.getProduct
    • Abercrombie & Fitch.checkStock
    • Abercrombie & Fitch.findStores
  • J.Crew.searchProducts3 functions
    • J.Crew.listCategories
    • J.Crew.suggestSearchTerms
  • Newegg.search3 functions
    • Newegg.getProduct
    • Newegg.checkStock
  • Dell.searchForumThreads1 function
  • Micro Center.search1 function
  • B&H Photo.search3 functions
    • B&H Photo.getProduct
    • B&H Photo.checkStock
  • Sam's Club.search8 functions
    • Sam's Club.getProduct
    • Sam's Club.checkStock
    • Sam's Club.findClubs
    • Sam's Club.browseCategory
    +3 more
  • Poshmark.getBulkUploadTemplateGuide2 functions
    • Poshmark.getZipFileGuide
  • Whole Foods.search1 function
  • Sears.search2 functions
    • Sears.getProduct
  • Marriott.findHotels1 function
  • Expedia.searchHotels4 functions
    • Expedia.getHotel
    • Expedia.getRooms
    • Expedia.listReviews
  • Google Flights.search3 functions
    • Google Flights.getBookingOptions
    • Google Flights.getPriceGraph
  • Google Maps.searchPlaces11 functions
    • Google Maps.getDirections
    • Google Maps.getPlace
    • Google Maps.listReviews
    • Google Maps.searchNearby
    +6 more
  • IHG.search1 function
  • Avis.searchLocations2 functions
    • Avis.getLocation
  • Resy.search1 function
  • Yelp.search1 function
  • DoorDash.search1 function
  • ClassPass.getStudio2 functions
    • ClassPass.getSchedule
  • Disney World.getTicketPrice1 function
  • Six Flags.getTickets1 function
  • Flightradar24.getAirportArrivals2 functions
    • Flightradar24.getAirline
  • American Airlines.getFlightStatus3 functions
    • American Airlines.retrieveBooking
    • American Airlines.getBaggageAllowance
  • Lufthansa.getFlightStatus2 functions
    • Lufthansa.getBaggageAllowance
  • Cars.com.search2 functions
    • Cars.com.getModelResearch
  • Cheapflights.search4 functions
    • Cheapflights.getBookingOptions
    • Cheapflights.searchHotels
    • Cheapflights.searchCars
  • Rover.searchBoarding1 function
  • BC Parks.searchCampgrounds2 functions
    • BC Parks.checkAvailability
  • Lonely Planet.search1 function
  • YouTube.search28 functions
    • YouTube.getTranscript
    • YouTube.getVideo
    • YouTube.getChannel
    • YouTube.listComments
    +23 more
  • GitHub.listCommits3 functions
    • GitHub.listReleases
    • GitHub.getProfileReadme
  • Reddit.search5 functions
    • Reddit.getPost
    • Reddit.getSubredditPosts
    • Reddit.getSubreddit
    • Reddit.searchSubreddits
  • LinkedIn.searchJobs4 functions
    • LinkedIn.getProfile
    • LinkedIn.getCompany
    • LinkedIn.getJob
  • Airtable.listRecords6 functions
    • Airtable.getRecord
    • Airtable.createRecord
    • Airtable.updateRecord
    • Airtable.listBases
    +1 more
  • Calendly.getAvailability4 functions
    • Calendly.getEventTypes
    • Calendly.getBookingForm
    • Calendly.findProfiles
  • Wikipedia.search1 function
  • Google News.searchNews10 functions
    • Google News.topStories
    • Google News.listTopicHeadlines
    • Google News.listPublisherHeadlines
    • Google News.getFullCoverage
    +5 more
  • Google Translate.translate13 functions
    • Google Translate.detectLanguage
    • Google Translate.lookupWord
    • Google Translate.getDefinitions
    • Google Translate.romanize
    +8 more
  • Bing.searchNews2 functions
    • Bing.searchWebBrowser
  • Cloudflare.comparePlans2 functions
    • Cloudflare.compareTeamsPlans
  • Microsoft Azure.getServicePricing2 functions
    • Microsoft Azure.listServices
  • npm.getDownloads1 function
  • Y Combinator.getArticle2 functions
    • Y Combinator.getBlogPost
  • Twitch.getVideo2 functions
    • Twitch.createHighlight
  • SoundCloud.search3 functions
    • SoundCloud.getTrack
    • SoundCloud.getPlaylist
  • Yahoo Finance.getQuote5 functions
    • Yahoo Finance.searchSymbols
    • Yahoo Finance.getHistoricalPrices
    • Yahoo Finance.getTrendingTickers
    • Yahoo Finance.getMarketSummary
  • Pinterest.searchPins1 function
  • Namecheap.getWhois1 function
  • PayPal.getFees3 functions
    • PayPal.estimateFee
    • PayPal.getCurrencyConversionQuote
  • Amazon.searchProducts14 functions
    • Amazon.getProduct
    • Amazon.listBestSellers
    • Amazon.listDeals
    • Amazon.getDeliveryEstimate
    +9 more
  • Calendly.getAvailability4 functions
    • Calendly.getEventTypes
    • Calendly.getBookingForm
    • Calendly.findProfiles
  • Google Maps.searchPlaces11 functions
    • Google Maps.getDirections
    • Google Maps.getPlace
    • Google Maps.listReviews
    • Google Maps.searchNearby
    +6 more
  • Walmart.search1 function
  • YouTube.search28 functions
    • YouTube.getTranscript
    • YouTube.getVideo
    • YouTube.getChannel
    • YouTube.listComments
    +23 more
  • Google Flights.search3 functions
    • Google Flights.getBookingOptions
    • Google Flights.getPriceGraph
  • Apple.search25 functions
    • Apple.getProduct
    • Apple.compareModels
    • Apple.getPickupAvailability
    • Apple.getTradeInEstimate
    +20 more
  • LinkedIn.searchJobs4 functions
    • LinkedIn.getProfile
    • LinkedIn.getCompany
    • LinkedIn.getJob
  • Airtable.listRecords6 functions
    • Airtable.getRecord
    • Airtable.createRecord
    • Airtable.updateRecord
    • Airtable.listBases
    +1 more
  • Etsy.search1 function
  • GitHub.listCommits3 functions
    • GitHub.listReleases
    • GitHub.getProfileReadme
  • Reddit.search5 functions
    • Reddit.getPost
    • Reddit.getSubredditPosts
    • Reddit.getSubreddit
    • Reddit.searchSubreddits

Install for free

Assistants
In your code

Connect to ChatGPT

  1. Enable Developer mode in Settings → Apps & Connectors → Advanced
  2. Create a connector with this URL and OAuth, then sign in to Bowmark
  3. Attach Bowmark with @ in each new message
Server address
https://api.bowmark.ai/mcp/chatgpt-app

Create an account and get your API key. Full setup in the docs.

Fair questions.

More in the docs, or write to support@bowmark.ai.

Is this a crawler or a scraper?

Not in the way you might expect. Instead of your agent loading and reading pages every time, Bowmark describes what a site can do as typed functions — like searchFlights() or bookHotel() — that return structured results. Your agent calls the function rather than driving a browser.

Which agents does it work in?

ChatGPT, Claude, Claude Code, Codex, GitHub Copilot and Cursor, plus anything else that speaks MCP. Windsurf works through the generic MCP setup. In your own code you can use the TypeScript or Python client, or HTTP.

Setup for each one is in Connect.

What does it cost?

Free to start, then metered.

Current details are in the docs.

Does it use up my tokens?

Your model still spends tokens on the conversation and on the results it reads. Because a capability returns compact, typed data rather than whole web pages, there is usually far less for it to read than when it works through a browser step by step.

What if the site I want isn’t covered?

Tell us the site and what you want to do on it at support@bowmark.ai. In the meantime your agent can keep using its usual tools for that site.

Can I use this for my business?

Yes. For business questions, write to support@bowmark.ai.

Can it run on a schedule, unattended?

Yes. Bowmark itself has no scheduler, but you can call it from one using HTTP or an SDK. Connect it to Zapier, Make, a cron job, or your own service to run recipes daily or on any schedule you need.

Full details, with examples for Zapier and Make.