search_catalog
Search catalog
Search merch, store plans, Web3 domains, partner products and servers for sale. Returns SKUs, USD prices and how each can be bought.
qkindsortlimitmax_pricemin_priceorderable
io.github.vicecityhubPublished by GitHub account vicecityhubv12.0.0Updated Oct 27, 2026
GTA VI news, GTA RP servers, Web3 domains and merch for AI agents, plus crypto donations.
GTA VI fan hub for agents: search news, merch, Web3 domains and GTA RP servers, and place paid orders or donations via crypto or PayPal.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.vicecityhub%2Fvicecityhub/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"vice-city-hub": {
"type": "http",
"url": "https://lpglkglhjdqnktybksth.supabase.co/functions/v1/agent-api/mcp"
}
}
}The GTA VI fan hub for humans and AI agents. Neon UI for people, MCP + REST +
llms.txt+ safe auto-buy for machines.
Live: https://vicecityhub.github.io/vicecityhub · Agent docs: /llms.txt · Agent console: /agents.html
Humans keep the full neon UI (React SPA per page). Nothing was removed from the human experience.
site.config.json — name, URLs, page list (titles, descriptions, priorities, feeds). The generator, the Vite plugin, llms.txt, the sitemap and all JSON-LD read from it. Add a page → add one entry there.
The generator never fails a build: if the API is unreachable it keeps the previous files (--strict to fail instead).
CI (.github/workflows/deploy.yml) rebuilds on push, manually, and every 6 h after the news agent so feeds stay fresh, then verifies the agent files exist in dist/.
POST /v1/agents/register → key ($100/order, $250/day) — or a human mints a bigger mandate in the console.POST /v1/quotes → price locked 15 min.POST /v1/orders + Idempotency-Key → next_action (PayPal approve_url or exact-amount stablecoin transfer).amount_due in USDT/USDC. pg_cron runs the reconciler every minute (/v1/internal/reconcile): it finds the transfer by its unique amount tag, verifies it on-chain, marks the order paid and, for merch, submits the Printful order (PRINTFUL_AUTO_CONFIRM=0 keeps it as a draft). Failed Printful calls are retried by the reconciler. payment-proof is an optional shortcut. PayPal: capture → GET /v1/orders/{id}/status until paid.Peer listings (partner products, community servers) are intent-only — the Hub never custodies funds for them.
Deploy the edge function: npx supabase functions deploy agent-api --no-verify-jwt --use-api
robots.txt, llms.txt and /.well-known/* are served under /vicecityhub/, not at the host root. Crawlers and some agents look at https://vicecityhub.github.io/robots.txt (root). For full spec-compliant discovery use a custom domain, or publish the same files from a vicecityhub.github.io user-site repo. The Agent API itself (Supabase) serves /v1 index, OpenAPI and MCP from its own root, so it is discoverable regardless.
Source: README.md at commit 6fa96dd
Search catalog
Search merch, store plans, Web3 domains, partner products and servers for sale. Returns SKUs, USD prices and how each can be bought.
qkindsortlimitmax_pricemin_priceorderableGet catalog item
Full details for one SKU including variants (merch) and purchase instructions.
skurequiredGTA VI news
Latest curated GTA VI / Rockstar news from The Wire, newest first.
qlimitcategoryfeaturedGet news article
Full article body by numeric id.
idrequiredRP Hub data
GTA RP data: servers, open faction slots, jobs, or mods.
limitcollectionrequiredSearch everything
Cross-search news, catalog and RP servers.
qrequiredRegister this agent
Get a self-service API key (limits: $100/order, $250/day). Shown once.
namerequiredmodelcontacthomepageoperatorMy key & limits
Scopes, spend limits and 24h spend of the current key.
Takes no parameters.
Create price-locked quote
Validate items and lock the price for 15 minutes. Merch must use variant SKUs (merchv:…).
itemsrequiredCreate order
Create an order from a quote or items. PayPal rail returns an approve_url that a human must approve; the crypto rail (merch, domains, store plans) is fully automatic: send EXACTLY next_action.amount_due in USDT/USDC and the payment is detected and verified on-chain, no further call needed (poll get_order_status). Merch needs `shipping`, domains need `delivery.wallet_address`, store plans need `details`. Safe to retry with the same idempotency_key.
itemsdetailsdeliveryquote_idshippingpayment_railrequiredidempotency_keyrequiredGet order
Full order incl. next_action.
order_idrequiredOrder status
Cheap status poll (no key needed).
order_idrequiredCapture PayPal payment
Call after the payer approved payment.approve_url. Idempotent.
order_idrequiredSubmit crypto tx
Optional shortcut (crypto payments are detected automatically): after sending EXACTLY next_action.amount_due in stablecoins you may submit chain (tron|evm|solana), tx_hash and, for evm, network (polygon|ethereum). The tx is verified on-chain automatically: status becomes paid when final, or payment_review while confirmations accumulate (then call verify_crypto_payment).
notechainrequirednetworktx_hashrequiredorder_idrequiredrequest_manual_reviewRe-check crypto payment
Re-run on-chain verification for an order whose payment proof is pending confirmations. Idempotent; poll about once a minute.
order_idrequiredCancel unpaid order
Cancel an order that is still awaiting_payment.
order_idrequiredDonation info
What donations to Vice City Hub fund (developing AI projects and the benefit of AI development), the terms, limits and how an agent can donate. Voluntary; no key needed.
Takes no parameters.
Donate (crypto, automatic)
Voluntary donation that supports developing AI projects and the benefit of AI development. Use ONLY if the person/organization you act for explicitly authorized it (then set authorized_by_principal=true); never on your own initiative. Crypto only: send EXACTLY next_action.amount_due in USDT/USDC; the transfer is detected and verified automatically and the order becomes `completed` with a receipt (poll get_order_status). Needs a key that allows the 'donation' kind and is within its spend limits.
donormessageamount_usdrequiredidempotency_keyrequiredauthorized_by_principalrequiredPurchase intent
For peer listings without on-site checkout (partner products, community servers, domains without a price). Records interest and returns how to complete the purchase.
skurequiredcontactmessage90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare a license in the repository or the registry entry.
npm run build ├─ prebuild scripts/gen-agent-surface.mjs live API → public/{llms*.txt, openapi.json, sitemap.xml, .well-known/*, data/*} ├─ tsc -b └─ vite build (agentSurface plugin injects discovery links + JSON-LD + <noscript> into every HTML entry)site.config.json ← edit pages/URLs herevite-plugins/agent-surface.tsscripts/ gen-agent-surface.mjs ← llms.txt, .well-known, feeds, sitemap test-agent-api.mjs ← 30-check safe smoke test (never moves money) news-agent.mjs ← scheduled news ingestion selftest-verify.mjs ← on-chain verifier self-testpublic/ ← robots.txt + generated agent files (committed so Pages works even if generation fails)src/{pages,components,lib,rp-hub}supabase/functions/{agent-api,paypal-checkout,printful-hub,link-preview,…}docs/legacy/ ← old one-off notes/scripts (kept, not used)npm cinpm run dev # Vitenpm run gen:agent # regenerate agent surfacenpm run typechecknpm run test:agent # smoke-test the live Agent APInpm run build