GenesisPay
Let an AI agent find and pay for x402 APIs and products in USDC on Base, within owner-set limits.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http genesispay 'https://genesispay.finance/mcp'
{
"mcpServers": {
"genesispay": {
"type": "http",
"url": "https://genesispay.finance/mcp"
}
}
}
@genesis-tech/genesispay-mcpclaude mcp add genesispay -e 'GENESISPAY_AGENT_KEY=<your genesispay_agent_key>' -e 'GENESISPAY_BASE_URL=https://genesispay.finance' -- npx -y @genesis-tech/genesispay-mcp@1.10.0
{
"mcpServers": {
"genesispay": {
"command": "npx",
"args": [
"-y",
"@genesis-tech/genesispay-mcp@1.10.0"
],
"env": {
"GENESISPAY_AGENT_KEY": "<your genesispay_agent_key>",
"GENESISPAY_BASE_URL": "https://genesispay.finance"
}
}
}
}
Variables d'environnement
GENESISPAY_AGENT_KEYobligatoire secret Agent API key (gp_ag_...), created on the GenesisPay dashboard under the agent account's Keys tab.GENESISPAY_BASE_URLobligatoire Base URL of the GenesisPay deployment the agent key belongs to.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
genesispay-js
JavaScript/TypeScript SDKs for GenesisPay — stablecoin payments over HTTP 402 (x402) that work for both humans and AI agents. USDC on Base; every amount is integer minor units, never floats.
| Package | What it does |
|---|---|
@genesis-tech/genesispay-seller | Framework-agnostic payment gate: wrap any Fetch-API handler (Next.js, Hono, Bun) and it becomes a paid x402 endpoint. |
@genesis-tech/genesispay-agent | Agent-side client: pay x402-gated URLs (GET, or POST with an exact JSON body) from a policy-guarded agent wallet, discover payable services and shops, handle human approvals. |
@genesis-tech/genesispay-mcp | MCP stdio server (npx @genesis-tech/genesispay-mcp) exposing genesispay_discover / genesispay_shops / genesispay_quote / genesispay_shipping_profile / genesispay_pay / genesispay_payment_status / genesispay_account and more (16 tools, plus an MCP App product card) to Claude and other MCP clients. |
@genesis-tech/genesispay-protocol | Pure x402 V2 types, header codecs, validators, and EIP-3009 typed-data helpers. Zero I/O. |
Sell: gate an endpoint
import { createPaymentGate, genesisPaySettlement } from "@genesis-tech/genesispay-seller";
const gate = createPaymentGate({
amountUsdc: "0.10",
payTo: "0xYourWallet",
description: "Premium market data",
network: "base-sepolia",
});
export const GET = gate.wrap(async () => Response.json({ data: "…" }), {
verifySettlement: genesisPaySettlement({
facilitatorBaseUrl: "https://your-genesispay-instance.example",
apiKey: process.env.GENESISPAY_SELLER_KEY!, // gp_sk_...
}),
});
Buy: pay from an agent
import { GenesisPayAgent } from "@genesis-tech/genesispay-agent";
const agent = new GenesisPayAgent(); // env: GENESISPAY_AGENT_KEY, GENESISPAY_BASE_URL
const [service] = await agent.discover("weather api");
// Persist the key with your order before the first call, then reuse it on retries.
const result = await agent.pay(service.resourceUrl, { idempotencyKey: "saved-order-42", maxAmountUsdc: "0.50" });
if (result.settled) if (result.response) console.log(result.json()); // Replay has no captured resource body.
else console.log("Needs human approval:", result.approvalUrl);
Spending caps, allowlists, and approvals are enforced server-side by GenesisPay — the agent key never holds a raw private key.
Give your AI agent the tools
claude mcp add genesispay \
--env GENESISPAY_AGENT_KEY=gp_ag_your_key \
--env GENESISPAY_BASE_URL=https://your-genesispay-instance.example \
-- npx -y @genesis-tech/genesispay-mcp
See GenesisTechAT/genesispay-agent-skill
for the full agent skill (discovery-then-pay pattern, approval handling) and
config snippets for other MCP clients.
Development
npm ci
npm run build # tsc -b, dependency order
npm test # vitest, tests run from package sources
Node >= 20.9. Each package builds to dist/ with tsc; tests are colocated
(src/*.test.ts).
This repository is a read-only publish mirror — development happens in the main GenesisPay repository and is synced here. Issues and PRs are welcome and are folded back upstream.
Releasing
- Bump versions in
packages/*/package.json. - Confirm npm Trusted Publishing authorizes
.github/workflows/publish.ymlfor every package. The workflow uses GitHub OIDC (id-token: write); it does not read anNPM_TOKENsecret. - Tag the reviewed snapshot and push that tag.
- The publish workflow builds, tests, verifies pack manifests, and publishes only package versions absent from npm.
License
MIT © GenesisTech
Questions fréquentes
Qu'est-ce que GenesisPay ?
Let an AI agent find and pay for x402 APIs and products in USDC on Base, within owner-set limits.
Comment installer GenesisPay ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http genesispay 'https://genesispay.finance/mcp'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour GenesisPay ?
Oui. Il attend GENESISPAY_AGENT_KEY, GENESISPAY_BASE_URL, à renseigner dans sa configuration.
GenesisPay est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient GenesisPay ?
Il est publié par GenesisTechAT. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.