accueil / serveurs / Recherche & Web / com.x402git/git-x402
com.x402git/git-x402
serveur MCP (Model Context Protocol) · git-x402 0.2.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.x402git/git-x402 est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.x402git/git-x402 » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 6 outils
- check_version≈ 544 tokens
Wraps `GET /api/v/:owner/:slug`. The cheap call to make before every run: the latest version, when it was published, and the price. With `wallet_signature` it also answers what that wallet already owns and what the *next* fetch would cost it — `price_kind` is `new`, `update`, `free` or `owned`. Without one it never reveals what any address owns.
Paramètres, retour & exemple (3)
Paramètresslug· string · requis
The listing slug, e.g. `humanizer`.owner· string · requis
The creator handle, e.g. `adrian`.wallet_signature· string · optionnel
An `X-Wallet-Signature` value: `<address>.<nonce>.<signature>`, where the nonce comes from `POST /api/auth/challenge` and the signature is EIP-191 over the challenge message. Single use.
Exemple d'appel{"name": "check_version", "arguments": {"slug": "texte", "owner": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"slug": "texte", "owned": "texte", "owner": "texte", "latest": "texte", "status": "draft", "entitled": true, "price_kind": "new", "price_micro": "texte", "all_versions": true, "published_at": "texte", "releases_url": "texte", "resource_endpoint": "texte"}} - fetch_release≈ 382 tokens
Wraps `GET /api/r/:owner/:slug/v/:version`. A fresh five-minute download URL for a version this wallet already bought. Free, forever, including after the listing is retired. Never sells anything: if the wallet does not hold that version it is `not_entitled`, not a 402. `wallet_signature` is required — without a proved wallet there is nobody to be entitled.
Paramètres, retour & exemple (4)
Paramètresslug· string · requis
The listing slug, e.g. `humanizer`.owner· string · requis
The creator handle, e.g. `adrian`.version· string · requis
An exact version string, e.g. `1.2.0`.wallet_signature· string · requis
An `X-Wallet-Signature` value: `<address>.<nonce>.<signature>`, where the nonce comes from `POST /api/auth/challenge` and the signature is EIP-191 over the challenge message. Single use.
Exemple d'appel{"name": "fetch_release", "arguments": {"slug": "texte", "owner": "texte", "version": "texte", "wallet_signature": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"version": "texte", "expires_at": "texte", "download_url": "texte", "artifact_sha256": "texte"}} - get_listing≈ 390 tokens
Wraps `GET /api/label/:owner/:slug`. The free, unauthenticated manifest for a listing's latest passing release: file tree, sizes, licence, dependencies, security-scan result and release log. Costs nothing and needs no wallet, so read it before you buy. Computed facts and the creator's own claims are separately namespaced (`computed` vs `self_reported`).
Paramètres, retour & exemple (2)
Paramètresslug· string · requis
The listing slug, e.g. `humanizer`.owner· string · requis
The creator handle, e.g. `adrian`.
Exemple d'appel{"name": "get_listing", "arguments": {"slug": "texte", "owner": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"slug": "texte", "owner": "texte", "status": "live", "version": "texte", "computed": "texte", "manifest_url": "texte", "published_at": "texte", "self_reported": "texte", "artifact_sha256": "texte"}} - how_to_buy≈ 677 tokens
Free, no wallet needed. Returns whether the listing is for sale, its latest version and new-buyer price, the listing page a person can buy on with a browser wallet, the step-by-step skill an agent with a wallet follows, the raw x402 endpoint, and this server's URL. If you cannot sign transactions, answer the person with `without_a_wallet`; if you can, follow `with_a_wallet` or call `purchase`.
Paramètres, retour & exemple (2)
Paramètresslug· string · requis
The listing slug, e.g. `humanizer`.owner· string · requis
The creator handle, e.g. `adrian`.
Exemple d'appel{"name": "how_to_buy", "arguments": {"slug": "texte", "owner": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"slug": "texte", "owner": "texte", "latest": "texte", "status": "draft", "mcp_url": "texte", "for_sale": true, "price_usd": "texte", "skill_url": "texte", "listing_url": "texte", "price_micro": "texte", "manifest_url": "texte", "with_a_wallet": "texte"}} - purchase≈ 540 tokens
Wraps `GET /api/r/:owner/:slug` — the same quote → screen → verify → settle → grant sequence, with the purchase recorded as `source: mcp`. Call it once with no payment: you get the x402 `PaymentRequired` body back. It arrives as `isError: true` per the x402 MCP transport, but it is not a failure — it is the price, and `accepts[0]` is the requirement to sign. Sign that EIP-3009 authorization with your own key (this server never sees it) and call again with the payment as the base64 `payment_signature` argument or as `_meta["x402/payment"]`. On success you get the version, the sha256 of the artifact, a signed download URL that expires in five minutes, and the settlement transaction in `_meta["x402/payment-response"]`. Access is granted only after the facilitator returns a transaction hash. A $0 listing returns `granted` on the first call.
Paramètres, retour & exemple (5)
Paramètresslug· string · requis
The listing slug, e.g. `humanizer`.owner· string · requis
The creator handle, e.g. `adrian`.quote_id· string · optionnel
Required for any priced listing: echo `payment_required.extra.quote_id` from the 402 you are paying against. Omitting it on a priced buy is rejected `price_changed`; echoing a stale one is also `price_changed` with a fresh 402. Optional only for $0 listings.wallet_signature· string · optionnel
Optional `<address>.<nonce>.<signature>`. Send it to be quoted *your* price rather than the new-buyer price; when both are present the payer in the authorization must be the same address.payment_signature· string · optionnel
A base64 x402 payment payload signed locally against `accepts[0]` from a previous call. Equivalent to `_meta["x402/payment"]`; this argument wins when both are present. Omit both to get the 402.
Exemple d'appel{"name": "purchase", "arguments": {"slug": "texte", "owner": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - search_listings≈ 830 tokens
Free, no wallet needed. Searches every live listing — private repos, agent skills, prompt packs, toolkits — by what it does: the name, the creator's description and "use this when" line, the computed tags (artifact class, what is inside such as `skills` or `scripts`, languages) and the README. Describe the job in plain words, e.g. `humanize ai writing` or `changelog from git history`; leave `query` empty to list everything. Results are ordered by how many of your words matched and where, then by name — never by sales or popularity. Each result has the `owner` and `slug` the other tools take: read `get_listing` for the file tree and security scan, then `how_to_buy`.
Paramètres, retour & exemple (3)
Paramètreslimit· integer · optionnel
How many results to return, 1–25. Default 10; `total` says how many matched.query· string · optionnel
What you need the code or skill to do, in plain words. Omit or leave empty to list every live listing.max_price_micro· string · optionnel
Only listings a new buyer can get for at most this much, in micro-USDC: `5000000` is $5, `0` is free only.
Exemple d'appel{"name": "search_listings", "arguments": {"limit": 1, "query": "texte", "max_price_micro": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"query": "texte", "total": 1, "results": []}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».