Arabic Pipeline API

Registre officiel Productivité

Pay-per-call Arabic text, audio and document utilities over x402. USDC on Base, no API key.

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 »).

Remote (streamable-http)
Claude Code
claude mcp add --transport http arabic-pipeline-api 'https://arabic-pipeline-mcp.arabic-pipeline.workers.dev/'
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "arabic-pipeline-api": {
            "type": "http",
            "url": "https://arabic-pipeline-mcp.arabic-pipeline.workers.dev/"
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Arabic Pipeline API
  2. Live endpoints
  3. Endpoints
  4. Try it
  5. How x402 payment works (for agents)
  6. Settlement
  7. Model endpoints
  8. Local development
  9. Deployment
  10. Licence

Arabic Pipeline API

Pay-per-call utilities for Arabic text, audio and documents, sold over x402 in USDC on Base.

No API key. No account. No subscription. The first request returns 402 Payment Required; the client signs a payment and retries; the money lands in the provider's wallet. That is the whole protocol — and it is why this service can pay a provider directly, with no payment processor in between.

url https://payapi.market/mcp

Live endpoints

URL
REST APIhttps://arabic-pipeline.arabic-pipeline.workers.dev
MCP server (streamable HTTP)https://arabic-pipeline-mcp.arabic-pipeline.workers.dev/
OpenAPIhttps://arabic-pipeline.arabic-pipeline.workers.dev/openapi.json
x402scanhttps://www.x402scan.com/server/298e1e2b-3f5c-4890-9791-6d063fd20931
MCP registryio.github.skypantherr/arabic-pipeline (v0.1.0, active)
Sourcehttps://github.com/skypantherr/arabic-pipeline

The MCP server exposes the same four capabilities as tools, each behind its own x402 payment (text_metrics, text_normalize, audio_transcribe, doc_extract).

Endpoints

RouteWhat it doesPriceCost to serve
GET /text/metrics?text=…Counts, language mix, sentence/word stats, reading time$0.002$0 (pure code)
POST /text/metricsSame, JSON body$0.002$0 (pure code)
POST /text/normalizeArabic text cleanup: tashkeel/tatweel, alef/ya/ta-marbuta folding, digit unification, bidi-control removal, whitespace collapse$0.005$0 (pure code)
POST /audio/transcribeAudio → clean text (Arabic or English)$0.02model call
POST /doc/extractDocument image/PDF → structured fields (receipts, invoices, IDs)$0.03model call

POST /text/normalize accepts a mode:

  • light — lossless: whitespace, digit unification, bidi cleanup only.
  • search — light + tashkeel removal + letter folding (أإآ→ا, ى→ي, ة→ه).
  • index — search + punctuation stripped (use as a dedup / index key).

Try it

# 1. Any paid route answers 402 with a payment challenge
curl -i https://arabic-pipeline.arabic-pipeline.workers.dev/text/normalize \
  -H 'content-type: application/json' \
  -d '{"text":"مُحَمَّدٌ عَلِيّ","mode":"search"}'

# 2. Free routes (no payment needed)
curl https://arabic-pipeline.arabic-pipeline.workers.dev/openapi.json
curl https://arabic-pipeline.arabic-pipeline.workers.dev/

How x402 payment works (for agents)

  1. Call the route with no payment header → 402 Payment Required.
  2. The response carries a base64 PAYMENT-REQUIRED header and, in the body, accepts[] entries describing how to pay (network, asset, price, payTo).
  3. Pick one entry, sign a payment for it, and retry the request with the PAYMENT-SIGNATURE header (base64 payment payload).
  4. The server verifies and settles the payment (via the facilitator) and returns the real result plus a PAYMENT-RESPONSE header with the receipt.

The full machine-readable contract — including per-operation x-payment-info — is at GET /openapi.json.

Settlement

  • Network: Base mainnet (eip155:8453), asset USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913).
  • Payments are verified and settled by a public x402 facilitator (https://x402.dexter.cash — no account, no fees). The facilitator only executes the buyer's signed payment; it never holds funds.
  • Settlement destination: 0x05523af5bd166816D1418Ebf7D6371e1fFB1D2e6.

Model endpoints

/audio/transcribe uses gemini-3.5-transcribe; /doc/extract uses gemini-3.6-flash with a JSON response schema. Both model names are configurable (GEMINI_TRANSCRIBE_MODEL, GEMINI_VISION_MODEL). The two text endpoints are pure computation and cost nothing to serve.

Local development

npm install
cp .dev.vars.example .dev.vars   # then add GEMINI_API_KEY
npm run dev                       # wrangler dev
npm test                          # vitest
npm run typecheck

Deployment

See DEPLOY.md. The short version: npm run login → npm run secret → npm run deploy → register the listing.

Two Workers are deployed from this repo:

npm run deploy              # REST API  -> arabic-pipeline.arabic-pipeline.workers.dev
npx wrangler deploy -c wrangler.mcp.toml   # MCP server -> arabic-pipeline-mcp.arabic-pipeline.workers.dev

Licence

MIT.

Questions fréquentes

Qu'est-ce que Arabic Pipeline API ?

Pay-per-call Arabic text, audio and document utilities over x402. USDC on Base, no API key.

Comment installer Arabic Pipeline API ?

Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http arabic-pipeline-api 'https://arabic-pipeline-mcp.arabic-pipeline.workers.dev/'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour Arabic Pipeline API ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

Arabic Pipeline API est-il open source ?

Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.

Qui maintient Arabic Pipeline API ?

Il est publié par skypantherr. 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.