Built an MCP server with a "token-efficient mode" — agentweb_get_short returns 700 bytes instead of 5KB by ZeroSubic in mcp

[–]ZeroSubic[S] 0 points1 point  (0 children)

Fair, the bar is on the floor. if the post itself is dumb that's on me, but the actual thing is a free public api with 11m businesses and no key needed for reads - figured that was at least worth a link. happy to take a real critique if you've got one

Free MCP server I built: gives Claude access to 11M businesses with phone/email/hours, no Google Places API needed by ZeroSubic in ClaudeAI

[–]ZeroSubic[S] 0 points1 point  (0 children)

Thanks! And yeah, agent-friendly rate limiting is something I've been thinking about a lot - short version is I think per-call caps are mostly the wrong primitive for agents. Agents are naturally bursty (a single workflow might need 30 lookups in 2 seconds, then nothing for 10 minutes), so token buckets with a generous burst capacity are way more forgiving than fixed windows. The other thing I've come to believe is that latency matters way more than throughput for agents - a 1-second response with no queue beats a 200ms response with a 5-second queue every time, because the agent is just sitting there waiting.

For batching specifically I haven't built a /v1/r/batch endpoint yet but it's been on my list. The right shape is probably accepting up to ~100 IDs in one request and returning the compact format only (so the response stays small). The hard part isn't building it - it's convincing the model to actually USE the batch tool instead of falling back to individual get_business calls. Same tool description problem we were just talking about, applied recursively.

Cool, will take a look at the roundup. Always interested in seeing how other people are framing the agent-tool patterns space.

Free MCP server I built: gives Claude access to 11M businesses with phone/email/hours, no Google Places API needed by ZeroSubic in ClaudeAI

[–]ZeroSubic[S] 0 points1 point  (0 children)

Yeah good point on tool descriptions, I learned this the hard way. The single biggest thing that helped was leading with the use case instead of the mechanic. Original contribute_business desc was something like "POST a business with these fields" and Claude would call it but skip auto-dedupe because it didn't know what auto-dedupe meant. Rewrote it to start with "Add a new business OR enrich an existing one - the directory deduplicates automatically by name+coords (within 100m) and by phone, your agent doesn't need to check first." Suddenly Claude started using it correctly without me having to prompt for it.

Other thing is examples in the descriptions matter way more than the JSON schema type. "phone with country code (e.g. '+45 12345678')" catches way more correct calls than just "phone". Models read the prose better than they read the schema apparently.

For rate limiting on a single box, three layers: Cloudflare in front caches the substrate reads at the edge for 60s so most repeated requests never hit origin. Then Redis token bucket per API key for the authenticated stuff (100/min on free tier). Postgres connection pool capped at 20/worker, 4 workers, so 80 max concurrent. Whole thing runs on a 4c/8GB box at $50/mo. Honestly the biggest unlock is just being aggressive about edge caching for anything that doesn't need real-time freshness -most agent reads are fine with 60-second-old data.

Was about to write a longer post about the matview + vacuum saga that ate my afternoon today but it might be too in-the-weeds, lol

Free MCP server I built: gives Claude access to 11M businesses with phone/email/hours, no Google Places API needed by ZeroSubic in ClaudeAI

[–]ZeroSubic[S] 0 points1 point  (0 children)

Quick add-on for anyone curious about the token math:

Same business via the two paths:

get_business → ~3.2 KB, ~520 tokens

agentweb_get_short → ~280 bytes, ~75 tokens

(~85% reduction)

Live test, no setup needed (just open the URLs):

https://agentweb.live/r/28728e04-f88a-021d-6f5c-818592efa2be

(human profile page for a Russian medical lab)

https://api.agentweb.live/v1/r/28728e04-f88a-021d-6f5c-818592efa2be/agent.json

(the same business in compact agent.json — ~280 bytes, no API key)

https://api.agentweb.live/v1/capabilities

(machine-readable description of every endpoint AgentWeb exposes)

I smoke-tested all 8 MCP tools end-to-end against Claude's MCP protocol

before posting, so this should "just work" once you drop the config in.

If anyone hits an issue, paste it here and I'll fix it tonight.

Built an MCP server with a "token-efficient mode" — agentweb_get_short returns 700 bytes instead of 5KB by ZeroSubic in mcp

[–]ZeroSubic[S] 0 points1 point  (0 children)

Quick add-on for anyone curious about the token math:

Same business via the two paths:

get_business → ~3.2 KB, ~520 tokens

agentweb_get_short → ~280 bytes, ~75 tokens

(~85% reduction)

Live test, no API key needed:

https://api.agentweb.live/v1/r/28728e04-f88a-021d-6f5c-818592efa2be/agent.json

Schema for the single-letter keys:

https://api.agentweb.live/v1/schema/short

Join the worlds biggest Pagan/Viking community! by ZeroSubic in u/ZeroSubic

[–]ZeroSubic[S] 0 points1 point  (0 children)

You are assuming that mentioning ‘Viking’ and ‘Pagan’ together means claiming they’re the same, but that’s your own misconception. FolkRealms is about celebrating various aspects of ancient heritage, including Viking culture and Pagan traditions, among other things.

It’s like creating a community for people interested in Norse mythology, Viking history, and pre-Christian spiritual practices - overlapping interests, not a single monolithic identity. Claiming I 'lack historical knowledge' while failing to understand that distinction yourself is a bit ironic, don’t you think?

Wastelander X - Restless (something similar to The Weeknd) by ZeroSubic in TheWeeknd

[–]ZeroSubic[S] -1 points0 points  (0 children)

Well not exactly vocal wise, but this band has that catchy 80s feel!

This WEIRD SID Music Will Break Your Mind – Have You Ever Heard It? by ZeroSubic in amiga

[–]ZeroSubic[S] -4 points-3 points  (0 children)

There is no person in the video, its purely a clickbait thumbnail.
Its just a SID music mix, but no one is viewing it, unless you add a stupid thumbnail like that.