This is The Stack, the build log from Brooks New Media. We document what we are building, shipping, and learning as we grow a web platform business out of Ithaca, NY. Real progress, real decisions, no filter.
brooksnewmedia.com ↗
This is The Stack, the build log from Brooks New Media. We document what we are building, shipping, and learning as we grow a web platform business out of Ithaca, NY. Real progress, real decisions, no filter.
brooksnewmedia.com ↗
Side project: built an open source MCP server that connects your Strava data to Claude Code. Ask questions like 'how far did I run this week?' and get formatted stats back. Caches everything in a local SQLite vault so you are not burning API calls on repeat queries. Handles token refresh, bulk sync, and runs as a Docker container. A friend is already forking it and helping improve it. That is what open source is about.
github.com/pete-builds/strava-mcp-vault ↗
Refactored the SEO audit agent. Moved all 35 scanning checks into a standalone Python script that outputs structured JSON. The agent file went from 440 lines to 95. Same functionality, way fewer tokens burned per session. Also added a 7th audit category: Content Freshness. Checks copyright year staleness, broken internal and external links, blog recency, and dead social links. The kind of stuff that makes a site look abandoned even if the business is alive.
Audited 25 Finger Lakes wineries and breweries across Seneca and Cayuga Lake. Eight scored a D or worse. The best find: a well-known Seneca Lake winery whose Google search description says 'A professional dance studio website.' Someone installed a WordPress theme and never changed the default template text. Google has been telling visitors this winery is a dance studio. That is the kind of thing nobody notices until someone actually checks.
brooksnewmedia.com/blog/finger-lakes-winery-brewery-website-audit/ ↗
Had a realization tonight. We were pricing our monthly plan way too low for what we deliver: dedicated hosting, 2 blog posts, weekly strategy calls, SEO reporting, maintenance, and priority support. We are delivering agency-level output. Pulled the pricing off the site. Moving to custom plans and targeting wineries, hotels, and tourism businesses in the Finger Lakes. Aim higher.
Rewrote the entire brooksnewmedia.com homepage and services page. New origin story about starting with BandsThatJam.com in 2007, the Buffalo music scene, GrassRoots Festival giving us our first photo passes, and the move to Ithaca in 2018. Services restructured around what we actually deliver: web design, automation, SEO, and a monthly growth plan with weekly strategy calls. Killed the old generic copy. This is our story now.
brooksnewmedia.com ↗
Wrote the entire Brooks New Media business playbook today. Service model, sales process, pitch templates, agent workflow documentation. The free SEO checkup form on the site is now the front door. Someone submits their URL, we run the audit, send them a graded report, and start a conversation. No cold calls, no spam. Just data that speaks for itself.
Ran our first batch audit: 13 Ithaca bars and restaurants. Average grade was a D. Most common problems: missing meta descriptions, no SSL certificates, broken heading structure, and zero structured data. One bar's domain had been hijacked entirely by a spam site. Chrome shows 'Not Secure' for another. These are real businesses losing real customers every day because of basic website issues nobody told them about.
brooksnewmedia.com/blog/ithaca-bar-restaurant-website-audit/ ↗
Built a new SEO auditing tool today. It grades any website A through F across six categories: technical SEO, on-page content, performance, structured data, security, and local search signals. Runs a full audit in minutes. Named it Niobe, after the best navigator in the Matrix fleet.
Side project tonight: rebuilding BandsThatJam.com from Archive.org snapshots. This is where it all started in 2007. Concert photography, live show recordings, festival reviews out of Buffalo, NY. The site has been offline for a while, but the content still exists in the Wayback Machine. Pulling it back together as a showcase of where Brooks New Media came from. Every business has an origin story. This is ours, and we are not letting it disappear.
Why now? Because the old site was a brochure. It listed services and had a contact form. That is it. No story, no personality, no reason for someone to care. We started Brooks New Media because we loved music and wanted to help our community grow online. The website should reflect that. Not just what we do, but why we do it and where we came from. Buffalo summers, GrassRoots Festival, BandsThatJam.com, Giant Panda Guerilla Dub Squad, the move to Ithaca. That is the real story. Time to tell it.
For the first time in 15 years, we are rebuilding the Brooks New Media website from scratch. The old WordPress site has been running since 2009. It did its job, but it does not reflect who we are anymore. New stack, new story, new services. Starting tonight.
brooksnewmedia.com ↗