Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
InvoiceFlow
Resumen
Descripción del creador (original en inglés)
Create invoices, clients, and Stripe payment links from any agent. 7 tools. No email or deletes.
Los tres pilares de PopNx MCP
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
- Opinión de usuariosiAún no hay reseñasLas reseñas se abrirán junto con las cuentas en una etapa posterior
- Nuestras revisiones básicasi3 de 3 superadasRevisado con información pública; el código aún no se ha escaneado
- UsoiAún sin medir★ –
Qué puedes hacer con él
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
- Conexión: Se ejecuta en la nube
- Transporte: Streamable HTTP
- Categoría: Tiendas en línea y pagos
- Debes completar: Authorization
Instalación
Elige la app de IA que usas y copia la configuración.
Antes de instalar
- Revisiones básicas: 3 de 3 superadas
- Se ejecuta en el servidor del creador: lo que le pidas pasa por su servidor.
- Puede hacer 7 cosas (herramientas) invoiceflow_whoami, invoiceflow_create_client, invoiceflow_list_clients, invoiceflow_create_invoice …
- Debes completar tú:
Authorization
Los valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
- Se ejecuta en la nubeNo hay nada que instalar; se conecta por internet
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Ejecuta esto en tu terminal
claude mcp add --transport http invoiceflow https://invoiceflow-ten-azure.vercel.app/api/mcp --header 'Authorization: your-value'Completa los valores vacíos antes de ejecutarlo.
O copia la configuración tú
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"invoiceflow": {
"url": "https://invoiceflow-ten-azure.vercel.app/api/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
O copia la configuración tú
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"invoiceflow": {
"type": "http",
"url": "https://invoiceflow-ten-azure.vercel.app/api/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Esta dirección necesita una clave en un header de la solicitud, y el menú para agregar conectores no puede ponerla. Usa Claude Code, Cursor o VS Code.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Valores que debes completar
Authorizationsecreto obligatorio HTTP headerBearer token: `Bearer ifk_...` where ifk_... is an InvoiceFlow API key. Without it the server lists tools but every call explains what is missing.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Qué puede hacer
Nombres y descripciones de las herramientas tal como los informó el servidor el 6 nov 2026. Los escribió el creador, no nosotros; los mostramos como texto sin formato.
invoiceflow_whoamiCheck which InvoiceFlow account this key belongs to and that the key works. Call this first; it is the cheapest way to fail early.
invoiceflow_create_clientCreate a customer record. A client is required before an invoice can be created. Returns the new client id.
invoiceflow_list_clientsList existing clients. Use this before create_client to avoid making duplicate customer records.
invoiceflow_create_invoiceCreate a DRAFT invoice for an existing client. Amounts are INTEGER CENTS: unitPrice 25000 means $250.00, not $25,000. Do not send totals - the server derives subtotal and total from the line items. Does not email anyone.
invoiceflow_list_invoicesList invoices with their status and totals. Invoices belonging to other accounts are not visible and return as absent, not as errors.
invoiceflow_get_invoiceFetch one invoice by id, including line items and derived totals.
invoiceflow_share_invoiceGet the public payment page link for an invoice that is SENT or OVERDUE (drafts cannot be shared). The page shows a Pay button when the account owner has connected Stripe. Does not email anyone.
Revisiones básicasi
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
- ✓ Superada
El creador coincide con el repo
El nombre en el registro se verificó con la cuenta de GitHub EarthyPunyapat, dueña del repo
- … Aún sin revisar
Sigue en mantenimiento
Todavía no hemos leído este repo en GitHub
- … Aún sin revisar
Tiene licencia
Todavía no hemos leído este repo en GitHub
- ✓ Superada
El endpoint responde
Respondió en 130 ms (HTTP 200)
- – No aplica
Inicio de sesión con OAuth
No hace falta iniciar sesión
- ✓ Superada
Sin instrucciones ocultas en las descripciones de herramientas
Leímos 7 descripciones de herramientas y no encontramos instrucciones ocultas para la IA
Comparado con otros en Tiendas en línea y pagosi
- Más estrellas que el 0% de los otros 2550 servidores de esta categoría
- Publicado en el registro más recientemente que el 81% de los otros 2550 servidores de esta categoría
- Revisiones básicas iguales o mejores que el 100% de los otros 2550 servidores de esta categoría
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Preguntas frecuentes
¿Es seguro InvoiceFlow?
Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
¿Qué claves o códigos necesita?
Debes completar: Authorization
¿Se ejecuta en mi computadora o en la nube?
Se ejecuta en la nube del creador. Te conectas por internet sin instalar nada, pero lo que envías pasa por los servidores del creador.
¿Sigue en mantenimiento?
El repo de GitHub cambió por última vez –, y la última versión (1.0.0) llegó al registro hace 6 días.
¿Qué apps pueden usarlo?
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
¿Qué puedo usar en su lugar?
En la misma categoría: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
Alternativas
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Stripe MCP
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README del creador
Abrir el README
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
InvoiceFlow
Professional invoices, Stripe payment links, reminders, and currency-safe reporting. 14 days free, then US$9/month.
-000000?style=flat-square&logo=next.js&logoColor=white)
Features • Architecture • Local Development • Deployment
InvoiceFlow is an invoicing app for freelancers. Manage clients, create branded invoices and estimates, share public payment links, collect payments through Stripe Connect, and automate overdue reminders.
MCP server (agents)
InvoiceFlow ships a dependency-free Model Context Protocol server, so an agent in Claude Desktop, Cursor, or any MCP host can create invoices and get payable Stripe links without reading a REST document.
{
"mcpServers": { "invoiceflow": { "command": "node", "args": ["/abs/path/invoiceflow-mcp.mjs"], "env": { "INVOICEFLOW_API_KEY": "ifk_..." } } } }
Download the server from https://invoiceflow-ten-azure.vercel.app/sdk/invoiceflow-mcp.mjs.
Tools: whoami, create_client, list_clients, create_invoice, list_invoices, get_invoice, share_invoice.
The omissions are the design. No tool sends email, deletes, refunds, or pays. Creating an invoice is additive and a human can undo it; an agent that emails a customer on every retry cannot take that back. Amounts are integer cents named unitPrice, and a non-integer is refused with an explanation rather than rounded, because 25.5 silently meaning 25 cents is the defect most likely to reach a real customer.
Verify it yourself, no account required:
curl -sO https://invoiceflow-ten-azure.vercel.app/sdk/invoiceflow-mcp.mjs
curl -sO https://invoiceflow-ten-azure.vercel.app/sdk/invoiceflow-client.mjs curl -sO https://invoiceflow-ten-azure.vercel.app/sdk/test-mcp.mjs node test-mcp.mjs # 14 passed, 0 failed — no key, no network
Stack
- Node.js 22 and pnpm 10.34.9 (
packageManagerinpackage.json) - Next.js 15 App Router, React 18, TypeScript, Tailwind CSS and Framer Motion
- NextAuth v5 with Google OAuth and JWT sessions
- Prisma 5 and PostgreSQL 16; Docker Compose locally, Neon for deployment
- Stripe Connect Express and Checkout; Resend and React Email
- Vitest unit and PostgreSQL integration tests; ESLint and GitHub Actions
Implemented workflows
| Area | Behavior |
|---|---|
| Clients and invoices | Owner-scoped management, line items, percentage tax, draft editing and controlled status changes |
| Invoice delivery | Save & Send calls the email endpoint; accepted email uses a stable public link, failed delivery keeps one saved draft, explicit resends are available |
| Public invoices | Branded view, readable multi-page PDF export with saved notes and correct tax breakdown, unguessable share tokens and noindex metadata |
| Online payments | Tax-inclusive grand total, reuse of open Checkout sessions, signed webhook reconciliation |
| Reminders | Escalating email reminders for sent and overdue invoices |
| Recurring invoices | Scheduled draft generation and schedule advancement in one database transaction |
| Estimates | Create and manage estimates; convert an estimate to an invoice once |
| Reports and exports | Revenue, outstanding balances, aging, client reports and CSV export |
| Business profile | Name, address, logo, accent color and invoice numbering prefix |
Every account starts with a 14-day free trial; InvoiceFlow Pro then costs US$9/month through Stripe Checkout, with card changes and cancellation in the Stripe billing portal. After the trial, creating and sending invoices requires an active subscription; existing records, PDFs, exports and clients' payments stay available. Invoice payments go to each user's own Stripe account and are separate from their InvoiceFlow subscription. Decisions are recorded in the launch spec.
Interface and design guidance
The public site, Google sign-in and workspace use a warm-white, dark-ink and evergreen visual system, with an interactive example invoice, compact tables and keyboard-friendly mobile navigation. Reports retain separate totals for each currency. Client creation is available inside invoice and estimate drafts.
Read PRODUCT.md and DESIGN.md before changing the interface. The requested Emil Kowalski, Impeccable, Taste and frontend-design skills are installed locally under .agents/skills, with upstream revisions and licenses. The design review records rendered checks and deliberate tradeoffs.
Local development
Install Node.js 22 and the pinned pnpm version first. Keep existing local configuration rather than replacing it.
pnpm install --frozen-lockfile
test -e .env || cp .env.example .env
Configure .env before continuing.
docker compose up -d --wait pnpm run db:generate pnpm run db:deploy pnpm run dev
Use the local PostgreSQL URL from .env.example for both DATABASE_URL and DATABASE_URL_UNPOOLED. Generate an AUTH_SECRET, add Google OAuth credentials, and use http://localhost:3000 for NEXTAUTH_URL and NEXT_PUBLIC_APP_URL. Register http://localhost:3000/api/auth/callback/google in the Google OAuth client.
Leave optional Stripe and Resend keys empty until you have valid credentials; the example strings are placeholders. Unconfigured integrations return an unavailable response. Google sign-in and the full send/pay workflow require their actual service configuration.
pnpm run db:deploy applies committed migrations to a new development database. If an existing database was created using prisma db push, follow the baseline procedure before applying migrations. Never use db push or migrate reset to deploy production schema changes.
The Compose database uses a persistent named volume. docker compose down stops it without deleting that volume.
Optional demo data:
# Only against a disposable development database.
pnpm run db:seed
The seed replaces the account selected by SEED_DEMO_EMAIL (default demo@invoiceflow.dev) and its related data. Do not target a real customer account or production database.
PDF exports
PDF downloads use a measured A4 layout with separate sender/recipient blocks, issue/due dates, currency, status, itemized charges, tax and total. Long records paginate with repeated table headings. Saved invoice Notes are included under “Notes & payment instructions”; payment details and a billing period can be entered there. The PDF reflects the saved invoice amounts and does not change payment status or data.
View the synthetic PDF example and layout review. Generate short, normal and long review fixtures without database/provider access:
pnpm exec tsx scripts/preview-invoice-pdf.ts
Configuration
| Variable | Use |
|---|---|
DATABASE_URL | Prisma runtime PostgreSQL connection; use Neon's pooled URL in deployment |
DATABASE_URL_UNPOOLED | Direct database connection for Prisma migrations |
AUTH_SECRET | Stable, private NextAuth signing/encryption secret |
AUTH_GOOGLE_ID, AUTH_GOOGLE_SECRET | Google web OAuth client credentials |
NEXTAUTH_URL | Canonical auth origin; HTTPS in production |
AUTH_TRUST_HOST | Set to true only behind the trusted deployment proxy, such as Vercel |
NEXT_PUBLIC_APP_URL | Canonical public HTTPS origin for invoice, payment and email URLs |
STRIPE_SECRET_KEY | Stripe platform API key for Connect and Checkout |
STRIPE_WEBHOOK_SECRET | Signing secret for this deployment's connected-account webhook endpoint |
STRIPE_CONNECT_COUNTRY | Supported Connect country for newly created accounts; defaults to US |
RESEND_API_KEY, RESEND_FROM_EMAIL | Email API key and a sender on a verified Resend domain |
FREELANCER_NOTIFY_EMAIL | Fallback only when the invoice owner has no email address |
CRON_SECRET | Bearer secret for scheduled invoice generation and reminders |
SEED_DEMO_EMAIL | Disposable account targeted by the destructive demo seed |
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY is reserved in the example configuration; the current hosted Checkout redirect does not use a browser Stripe SDK. The INNGEST_* variables are also unused.
Keep secrets in ignored local environment files or the hosting provider's secure settings. Preview and production deployments should use separate databases and service keys.
Validation
pnpm test
pnpm run lint NEXT_PUBLIC_APP_URL=https://invoiceflow.example.test pnpm run build pnpm run typecheck
After building, against the disposable local test DB:
pnpm run test:browser pnpm audit --prod --audit-level high
For these local browser checks, the build uses the HTTPS test origin above; Vercel releases use the real configured production origin. Next.js embeds NEXT_PUBLIC_APP_URL during the build.
The build generates Prisma Client, compiles all routes, and produces the production application. Production Vercel builds first verify and migrate the database with a guarded release step; local and preview builds require explicit database preparation. Google Fonts access is needed for the configured next/font loader. Prisma downloads must retain TLS and checksum verification.
Integration tests use a separate disposable local database named invoiceflow_test. Create it once:
docker compose exec -T db createdb -U postgres invoiceflow_test
Then run:
export DATABASE_URL='postgresql://postgres:postgres@localhost:5432/invoiceflow_test?schema=public'
export DATABASE_URL_UNPOOLED="$DATABASE_URL" pnpm run db:deploy pnpm run test:integration
Run these exports in a separate shell from the development server. The suite rejects remote databases and other database names. It uses real PostgreSQL transactions and signed Stripe fixtures, with external Stripe/Resend requests mocked. It covers invoice totals, public links, checkout reuse, webhook verification and retries, concurrent numbering/conversion, and recurring transaction rollback. It does not establish that live OAuth, payment or email credentials work.
GitHub Actions runs frozen installation, Prisma generation, migrations, lint, unit/integration tests, the production build, Chromium browser workflows, typechecking and a production dependency audit using PostgreSQL 16 and Node.js 22.
Deployment
Use the Vercel and Neon release guide for migration handling, service configuration, scheduled jobs and the re
Solo se muestra el principio; lee el resto en el repo