Multi-Tenant Invoice Autofill MCP Server
Multi-Tenant Invoice Autofill MCP Server
Un servicio backend en Python que permite a los LLM con capacidad de llamada a funciones o compatibles con MCP (Claude, Gemini, GPT, etc.) autocompletar y guardar facturas en Digital Invoicing Software en nombre de los inquilinos.
Características
Soporte de doble transporte: Expuesto mediante el protocolo MCP estándar (stdio / Streamable HTTP) y API REST (FastAPI) con esquema OpenAPI.
Multitenencia y autenticación: Cifrado de credenciales por inquilino, claves de API MCP personalizadas y gestión de sesiones aislada.
Adaptador resiliente: Adaptador HTTP encapsulado que replica las cabeceras del navegador, con renovación reactiva de la sesión y análisis dinámico de la caducidad de las cookies.
Idempotencia y concurrencia: Desduplicación mediante hash de documento y bloqueo distribuido Redis por inquilino (
lock:tenant:{id}).Privacidad ante todo: Capa obligatoria de depuración de registros estructurados que elimina contraseñas, cookies, claves y tokens.
Cero valores codificados: Sin credenciales ni identidades de negocio incrustadas en código, comentarios o pruebas; generación completa de datos de prueba sintéticos.
Related MCP server: Invoice MCP Server
Requisitos previos locales
Python 3.12+
Docker y Docker Compose (para Postgres y Redis locales)
Primeros pasos
1. Configuración del entorno
Copia .env.example a .env y establece las variables locales:
cp .env.example .env2. Inicia la base de datos local y Redis
docker-compose up -d3. Instala las dependencias
python -m venv .venv
# Windows:
.\.venv\Scripts\pip install -r requirements.txt
# Linux/macOS:
source .venv/bin/activate
pip install -r requirements.txt4. Ejecuta las migraciones
.\.venv\Scripts\alembic upgrade head5. Inicia el servidor
# Start FastAPI REST server:
.\.venv\Scripts\uvicorn mcp_digitalinvoice.main:app --reload --port 8000
# Run MCP stdio server:
.\.venv\Scripts\python -m mcp_digitalinvoice.mcp_server.serverSeguridad
[!CAUTION] Gestión de la clave de cifrado: La variable de entorno
ENCRYPTION_KEYdebe establecerse con una clave Fernet segura de 32 bytes codificada en base64. El inicio de la aplicación fallará inmediatamente si no se proporcionaENCRYPTION_KEY. Si una clave de cifrado se utilizó alguna vez para cifrar datos reales de inquilinos y se sospecha que ha quedado expuesta, esos datos deben volver a cifrarse con una clave recién generada, ya que la clave anterior debe considerarse comprometida.
Flujos de trabajo
Incorporación de inquilinos (connect_account)
Llama a
connect_accountcon el correo de inicio de sesión, la contraseña y el nombre comercial del inquilino en Digital Invoicing Software.El servidor cifra las credenciales, las valida mediante un inicio de sesión inicial y devuelve una
mcp_api_keyúnica.Proporciona esta
mcp_api_keyal LLM (como token Bearer o cabecera) para las invocaciones posteriores de herramientas.
Autocompletado de facturas (fill_invoice)
El LLM invoca fill_invoice con la carga útil JSON de la factura extraída (buyer, items, meta). El servicio valida los campos obligatorios, aplica la secuenciación de un único documento, comprueba la idempotencia, resuelve la sesión del inquilino, mapea la carga útil al formato del sistema de destino y crea el borrador de la factura.
Ejecución de pruebas
.\.venv\Scripts\pytest -v tests/This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- -licenseNot gradedqualityBmaintenanceEnables AI assistants to prepare and create invoices via Outvoicer's invoicing platform using Streamable HTTP MCP.
- AlicenseNot gradedqualityCmaintenanceAllows AI clients like Claude and Cursor to authenticate and interact with an invoice generator backend, enabling login, invoice creation, and invoice download.29MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to securely interact with rental management data (leases, rent status, tenant records, tax filings) through a per-user OAuth 2.0 authenticated MCP server, with human-in-the-loop for sensitive actions.5AGPL 3.0
- AlicenseAqualityBmaintenanceMCP server for POP — enabling LLMs to generate, submit, and manage Italian e-invoices (FatturaPA/SdI), Peppol invoices, and PDF invoices directly from AI assistants.1657MIT
Related MCP Connectors
Connect MCP clients to 2,000+ AI models without managing provider API keys.
Brazil NFS-e service invoices for AI agents via Focus NFe and NFe.io. Stateless, never stores data.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Muhammad-Usman-Tariq/Mcp-Digitalinvoice'
If you have feedback or need assistance with the MCP directory API, please join our Discord server