MCP Server

mcp

com.gitbuyer/mcp
Commerce & Retail Developer Tools Public & reachable MCP 2026-07-28

What this MCP does

Searches repositories to build from and supports listing, selling, purchasing, and tracking sales of GitHub repositories.

create_payout_wallet
Create a payout wallet
The seller needs a payout wallet and does not have one: returns wizard_url, a one-time signed-in link to gitbuyer's in-browser wallet generator (keys created in the browser, shown once, never stored, never in the chat). Call whenever a user asks to create, make or generate a wallet, or says they have none.
Open world
Input schema
{'type': 'object', 'required': [], 'properties': {}}
create_store
List a repo for sale
List a GitHub repo for sale: URL, price, payout wallet(s); USDC on Base (0x…) and/or Solana (base58); both offers the buyer the choice. Private repos need a fine-grained PAT (Contents read-only, that one repo), unless the account has the GitHub App installed on the repo, in which case no key is needed at all. The listing is live at `page` immediately.
Open world
Input schema
{'type': 'object', 'required': ['github_url'], 'properties': {'price_usd': {'type': 'string', 'description': 'e.g. "25.00"; defaults to 20.00'}, 'github_pat': {'type': 'string', 'description': 'fine-grained PAT for private repos'}, 'github_url': {'type': 'string'}, 'wallet_base': {'type': 'string', 'description': 'USDC payout wallet on Base (0x…)'}, 'preview_paths': {'type': 'array', 'items': {'type': 'string'}, 'description': 'globs buyers may read free before paying'}, 'wallet_solana': {'type': 'string', 'description': 'USDC payout wallet on Solana'}}}
delete_store
Take a listing down
Take a store down and void its checkout so old links stop being payable.
Destructive Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'repo': {'type': 'string'}, 'owner': {'type': 'string'}}}
find_base
Find a base to build from
Say what you are building; get ONE repo to build from. The verdict is chosen by kind (starters first), freshness, and relevance, and comes with a plain-words why, the clone command target, and two alternatives. Adapting a proven base ships production-shaped code instead of a from-scratch demo. Needs no account.
Read only Open world
Input schema
{'type': 'object', 'required': ['building'], 'properties': {'building': {'type': 'string', 'description': 'what you are building, in task words, e.g. "a saas with stripe subscriptions and auth"'}}}
Output schema
{'type': 'object', 'properties': {'note': {'type': 'string'}, 'pick': {'type': ['object', 'null'], 'properties': {'kind': {'enum': ['listed', 'indexed'], 'type': 'string'}, 'repo': {'type': 'string'}, 'stars': {'type': ['integer', 'null']}, 'license': {'type': ['string', 'null']}, 'starter': {'type': ['boolean', 'null']}, 'pushed_at': {'type': ['number', 'null']}, 'repo_kind': {'type': ['string', 'null']}}, 'additionalProperties': True}, 'matched': {'type': 'string'}, 'building': {'type': 'string'}, 'alternatives': {'type': 'array', 'items': {'type': 'object', 'properties': {'kind': {'enum': ['listed', 'indexed'], 'type': 'string'}, 'repo': {'type': 'string'}, 'stars': {'type': ['integer', 'null']}, 'license': {'type': ['string', 'null']}, 'starter': {'type': ['boolean', 'null']}, 'pushed_at': {'type': ['number', 'null']}, 'repo_kind': {'type': ['string', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}
get_github
get github
The GitHub connection: installations, their repos (listed or not), and orphaned listings whose repo left the installation: the catalogue-management view.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {}}
get_repo
Read one repo in depth
Read one gitbuyer repo in depth before cloning or buying: facts (stars, forks, freshness, releases, license, repo_kind), topics, the README excerpt, and the exact next move (clone command for free repos; x402 checkout and test URL for paid listings). Needs no account.
Read only Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'repo': {'type': 'string'}, 'owner': {'type': 'string'}}}
Output schema
{'type': 'object', 'properties': {'kind': {'enum': ['listed', 'indexed'], 'type': 'string'}, 'repo': {'type': 'string'}, 'stars': {'type': ['integer', 'null']}, 'license': {'type': ['string', 'null']}, 'starter': {'type': ['boolean', 'null']}, 'pushed_at': {'type': ['number', 'null']}, 'repo_kind': {'type': ['string', 'null']}}, 'additionalProperties': True}
get_sales
Sales for a store
One store's settled payments, newest first: count and revenue (real money only), rehearsals flagged beside.
Read only Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'repo': {'type': 'string'}, 'owner': {'type': 'string'}}}
get_stats
get stats
The whole account at a glance: every store with its sales, revenue, visits, human/agent split and buy-intent file views, plus account totals. Start here for 'how am I doing?'.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {'days': {'type': 'integer', 'description': 'traffic window, default 30'}}}
get_store
Get one store
One listing's full settings: price, payout wallets, preview paths, whether a GitHub key is on file.
Read only Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'repo': {'type': 'string'}, 'owner': {'type': 'string'}}}
get_traffic
Traffic for a store
One store's audience: humans vs agents by day, unique visitors, countries and cities, referrers, the files buyers tried to open before paying.
Read only Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'days': {'type': 'integer', 'description': 'window, default 30, max 365'}, 'repo': {'type': 'string'}, 'owner': {'type': 'string'}}}
list_stores
List my stores
Every listed repo in this account: repo, page, price, checkout URLs.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {}}
search_repos
Search the marketplace
Find the best repo to BUILD ON: terms match names, descriptions, topics, categories, licenses and READMEs, ranked by relevance (name beats topics beats description beats README) plus base fitness (stars band, freshness, releases). Returns paid listings (buy at `page`, x402) and free indexed repos (clone from `github`) together, listed first, each with stars, forks, pushed_at, releases, license and a starter flag. Needs no account. Empty query browses.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {'sort': {'type': 'string', 'description': 'relevance (default with a query), stars (default without), or updated'}, 'limit': {'type': 'integer', 'description': 'max results, default 30'}, 'query': {'type': 'string', 'description': 'e.g. "fastapi stripe starter"'}, 'license': {'type': 'string', 'description': "SPDX id (MIT, Apache-2.0, ...) or 'permissive' for the whole build-on-it set"}, 'category': {'type': 'string', 'description': 'exact category filter'}, 'language': {'type': 'string', 'description': 'exact primary-language filter'}, 'starters': {'type': 'boolean', 'description': 'only templates, boilerplates and starters — repos meant as a base'}, 'min_stars': {'type': 'integer', 'description': 'only repos with at least this many stars'}, 'repo_kind': {'type': 'string', 'description': "what the repo IS: starter | app | library | tool | generator. Use 'starter' or 'app' when you want a base to ADAPT; results also carry repo_kind so you can reject mismatches before cloning."}, 'updated_within_days': {'type': 'integer', 'description': 'only repos pushed within this many days'}}}
Output schema
{'type': 'object', 'properties': {'note': {'type': 'string'}, 'count': {'type': 'integer'}, 'results': {'type': 'array', 'items': {'type': 'object', 'properties': {'kind': {'enum': ['listed', 'indexed'], 'type': 'string'}, 'repo': {'type': 'string'}, 'stars': {'type': ['integer', 'null']}, 'license': {'type': ['string', 'null']}, 'starter': {'type': ['boolean', 'null']}, 'pushed_at': {'type': ['number', 'null']}, 'repo_kind': {'type': ['string', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}
seller_setup
Set up selling
The seller setup wizard. Returns wizard_url: a one-time signed-in link to the full browser wizard — it can GENERATE a payout wallet safely (keys shown once in the browser, never stored, user must confirm saving them), connect GitHub, and list the first repo. Call this when the user wants to start selling, has no wallet, or asks to finish setup; offer wizard_url.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {}}
set_payout_wallets
Set payout wallets
Save the account's default payout wallets: USDC on Base (0x…) and/or Solana (base58). The onboarding wallet step: once saved, create_store needs only the repo URL, and a chain added here propagates to existing listings so the whole inventory offers it. An empty string clears a wallet.
Open world
Input schema
{'type': 'object', 'required': [], 'properties': {'wallet_base': {'type': 'string', 'description': 'USDC payout wallet on Base (0x…); empty string clears'}, 'wallet_solana': {'type': 'string', 'description': 'USDC payout wallet on Solana (base58); empty string clears'}}}
update_store
Update a listing
Edit a listing without re-listing it: reprice, rewallet, rekey, or change preview paths. Only the fields you send change; the old checkout is voided so stale links stop selling.
Open world
Input schema
{'type': 'object', 'required': ['owner', 'repo'], 'properties': {'repo': {'type': 'string'}, 'owner': {'type': 'string'}, 'price_usd': {'type': 'string'}, 'github_pat': {'type': 'string', 'description': 'new key; empty string clears'}, 'wallet_base': {'type': 'string'}, 'preview_paths': {'type': 'array', 'items': {'type': 'string'}}, 'wallet_solana': {'type': 'string'}}}
whoami
Who am I
Who am I signed in as, how many listings, live or rehearsal.
Read only Open world
Input schema
{'type': 'object', 'required': [], 'properties': {}}
Added
search_repos
Sept. 17, 2026, 12:35 p.m.
Added
get_repo
Sept. 17, 2026, 12:35 p.m.
Added
find_base
Sept. 17, 2026, 12:35 p.m.
Added
get_stats
Sept. 17, 2026, 12:35 p.m.
Added
get_github
Sept. 17, 2026, 12:35 p.m.
Added
get_traffic
Sept. 17, 2026, 12:35 p.m.
Added
get_sales
Sept. 17, 2026, 12:35 p.m.
Added
delete_store
Sept. 17, 2026, 12:35 p.m.
Added
update_store
Sept. 17, 2026, 12:35 p.m.
Added
create_store
Sept. 17, 2026, 12:35 p.m.
Added
create_payout_wallet
Sept. 17, 2026, 12:35 p.m.
Added
set_payout_wallets
Sept. 17, 2026, 12:35 p.m.
Added
get_store
Sept. 17, 2026, 12:35 p.m.
Added
list_stores
Sept. 17, 2026, 12:35 p.m.
Added
seller_setup
Sept. 17, 2026, 12:35 p.m.
Added
whoami
Sept. 17, 2026, 12:35 p.m.