Catàleg de tools
Totes les tools del MCP de Factuarea agrupades per domini, més les deu tools privilegiades de comptes gestionats, amb el scope que requereix cadascuna i la seva categoria de límit de peticions.
El servidor MCP de Factuarea publica 668 tools en els dominis de l’API pública. Aquesta pàgina és
la llista canònica; l'esquema d'entrada de cada tool es descobreix en temps
d'execució mitjançant tools/list. Cada tool es correspon amb la mateixa operació a la
Referència de la REST API. Les deu tools que aprovisionen comptes gestionats no formen part d'aquest
total: són al final, perquè una key necessita els scopes privilegiats
accounts:* per veure-les.
Com llegir aquest catàleg
- Tool — el nom de la tool MCP que invoca el teu agent.
- Scope — el scope granular que ha de tenir la credencial perquè la tool
aparegui a
tools/listi sigui invocable. Consulta Scopes i permisos. - Category — el bucket de límit de peticions al qual pertany la tool:
read,write,destructive,sendogenerate. Consulta Errors i límits de peticions.
Una credencial només veu les tools que cobreixen els seus scopes. Una API key amb el
super-scope * les veu totes 668; una key més restringida o un token OAuth en veu un subconjunt.
¹ Restringides a OAuth (només API key). 127 tools són accessibles únicament amb una
API key, mai a través d'una app OAuth de tercers: les 11 tools verifactu:write,
forget_delivery_note_signature (delivery_notes:gdpr_forget), les 20 tools de Pagaments i passarel·les (els scopes
stripe_autoinvoicing:*, payouts:read i integration_events:* són scopes
granulars, només API key), les 3 tools de Correus enviats i les 4 de registre de
peticions (emails:read i developers:read inspeccionen el trànsit de la
teva pròpia integració: són scopes de primera part, mai es concedeixen per
consentiment de tercers), les 14 tools de la cartera de NIF i
get_consolidated_workforce (companies:* és de primera part: mai es concedeix
a tercers per consentiment OAuth), les tools del compte —5 d'administració
(nif_transfers:* i account:owner), 16 de membres, grants i invitacions
(members:*, invitations:*) i 10 de webhooks de compte (fan servir els mateixos
scopes webhooks:* que les tools de webhooks d'empresa, però la capacitat de compte
rebutja un token OAuth): qui és titular d'un compte, qui hi pertany i on van els seus
esdeveniments mai no es cedeix a una app de tercers—, les 5 tools d'escriptura de compte
(account:write: crear, rotar o revocar API keys, substituir l'àmbit de NIF d'una key i
actualitzar la personalització del compte), les 33 tools de control horari els scopes
d'escriptura/transició de les quals (time_entries:write, absences:write,
absences:transition, work_schedules:write) són granulars i només API key,
fora del catàleg de consentiment OAuth (les seves lectures i employees:write
sí es concedeixen per OAuth), delete_automation_rule (automations:delete
es deixa fora del catàleg de consentiment OAuth a propòsit; els altres tres
scopes del motor d'automatitzacions —automations:read, automations:write i
automation_runs:read— sí es concedeixen) i les 9 tools d'esborrat de projectes
i tasques (projects:delete i tasks:delete no apareixen mai a la pantalla de
consentiment: llegir i escriure es concedeixen, esborrar no). Per tant, les
apps OAuth arriben a
541 de les 668 tools. Les deu
tools de comptes gestionats també són només API key i queden fora dels dos recomptes. Consulta la política de canals.
² Límit per lot — 200 ids per crida. bulk_send_invoices,
bulk_send_quotes, bulk_send_proformas i bulk_send_delivery_notes admeten
com a màxim 200 ids per crida, el mateix límit que les seves rutes REST
germanes (POST /v1/companies/{company}/{resource}/bulk-send). Un lot més gran
es rebutja abans d'enviar res: no s'envia cap correu ni es posa cap tasca a la
cua. Divideix el lot en blocs de 200 i repeteix la crida. El missatge d'error
cita dues xifres i res més —el límit i el que has enviat—, així que no retorna
cap id del lot:
No puedes enviar más de 200 facturas por lote. Has enviado 201. Divide el lote en bloques de 200 como máximo y repite la llamada.
Dominis
Factures
Factures: cerca, CRUD, rectificatives, ledger de pagaments parcials, transicions (issue/paid/sent/void/annul), programació, operacions massives, recordatoris, enllaços públics, PDFs, presentacions, encaminament administratiu i exportació a Excel. (51 tools)
| Eina | Scope | Categoria |
|---|---|---|
can_annul_invoice | invoices:read | read |
check_invoice_simplified_eligibility | invoices:read | read |
export_invoices_excel | invoices:read | read |
find_invoice_by_external_id | invoices:read | read |
find_invoice_by_number | invoices:read | read |
get_available_quarters | invoices:read | read |
get_invoice | invoices:read | read |
get_invoice_activities | invoices:read | read |
get_invoice_correctives | invoices:read | read |
get_invoice_payment_receipt | pdfs:read | read |
get_invoice_pdf | pdfs:read | read |
get_invoice_presentation | invoices:read | read |
get_invoice_public_link | invoices:read | read |
get_invoice_stats | invoices:read | read |
get_invoice_statuses | invoices:read | read |
list_invoice_administrative_revisions | invoices:read | read |
list_invoice_payments | invoices:read | read |
list_invoice_presentations | invoices:read | read |
list_payment_methods | invoices:read | read |
preview_invoice_reminder | invoices:read | read |
search_invoices | invoices:read | read |
annul_invoice | invoices:void | write |
assign_invoice_presentation | invoices:write | write |
assign_invoice_real_number | invoices:write | write |
bulk_change_invoice_status | invoices:write | write |
bulk_create_invoices | invoices:write | write |
bulk_delete_invoices | invoices:delete | destructive |
bulk_invoices_pdf_link | pdfs:read | generate |
bulk_send_invoices ² | invoices:send | send |
create_corrective_invoice | invoices:write | write |
create_invoice | invoices:write | write |
delete_invoice | invoices:delete | destructive |
duplicate_invoice | invoices:write | write |
issue_invoice | invoices:write | write |
mark_invoice_as_paid | invoices:write | write |
mark_invoice_as_sent | invoices:write | write |
mark_invoice_unsent | invoices:write | write |
quarterly_send_email | invoices:send | send |
register_invoice_payment | invoices:write | write |
reschedule_invoice | invoices:write | write |
revert_invoice_payment | invoices:write | write |
revise_invoice_administrative_routing | invoices:write | write |
revise_invoice_presentation | invoices:write | write |
schedule_invoice | invoices:write | write |
send_invoice | invoices:send | send |
send_invoice_reminder | invoices:send | send |
substitute_simplified_invoice | invoices:write | write |
unschedule_invoice | invoices:write | write |
update_invoice | invoices:write | write |
update_invoice_public_link | invoices:write | write |
void_invoice | invoices:void | write |
get_invoice retorna la factura completa pel seu id públic: dades comercials, ids de línia (UUIDv7), centres efectius, snapshot, override, versió i revisió administratives i els snapshots estructurats originals. Conserva null i les llistes buides tal com es van desar. get_invoice_pdf retorna l'enllaç signat de descàrrega exacte quan hi ha una sortida retinguda; el mode compatible encara pot retornar el PDF en base64. send_invoice pot adjuntar el fitxer FacturaE amb attach_facturae=true; amb submission_id adjunta aquella presentació existent, sense crear-ne ni reintentar-ne cap, i exigeix attach_facturae=true. update_invoice_public_link admet revoke, activate, extend (amb extend_days), reset o publish, aquest últim amb la referència exacta i la versió observada.
list_invoice_administrative_revisions llegeix la versió administrativa, el snapshot, l'override i l'historial pel id públic de la factura. Distingeix el null heretat de [] i no consulta els centres actuals del contacte. revise_invoice_administrative_routing afegeix una revisió administrativa amb la llista completa de centres, un motiu i expected_version (un enter positiu); [] esborra els centres efectius i no es modifica la fiscalitat. Si falta la versió respon 428; si és obsoleta, 409 amb current_version. Reintentar amb la versió antiga no duplica la revisió. Retorna la revisió creada i la seva pròpia administrative_version.
assign_invoice_presentation assigna un template_id (UUIDv7) o un null explícit per heretar, amb expected_version. Només s'aplica a esborranys de l'empresa autenticada i no modifica imports ni numeració. get_invoice_presentation llegeix l'estat visual i la captura retinguda d'un document autoritzat, i list_invoice_presentations llista les captures retingudes en ordre descendent, amb page/per_page i les metadades capturades; cap no escriu, consulta artefactes ni genera un PDF. revise_invoice_presentation crea una revisió visual auditada amb el seu pare, una comprovació compare-and-set (CAS) i els tokens autèntics de vista prèvia presentation_revision; current_legal només admet una correcció jurídica real d'una factura emesa. No reemet ni recalcula. Consulta Presentació de documents.
Contactes
(28 tools)
Els contactes fiscals canònics tenen rols acumulables de client, proveïdor i lead; són l’única superfície MCP pública per a identitats de tercers. No es publiquen tools separades de client o proveïdor. La plantilla CSV continua sent una descàrrega REST. Consulta Migració de contactes.
Noms retirats. Quatre tools de contactes continuen responent al seu nom anterior fins al 15 de novembre de 2026: search_clients (ara search_contacts), find_client_by_tax_id (ara find_contact_by_tax_id), create_client (ara create_contact) i bulk_create_clients (ara bulk_create_contacts). No apareixen a tools/list, s’apliquen els permisos de la successora i el resultat inclou _meta["io.factuarea/deprecation"] amb deprecated_tool, successor i sunset. Un argument antic sense equivalent es rebutja amb -32008 invalid_param_value i un hint que anomena l’argument i la successora; a search_clients són city, province, is_active, created_from, created_to i ending_before, i només s’admet una clau de cerca entre search, name, tax_id, email i phone, que passa a la cerca lliure q (d’almenys 2 caràcters) i només retorna clients actius; per llistar sense terme fes servir list_contacts amb roles=["customer"]. Passada la data, el nom antic respon com una tool inexistent (-32602).
| Tool | Scope | Categoria |
|---|---|---|
archive_contact | contacts:delete | destructive |
assign_contact_role | contacts:write | write |
bulk_archive_contacts | contacts:delete | destructive |
bulk_create_contacts | contacts:write | write |
bulk_change_contact_role_status | contacts:write | write |
bulk_delete_contacts | contacts:delete | destructive |
change_contact_role_status | contacts:write | write |
create_contact | contacts:write | write |
delete_contact | contacts:delete | destructive |
download_contact_import_errors | contacts:read | read |
find_contact_by_external_id | contacts:read | read |
find_contact_by_tax_id | contacts:read | read |
get_contact | contacts:read | read |
get_contact_activities | contacts:read | read |
get_contact_import | contacts:read | read |
get_contact_options | contacts:read | read |
get_contact_stats | contacts:read | read |
import_contacts | contacts:write | write |
list_contacts | contacts:read | read |
preview_contacts_import | contacts:write | write |
remove_contact_role | contacts:delete | destructive |
restore_contact | contacts:write | write |
search_contacts | contacts:read | read |
update_bank_accounts | contacts:write | write |
update_contact | contacts:write | write |
update_customer_profile | contacts:write | write |
update_supplier_profile | contacts:write | write |
verify_contact_census | contacts:read | write |
Productes
Catàleg: cerca, CRUD, opcions/combinacions configurables, ledger de stock, presentacions, variants, ofertes de proveïdor, accions massives, analítica i media. (40 tools)
| Eina | Scope | Categoria |
|---|---|---|
download_product_gallery_image | products:read | read |
download_product_video | products:read | read |
find_product_by_external_id | products:read | read |
find_product_by_sku | products:read | read |
get_product | products:read | read |
get_product_activities | products:read | read |
get_product_sales_analytics | products:read | read |
get_product_stats | products:read | read |
low_stock_report | products:read | read |
list_product_configurations | products:read | read |
list_product_options | products:read | read |
list_product_presentations | products:read | read |
list_product_stock_movements | products:read | read |
list_product_variants | products:read | read |
resolve_catalog_selection | products:read | read |
list_supplier_product_offers | products:read | read |
preview_product_base_unit_replacement | products:write | read |
search_products | products:read | read |
bulk_change_product_status | products:write | write |
bulk_delete_products | products:delete | destructive |
bulk_update_stock | products:write | write |
create_product | products:write | write |
create_product_presentation | products:write | write |
create_product_variant | products:write | write |
create_supplier_product_offer | products:write | write |
delete_product | products:delete | destructive |
delete_product_gallery_image | products:delete | destructive |
delete_product_presentation | products:write | destructive |
delete_product_variant | products:write | destructive |
delete_product_video | products:delete | destructive |
delete_supplier_product_offer | products:write | destructive |
replace_product_base_unit | products:write | write |
set_preferred_supplier_product_offer | products:write | write |
toggle_product_active | products:write | write |
update_product | products:write | write |
update_product_presentation | products:write | write |
update_product_variant | products:write | write |
update_supplier_product_offer | products:write | write |
upload_product_gallery_image | products:write | write |
upload_product_video | products:write | write |
create_product, update_product, create_product_variant,
update_product_variant, create_product_presentation i
update_product_presentation accepten gross_weight_kg: el pes brut de transport en
kg (fins a quatre decimals, més gran que zero) per unitat base en productes i variants
i per unitat comercial en presentacions fixes. A les tres tools d'edició, ometre'l
conserva el pes actual i null l'esborra. Els serveis, les unitats base de massa
(KGM, GRM) i les presentacions variable_measure el rebutgen amb
gross_weight_not_allowed.
preview_product_base_unit_replacement i replace_product_base_unit canvien la unitat base d'un
producte substituint-lo per un de nou. La vista prèvia calcula, sense escriure res, què passa
amb l'estoc, el preu, les presentacions, les variants, les ofertes de proveïdor, les tarifes i
els packs, i quins documents pendents continuaran apuntant al producte antic; és una lectura,
però requereix products:write i retorna l'impact_token que exigeix la substitució. La
substitució és irreversible: el producte antic queda desactivat amb el seu historial, exigeix
aquest impact_token i accepta idempotency_key.
Tarifes
Preus per client i document: gestionar ítems actius/retirats, opcions compactes i resoldre seleccions de catàleg configurable. (13 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_price_list | price_lists:read | read |
get_price_list_options | price_lists:read | read |
list_price_list_items | price_lists:read | read |
list_price_lists | price_lists:read | read |
resolve_catalog_price | price_lists:read | read |
resolve_many_catalog_prices | price_lists:read | read |
create_price_list | price_lists:write | write |
delete_price_list | price_lists:write | destructive |
delete_price_list_item | price_lists:write | destructive |
purge_retired_price_list_item | price_lists:write | destructive |
reassign_retired_price_list_item | price_lists:write | write |
update_price_list | price_lists:write | write |
upsert_price_list_item | price_lists:write | write |
Pressupostos
Pressupostos: cerca, CRUD, acceptar/rebutjar, enviar, convertir a factura, operacions massives, cerca per ID extern, enllaços públics, PDFs i presentacions. (24 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_quote_by_external_id | quotes:read | read |
get_quote | quotes:read | read |
get_quote_pdf | pdfs:read | read |
get_quote_presentation | quotes:read | read |
get_quote_public_link | quotes:read | read |
get_quote_stats | quotes:read | read |
get_quote_statuses | quotes:read | read |
list_quote_presentations | quotes:read | read |
search_quotes | quotes:read | read |
accept_quote | quotes:transition | write |
assign_quote_presentation | quotes:write | write |
bulk_change_quote_status | quotes:transition | write |
bulk_delete_quotes | quotes:delete | destructive |
bulk_quotes_pdf_link | pdfs:read | generate |
bulk_send_quotes ² | quotes:send | send |
convert_quote | quotes:transition | write |
create_quote | quotes:write | write |
delete_quote | quotes:delete | destructive |
duplicate_quote | quotes:write | write |
reject_quote | quotes:transition | write |
revise_quote_presentation | quotes:write | write |
send_quote | quotes:send | send |
update_quote | quotes:write | write |
update_quote_public_link | quotes:write | write |
get_quote_pdf retorna l'enllaç signat de descàrrega exacte (download_url) amb la seva caducitat (expires_at) quan hi ha una sortida retinguda, o el seu estat mentre encara s'està generant; el mode compatible retorna el contingut en base64. update_quote_public_link admet revoke, activate, extend (amb extend_days), reset o publish, aquest últim amb la referència exacta i la versió observada.
assign_quote_presentation assigna un template_id (UUIDv7) o un null explícit per heretar, amb expected_version. Només s'aplica a esborranys de l'empresa autenticada i no modifica imports ni numeració. get_quote_presentation llegeix l'estat visual i la captura retinguda d'un document autoritzat, i list_quote_presentations llista les captures retingudes en ordre descendent, amb page/per_page i les metadades capturades; cap no escriu, consulta artefactes ni genera un PDF. revise_quote_presentation crea una revisió visual auditada amb el seu pare, una comprovació compare-and-set (CAS) i els tokens autèntics de vista prèvia presentation_revision. Conserva la font capturada i admet el propòsit complete en format A4. No reemet ni recalcula. Consulta Presentació de documents.
Factures proforma
Proformes: cerca, CRUD, acceptar/rebutjar, enviar, convertir, operacions massives, cerca per ID extern, enllaços públics, PDFs i presentacions. (24 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_proforma_by_external_id | proformas:read | read |
get_proforma | proformas:read | read |
get_proforma_pdf | pdfs:read | read |
get_proforma_presentation | proformas:read | read |
get_proforma_public_link | proformas:read | read |
get_proforma_stats | proformas:read | read |
get_proforma_statuses | proformas:read | read |
list_proforma_presentations | proformas:read | read |
search_proformas | proformas:read | read |
accept_proforma | proformas:transition | write |
assign_proforma_presentation | proformas:write | write |
bulk_change_proforma_status | proformas:transition | write |
bulk_delete_proformas | proformas:delete | destructive |
bulk_proformas_pdf_link | pdfs:read | generate |
bulk_send_proformas ² | proformas:send | send |
convert_proforma | proformas:transition | write |
create_proforma | proformas:write | write |
delete_proforma | proformas:delete | destructive |
duplicate_proforma | proformas:write | write |
reject_proforma | proformas:transition | write |
revise_proforma_presentation | proformas:write | write |
send_proforma | proformas:send | send |
update_proforma | proformas:write | write |
update_proforma_public_link | proformas:write | write |
get_proforma_pdf retorna l'enllaç signat de descàrrega exacte (download_url) amb la seva caducitat (expires_at) quan hi ha una sortida preparada, o el seu estat mentre encara s'està generant; 404 pdf_artifact_not_found vol dir que cap PDF conservat coincideix amb la presentació, el propòsit i el format actuals del document; un PDF conservat que ha fallat en renderitzar-se o no es pot verificar respon l'error de PDF no disponible (500), i un d'esborrat per privadesa respon 410; el mode compatible retorna el contingut en base64. update_proforma_public_link admet revoke, activate, extend, reset o publish, aquest últim amb la referència exacta i la versió observada.
assign_proforma_presentation assigna un template_id (UUIDv7) o un null explícit per heretar, amb expected_version. Només s'aplica a esborranys de l'empresa autenticada i no modifica imports ni numeració. get_proforma_presentation llegeix l'estat visual i la captura retinguda d'un document autoritzat, i list_proforma_presentations llista les captures retingudes en ordre descendent, amb page/per_page i les metadades capturades; cap no escriu, consulta artefactes ni genera un PDF. revise_proforma_presentation crea una revisió visual auditada amb el seu pare, una comprovació compare-and-set (CAS) i els tokens autèntics de vista prèvia presentation_revision. Només conserva la font capturada i admet el propòsit complete en format A4. No reemet ni recalcula. Consulta Presentació de documents.
Albarans
Albarans: cerca, CRUD, lliurar/cancel·lar/signar, convertir, enviar, operacions massives, cerca per ID extern, enllaços públics, PDFs, presentacions i esborrat GDPR de la signatura. (26 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_delivery_note_by_external_id | delivery_notes:read | read |
get_delivery_note | delivery_notes:read | read |
get_delivery_note_pdf | pdfs:read | read |
get_delivery_note_presentation | delivery_notes:read | read |
get_delivery_note_public_link | delivery_notes:read | read |
get_delivery_note_stats | delivery_notes:read | read |
get_delivery_note_statuses | delivery_notes:read | read |
list_delivery_note_presentations | delivery_notes:read | read |
search_delivery_notes | delivery_notes:read | read |
assign_delivery_note_presentation | delivery_notes:write | write |
bulk_change_delivery_note_status | delivery_notes:transition | write |
bulk_delete_delivery_notes | delivery_notes:delete | destructive |
bulk_delivery_notes_pdf_link | pdfs:read | generate |
bulk_send_delivery_notes ² | delivery_notes:write | send |
cancel_delivery_note | delivery_notes:transition | write |
convert_delivery_note | delivery_notes:transition | write |
create_delivery_note | delivery_notes:write | write |
delete_delivery_note | delivery_notes:delete | destructive |
duplicate_delivery_note | delivery_notes:write | write |
forget_delivery_note_signature | delivery_notes:gdpr_forget ¹ | destructive |
mark_delivery_note_delivered | delivery_notes:transition | write |
revise_delivery_note_presentation | delivery_notes:write | write |
send_delivery_note | delivery_notes:write | send |
sign_delivery_note | delivery_notes:transition | write |
update_delivery_note | delivery_notes:write | write |
update_delivery_note_public_link | delivery_notes:write | write |
get_delivery_note_pdf retorna l'enllaç signat de descàrrega exacte (download_url) amb la seva caducitat (expires_at) quan hi ha una sortida preparada, o el seu estat mentre encara s'està generant; 404 pdf_artifact_not_found vol dir que cap PDF conservat coincideix amb la presentació, el propòsit i el format actuals del document; un PDF conservat que ha fallat en renderitzar-se o no es pot verificar respon l'error de PDF no disponible (500), i un d'esborrat per privadesa respon 410; el mode compatible retorna el contingut en base64. update_delivery_note_public_link admet revoke, activate, extend, reset o publish, aquest últim amb la referència exacta i la versió observada. A send_delivery_note, presentation_precondition identifica el PDF exacte que es va revisar, i expected_presentation_uuid i expected_publication_id fixen les identitats esperades. Per acceptar una presentació exacta, sign_delivery_note admet expected_presentation_id, expected_external_version, expected_source_token, expected_artifact_id i una operation_key (UUID v7); expected_publication_id és opcional si no hi va haver publicació. Aquests camps només tenen efecte quan la presentació revisionada està activada per a l'empresa; en cas contrari s'ignoren.
assign_delivery_note_presentation assigna un template_id (UUIDv7) o un null explícit per heretar, amb expected_version. Només s'aplica a esborranys de l'empresa autenticada i no modifica imports ni numeració. get_delivery_note_presentation llegeix l'estat visual i la captura retinguda d'un document autoritzat, i list_delivery_note_presentations llista les captures retingudes en ordre descendent, amb page/per_page i les metadades capturades; cap no escriu, consulta artefactes ni genera un PDF. revise_delivery_note_presentation crea una revisió visual auditada amb el seu pare, una comprovació compare-and-set (CAS) i els tokens autèntics de vista prèvia presentation_revision. Només conserva la font capturada i admet el propòsit complete en format A4. No reemet ni recalcula. Consulta Presentació de documents.
Documents de control
Document electrònic de control administratiu (DeCA) del transport de mercaderies per carretera: cerca, esborranys (també emplenats des d'albarans), emissió, modificació durant el servei, tancament, reobertura, anul·lació, substitució, enviament de la còpia al transportista per email, registre d'emissió i PDF de cada versió. (15 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_transport_document | transport_documents:read | read |
get_transport_document_evidence | transport_documents:read | read |
get_transport_document_pdf | pdfs:read | read |
get_transport_document_statuses | transport_documents:read | read |
search_transport_documents | transport_documents:read | read |
cancel_transport_document | transport_documents:transition | write |
close_transport_document | transport_documents:transition | write |
create_transport_document | transport_documents:write | write |
delete_transport_document | transport_documents:delete | destructive |
issue_transport_document | transport_documents:transition | write |
modify_transport_document | transport_documents:transition | write |
reopen_transport_document | transport_documents:transition | write |
send_transport_document | transport_documents:write | send |
supersede_transport_document | transport_documents:transition | write |
update_transport_document | transport_documents:write | write |
issue_transport_document, modify_transport_document, cancel_transport_document,
supersede_transport_document i send_transport_document són irreversibles i
accepten idempotency_key. get_transport_document_pdf retorna la URL pública
permanent i les metadades de la versió (sha256, mida), mai els bytes del PDF. El codi
QR i el justificant d'emissió són descàrregues binàries de la REST API sense tool
(GET /v1/companies/{company}/transport-documents/{transport_document}/qr i /issuance-proof), i els llocs de càrrega
només es gestionen a l'app. Consulta Document de control (DeCA).
search_transport_documents admet el mateix q (d'1 a 255 caràcters) i el mateix sort
que GET /v1/companies/{company}/transport-documents: transport_date, number, created o updated, amb
un - al davant per a l'ordre descendent i -transport_date per defecte.
create_transport_document no admet id, igual que l'endpoint REST: el genera el
servidor i un argument id s'ignora. Les tools d'alta i d'edició passen els UUID a
minúscules i responen a un shipments[].id que ja està en ús, o que és d'un altre
document, amb el mateix 422 a shipments.N.id que la REST API. Les tools que deixen
una entrada al registre d'emissió (emetre, modificar, tancar, reobrir, anul·lar,
substituir i enviar) l'atribueixen a la credencial que les crida (la clau d'API, o el
client OAuth amb l'usuari que el va autoritzar), mai a l'usuari que va crear la clau; get_transport_document_evidence
retorna aquest actor a actor_name i informa els tancaments automàtics com a
auto_closed.
Despeses
Despeses: cerca, CRUD, marcar com a pagada, ledger de pagaments parcials, operacions massives, llistes de pendents/vençudes, cerca per ID extern, adjunts de fitxer i rebuts de pagament. (19 tools)
create_purchase_invoice i update_purchase_invoice accepten el contracte de línia mesurada (purchase_measurement, discount_percent, price_source, source_line_index); duplicar des de source_purchase_invoice_id exigeix a més purchase_invoices:read. Consulta Línies de compra mesurades.
| Eina | Scope | Categoria |
|---|---|---|
download_purchase_invoice_file | purchase_invoices:read | read |
find_purchase_invoice_by_external_id | purchase_invoices:read | read |
get_purchase_invoice | purchase_invoices:read | read |
get_purchase_invoice_payment_receipt | pdfs:read | read |
list_purchase_invoice_expense_categories | purchase_invoices:read | read |
get_purchase_invoice_stats | purchase_invoices:read | read |
list_overdue_purchase_invoices | purchase_invoices:read | read |
list_pending_purchase_invoices | purchase_invoices:read | read |
list_purchase_invoice_payments | purchase_invoices:read | read |
search_purchase_invoices | purchase_invoices:read | read |
attach_purchase_invoice_file | purchase_invoices:write | write |
bulk_change_purchase_invoice_status | purchase_invoices:transition | write |
bulk_delete_purchase_invoices | purchase_invoices:delete | destructive |
create_purchase_invoice | purchase_invoices:write | write |
delete_purchase_invoice | purchase_invoices:delete | destructive |
delete_purchase_invoice_file | purchase_invoices:write | write |
mark_purchase_invoice_paid | purchase_invoices:transition | write |
register_purchase_invoice_payment | purchase_invoices:transition | write |
update_purchase_invoice | purchase_invoices:write | write |
Escàner de compres
Rep documents mitjançant l’API multipart o la bústia de l’escàner, consulta l’extracció i les evidències, corregeix camps, resol duplicats i crea un esborrany de compra. La pujada i descàrrega d’originals fan servir HTTP; MCP gestiona els escaneigs persistits. Consulta la guia de l’escàner de documents. (10 tools)
| Tool | Scope | Category |
|---|---|---|
search_purchase_scans | purchase_invoices:read | read |
get_purchase_scan | purchase_invoices:read | read |
get_purchase_scan_stats | purchase_invoices:read | read |
list_purchase_scan_emails | purchase_invoices:read | read |
save_purchase_scan_review | purchase_invoices:write | write |
convert_purchase_scan | purchase_invoices:write | write |
resolve_purchase_scan_duplicate | purchase_invoices:write | write |
retry_purchase_scan | purchase_invoices:write | write |
archive_purchase_scan | purchase_invoices:delete | destructive |
restore_purchase_scan | purchase_invoices:write | write |
Dues operacions de l'escàner de compres queden fora de MCP a propòsit i només
existeixen a REST: pujar un escaneig
(POST /v1/companies/{company}/purchase-scans)
és una pujada multipart/binària que MCP no pot transportar, i descarregar el
fitxer original
(GET /v1/companies/{company}/purchase-scans/{id}/source)
retorna el binari xifrat, per la qual cosa MCP n'exposa les metadades en el
seu lloc. PublicApiV1McpToolParityTest.php manté totes dues a la seva
allowlist. Substituir el fitxer original no té endpoint a v1 — només està
disponible des de l'aplicació web.
Factures recurrents
Plantilles recurrents: cerca, CRUD, crear des d'una factura, activar/pausar/reprendre/cancel·lar/ometre, canvi d'estat en bloc, previsualització, generar ara, cerca per ID extern, logs i activitat. (19 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_recurring_invoice_by_external_id | recurring_invoices:read | read |
get_recurring_invoice | recurring_invoices:read | read |
get_recurring_invoice_stats | recurring_invoices:read | read |
list_recurring_invoice_activities | recurring_invoices:read | read |
list_recurring_invoice_logs | recurring_invoices:read | read |
preview_recurring_invoice | recurring_invoices:read | read |
search_recurring_invoices | recurring_invoices:read | read |
activate_recurring_invoice | recurring_invoices:transition | write |
bulk_change_recurring_invoice_status | recurring_invoices:transition | write |
bulk_delete_recurring_invoices | recurring_invoices:delete | destructive |
cancel_recurring_invoice | recurring_invoices:transition | write |
create_recurring_invoice | recurring_invoices:write | write |
create_recurring_invoice_from_invoice | recurring_invoices:write | write |
delete_recurring_invoice | recurring_invoices:delete | destructive |
generate_recurring_invoice | recurring_invoices:transition | write |
pause_recurring_invoice | recurring_invoices:transition | write |
resume_recurring_invoice | recurring_invoices:transition | write |
skip_recurring_invoice | recurring_invoices:write | write |
update_recurring_invoice | recurring_invoices:write | write |
generate_recurring_invoice genera una factura ara des d'una recurrència de l'empresa autenticada i, segons generation_mode, pot emetre-la i enviar-la. És irreversible: requereix confirmació del host o de la UI i una clau d'idempotència, i els reintents reprodueixen la mateixa resposta. No canvia la configuració ni la data de l'intent. Exigeix recurring_invoices:transition, com pausar i reprendre, que és el que concedeix el scope OAuth recurring.generate_now; l'operació REST POST /v1/companies/{company}/recurring-invoices/{recurring_invoice}/generate continua exigint recurring_invoices:write.
Sèries
Sèries de numeració (editables sota les guardes fiscals de la numeració, mai s'eliminen): cerca, crear, actualitzar, arxivar/desarxivar, marcar per defecte, arrencar les quatre sèries per defecte d'una empresa acabada de donar d'alta, estadístiques, preferència de plantilla PDF i activitat. (15 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_series_by_code | series:read | read |
get_default_series_for_type | series:read | read |
get_series | series:read | read |
get_series_activities | series:read | read |
get_series_pdf_template | series:read | read |
get_series_stats | series:read | read |
list_active_series | series:read | read |
search_series | series:read | read |
archive_series | series:write | write |
assign_series_pdf_template | series:write | write |
bootstrap_series | series:write | write |
create_series | series:write | write |
mark_series_as_default | series:write | write |
unarchive_series | series:write | write |
update_series | series:write | write |
create_series amb un pdf_template_id exigeix la mateixa autorització que update_series. get_series_pdf_template llegeix la preferència de PDF d'una sèrie pròpia, la seva versió i la seva disponibilitat. Conserva la referència desada encara que ara no sigui elegible, i no genera documents ni altera la numeració. assign_series_pdf_template assigna una plantilla compatible de l'empresa, o neteja la preferència amb null per heretar. expected_version és la versió del CAS visual llegida de la sèrie, i un replay amb la mateixa clau es resol abans d'aquesta comprovació. No renumera ni genera un PDF. unarchive_series sempre funciona: si la plantilla PDF que conservava la sèrie ja no és seleccionable, la resposta afegeix warnings amb inherited_candidate_unavailable i la sèrie usa la plantilla per defecte aplicable, sense perdre la referència desada.
Plantilles PDF
Biblioteca de plantilles PDF de l'empresa: plantilles, marques comercials, actius privats, preferències per contacte i de l'empresa, revisions i impacte. Requereix el mòdul pdf_templates. (25 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_pdf_commercial_identity | pdf_templates:read | read |
get_pdf_commercial_identity_impact | pdf_templates:read | read |
get_pdf_commercial_identity_revision | pdf_templates:read | read |
get_pdf_template | pdf_templates:read | read |
get_pdf_template_asset | pdf_templates:read | read |
get_pdf_template_contact_default | pdf_templates:read | read |
get_pdf_template_defaults | pdf_templates:read | read |
get_pdf_template_impact | pdf_templates:read | read |
get_pdf_template_revision | pdf_templates:read | read |
list_pdf_commercial_identities | pdf_templates:read | read |
list_pdf_templates | pdf_templates:read | read |
archive_pdf_commercial_identity | pdf_templates:write | write |
archive_pdf_template | pdf_templates:write | write |
create_pdf_commercial_identity | pdf_templates:write | write |
create_pdf_template | pdf_templates:write | write |
duplicate_pdf_template | pdf_templates:write | write |
publish_pdf_commercial_identity_revision | pdf_templates:write | write |
publish_pdf_template_revision | pdf_templates:write | write |
restore_pdf_commercial_identity | pdf_templates:write | write |
restore_pdf_template | pdf_templates:write | write |
set_pdf_template_contact_default | pdf_templates:write | write |
set_pdf_template_defaults | pdf_templates:write | write |
update_pdf_commercial_identity | pdf_templates:write | write |
update_pdf_template | pdf_templates:write | write |
upload_pdf_template_asset | pdf_templates:write | write |
Crear, reanomenar, arxivar, restaurar i publicar una revisió, i desar preferències, exigeixen un administrador. Les tools que canvien una entitat existent porten expected_version (una comprovació compare-and-set), i un replay amb la mateixa clau es resol abans d'aquesta comprovació. create_pdf_template i create_pdf_commercial_identity creen una entitat nova, així que no porten expected_version; upload_pdf_template_asset crea un actiu privat nou i tampoc en porta. Reutilitza la idempotency_key en reintentar-les per no crear ni pujar res dues vegades. duplicate_pdf_template porta l'expected_version de la plantilla origen que has llegit i, amb idempotency_key, evita crear dues còpies. Les tools de lectura són lectures autoritzades de l'emissor i no necessiten clau d'idempotència ni precondició d'escriptura. Consulta la guia de la biblioteca de plantilles PDF.
Artefactes i vistes prèvies PDF
Artefactes i vistes prèvies PDF: preparar el PDF d'una captura autoritzada, executar el pla retingut, llegir les metadades i verificar l'original, i previsualitzar una plantilla. (5 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_pdf_artifact | pdfs:read | read |
read_pdf_artifact | pdfs:read | read |
prepare_pdf_artifact | pdfs:read | generate |
preview_pdf_template | pdfs:read + pdf_templates:read | generate |
render_pdf_artifact | pdfs:read | generate |
prepare_pdf_artifact prepara el PDF d'una captura autoritzada exacta; mai no crea una captura. render_pdf_artifact executa el pla retingut exacte en mode sync o async, sense fallback en viu. get_pdf_artifact llegeix les metadades segures de l'artefacte exacte; el sondeig mai no genera res. read_pdf_artifact verifica el PDF original i retorna les seves metadades amb un enllaç signat curt, mai base64. preview_pdf_template prepara una vista prèvia amb l'autoritat i els scopes pdfs:read + pdf_templates:read; no captura ni publica. Consulta Vistes prèvies i artefactes PDF.
Impostos
Impostos (catàleg de Factuarea més els propis de la teva empresa): cerca, alta, edició, esborrat, valors per defecte per empresa, comprovacions d'ús, càlculs d'impost/totals i el catàleg fiscal AEAT de només lectura (règims, causes d'exempció, tipus d'IRPF i els parells legals IVA ↔ recàrrec d'equivalència). (18 tools)
| Eina | Scope | Categoria |
|---|---|---|
calculate_tax | taxes:read | read |
calculate_totals | taxes:read | read |
check_tax_in_use | taxes:read | read |
get_active_taxes | taxes:read | read |
get_tax | taxes:read | read |
get_tax_catalog | taxes:read | read |
get_tax_defaults_for_document | taxes:read | read |
get_tax_stats | taxes:read | read |
get_taxes_by_type | taxes:read | read |
get_taxes_for_purchases | taxes:read | read |
get_taxes_for_sales | taxes:read | read |
search_taxes | taxes:read | read |
create_tax | taxes:write | write |
set_tax_as_default | taxes:write | write |
set_tax_default_for_document | taxes:write | write |
toggle_tax_active | taxes:write | write |
update_tax | taxes:write | write |
delete_tax | taxes:delete | destructive |
VeriFactu
SIF de l'AEAT: registres, esdeveniments, validació de cadena, reintent (d'un registre o de tots els bloquejats), subsanació de registres acceptats o rebutjats, representació per a la remissió per tercer, certificats, ajustos, declaració responsable i log d'accés a l'AEAT. (31 tools)
| Eina | Scope | Categoria |
|---|---|---|
find_verifactu_record_by_csv | verifactu:read | read |
find_verifactu_record_by_huella | verifactu:read | read |
find_verifactu_record_by_invoice_number | verifactu:read | read |
get_active_company_certificate | verifactu:read | read |
get_aeat_access_record | verifactu:read | read |
get_company_representation | verifactu:read | read |
get_declaracion_responsable | verifactu:read | read |
get_declaracion_responsable_history | verifactu:read | read |
get_invoice_verifactu | verifactu:read | read |
get_verifactu_activities | verifactu:read | read |
get_verifactu_config | verifactu:read | read |
get_verifactu_event | verifactu:read | read |
get_verifactu_event_summary | verifactu:read | read |
get_verifactu_record | verifactu:read | read |
get_verifactu_stats | verifactu:read | read |
list_aeat_access_records | verifactu:read | read |
list_company_certificates | verifactu:read | read |
list_verifactu_events | verifactu:read | read |
search_verifactu_records | verifactu:read | read |
validate_verifactu_chain | verifactu:read | read |
activate_company_certificate | verifactu:write ¹ | write |
create_invoice_verifactu | verifactu:write ¹ | write |
register_company_representation | verifactu:write ¹ | write |
retry_blocked_verifactu_records | verifactu:write ¹ | write |
retry_verifactu_event | verifactu:write ¹ | write |
retry_verifactu_record | verifactu:write ¹ | write |
revoke_company_certificate | verifactu:write ¹ | write |
revoke_company_representation | verifactu:write ¹ | write |
subsanar_verifactu_record | verifactu:write ¹ | write |
update_verifactu_settings | verifactu:write ¹ | write |
upload_company_certificate | verifactu:write ¹ | write |
FacturaE (FACe)
Facturació electrònica B2G: descarrega el XML FacturaE 3.2.2 d'una factura i gestiona les seves presentacions a FACe (enviar, seguir, cancel·lar). Requereix el mòdul facturae. (5 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_face_submission | facturae:read | read |
list_invoice_face_submissions | facturae:read | read |
cancel_face_submission | facturae:write | write |
get_invoice_facturae_link | facturae:read | read |
send_invoice_to_face | facturae:write | write |
cancel_face_submission exigeix a més la capacitat edit sobre el mòdul facturae; sense ella la crida respon 403 facturae_operation_forbidden.
Informes fiscals
Declaracions davant l'AEAT calculades a partir de les teves pròpies dades de facturació: genera el Modelo 303, el 347 i el 130 com a fitxer posicional oficial, PDF o llibre de revisió; previsualitza el desglossament sense persistir res; i llegeix l'històric de generacions, les seves estadístiques, la seva activitat i els seus fitxers. (9 tools)
| Eina | Scope | Categoria |
|---|---|---|
download_tax_report | tax_reports:read | read |
find_tax_report_by_period | tax_reports:read | read |
get_tax_report_activities | tax_reports:read | read |
get_tax_report_history | tax_reports:read | read |
get_tax_report_stats | tax_reports:read | read |
preview_tax_report | tax_reports:read | read |
generate_tax_report_130 | tax_reports:write | generate |
generate_tax_report_303 | tax_reports:write | generate |
generate_tax_report_347 | tax_reports:write | generate |
Davant l'AEAT només es presenta el txt_aeat; el PDF i el llibre són material de
revisió construït amb el mateix càlcul. Consulta
Informes fiscals.
Webhooks i esdeveniments
Endpoints de webhook d'un NIF, lliuraments, rotació de secret, ping/replay, esdeveniments de prova i el catàleg d'esdeveniments publicats. El compte té els seus propis endpoints: Webhooks de compte. (13 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_event | events:read | read |
get_webhook_delivery | webhooks:read | read |
get_webhook_endpoint | webhooks:read | read |
list_events | events:read | read |
list_webhook_deliveries | webhooks:read | read |
search_webhook_endpoints | webhooks:read | read |
create_webhook_endpoint | webhooks:write | write |
delete_webhook_endpoint | webhooks:delete | write |
ping_webhook_endpoint | webhooks:write | write |
replay_webhook_delivery | webhooks:write | write |
rotate_webhook_secret | webhooks:write | write |
test_webhook_endpoint | webhooks:write | write |
update_webhook_endpoint | webhooks:write | write |
Automatitzacions
El motor d'automatitzacions: regles amb la forma quan → si → fes, les versions immutables de la definició de cada regla, l'assaig que diu què faria una regla sense arribar a fer-ho, l'historial d'execucions amb els seus passos i els seus motius de descart tipificats, el rellançament d'un pas aparcat o d'una execució sencera, el catàleg d'activadors i accions amb els camps que exposa cada activador, i la quota mensual d'execucions. Requereix el mòdul automations. (18 tools)
replay_automation_run i replay_automation_run_step tornen a executar els
passos de debò: envien correus, entreguen webhooks i criden tercers. No és un
reintent innocu: confirma-ho amb la persona usuària abans d'invocar-les. La
feina s'encua, així que la resposta confirma que s'ha acceptat, no que hagi
acabat; comprova el desenllaç amb get_automation_run o
list_automation_run_steps.
| Eina | Scope | Categoria |
|---|---|---|
dry_run_automation_rule | automations:read | read |
get_automation_catalog | automations:read | read |
get_automation_rule | automations:read | read |
get_automation_rule_version | automations:read | read |
get_automation_run | automation_runs:read | read |
get_automation_trigger_fields | automations:read | read |
get_automation_usage | automations:read | read |
list_automation_rule_versions | automations:read | read |
list_automation_rules | automations:read | read |
list_automation_run_steps | automation_runs:read | read |
list_automation_runs | automation_runs:read | read |
activate_automation_rule | automations:write | write |
create_automation_rule | automations:write | write |
delete_automation_rule | automations:delete ¹ | destructive |
pause_automation_rule | automations:write | write |
replay_automation_run | automations:write | write |
replay_automation_run_step | automations:write | write |
update_automation_rule | automations:write | write |
Compte
Identitat fiscal i personalització del compte: verifica el par nom + NIF registrat de l'empresa contra el cens de l'AEAT, consulta plantilles de personalització i actualitza la personalització del compte. (4 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_account_billing | account:read | read |
get_account_personalization_templates | account:read | read |
update_account_personalization | account:write ¹ | write |
verify_account_census | account:read | write |
Administració del compte
Titularitat del compte i traspàs de NIF entre comptes: emetre, llistar, acceptar i revocar un traspàs de NIF, i passar la titularitat del compte a un altre membre. Són operacions del compte, no de les dades d'un NIF. En emetre un traspàs es retorna el seu secret un sol cop; el compte que el rep l'accepta amb aquest secret i el compte que l'entrega el pot revocar fins llavors. accept_nif_transfer, create_nif_transfer, revoke_nif_transfer i transfer_account_ownership són irreversibles: el servidor les publica amb destructiveHint: true i una entrada idempotency_key (consulta Protocol i transport). Quan els NIF acceptats necessiten places contractades i no n'hi ha cap de lliure, accept_nif_transfer compra les que falten, així que envia sempre una idempotency_key. (no formen part dels totals de dalt: * no cobreix els seus scopes)
| Eina | Scope | Categoria |
|---|---|---|
list_nif_transfers | nif_transfers:read ¹ | read |
accept_nif_transfer | nif_transfers:write ¹ | write |
create_nif_transfer | nif_transfers:write ¹ | write |
revoke_nif_transfer | nif_transfers:write ¹ | write |
transfer_account_ownership | account:owner ¹ | write |
Membres del compte
Les persones del compte: llistar i consultar els membres amb el seu rol de compte (owner, admin o member) i la seva marca d'assessor extern, afegir un membre, canviar-ne el rol o la marca d'assessor extern i retirar-lo, consultar, fixar i retirar el grant d'un membre sobre un NIF, consultar i fixar el seu accés per mòdul, i gestionar les invitacions que els creen. delete_account_member és irreversible: el servidor la publica amb destructiveHint: true i una entrada idempotency_key. (no formen part dels totals de dalt: * no cobreix els seus scopes)
| Eina | Scope | Categoria |
|---|---|---|
get_account_member | members:read ¹ | read |
get_account_member_grant | members:read ¹ | read |
get_account_member_module_access | members:read ¹ | read |
list_account_member_grants | members:read ¹ | read |
list_account_members | members:read ¹ | read |
get_account_invitation | invitations:read ¹ | read |
list_account_invitations | invitations:read ¹ | read |
create_account_member | members:write ¹ | write |
revoke_account_member_grant | members:write ¹ | write |
set_account_member_grant | members:write ¹ | write |
update_account_member | members:write ¹ | write |
update_account_member_module_access | members:write ¹ | write |
cancel_account_invitation | invitations:write ¹ | write |
create_account_invitation | invitations:write ¹ | write |
resend_account_invitation | invitations:write ¹ | write |
delete_account_member | members:write ¹ | destructive |
NIF del compte
La cartera de NIF del compte: llistar, cercar per identificador fiscal, consultar, donar d'alta, actualitzar, activar (un o diversos), desactivar i arxivar NIF, seguir i reconciliar l'alta d'un, les estadístiques de facturació per NIF, si un NIF ja pot emetre i una vista prèvia del càrrec d'afegir o activar NIF addicionals, a més de l'ús del compte en el període vigent (peticions i documents, amb desglossament per NIF). Els NIF addicionals es cobren per plaça contractada: get_additional_nif_seats consulta les places contractades, ocupades i lliures del compte, preview_additional_nif_seat_change previsualitza, sense cobrar, fixar-les en una quantitat i update_additional_nif_seats la fixa (quantitat absoluta, idempotent amb idempotency_key). Comprar places cobra al moment la diferència prorratejada; reduir-les té efecte en la renovació. Per sota de les places ocupades, deactivate llista els UUID dels NIF que es desactivaran en la renovació, exactament tants com sobren; si la reducció fa acabar un paquet d'oferta aplicat, accept_offer_package_loss (booleà) confirma la pèrdua. create_company, activate_company i activate_companies compren les places que falten quan no n'hi ha cap de lliure i el compte paga, així que envia una idempotency_key. Donar d'alta o reactivar un NIF addicional es pot cobrar: consulta NIF addicionals. (18 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_account_usage | account:read | read |
find_company_by_tax_id | companies:read ¹ | read |
get_additional_nif_seats | companies:read ¹ | read |
get_companies_stats | companies:read ¹ | read |
get_company | companies:read ¹ | read |
get_company_creation_status | companies:read ¹ | read |
get_company_issuing_readiness | companies:read ¹ | read |
get_company_seat_charge_preview | companies:read ¹ | read |
list_companies | companies:read ¹ | read |
preview_additional_nif_seat_change | companies:read ¹ | read |
activate_companies | companies:write ¹ | write |
activate_company | companies:write ¹ | write |
create_company | companies:write ¹ | write |
deactivate_company | companies:write ¹ | write |
update_additional_nif_seats | companies:write ¹ | write |
update_company | companies:write ¹ | write |
verify_company_creation | companies:write ¹ | write |
delete_company | companies:delete ¹ | write |
Webhooks de compte
Els endpoints de webhook del compte, diferents dels endpoints d'un NIF: crear, consultar, llistar, actualitzar i eliminar un endpoint, rotar-ne el secret de signatura, enviar un lliurament de prova, consultar-ne els lliuraments i reintentar-ne un de fallit. Un endpoint de compte rep els esdeveniments del compte i, segons account_relationship (own, managed o all), els dels seus NIF. Consulta Webhooks de compte. (10 tools)
Aquestes tools fan servir els mateixos scopes webhooks:* que Webhooks i esdeveniments, però funcionen només amb API key: un token OAuth mai no les llista i, si en crida una, rep 403 forbidden_action. Una clau de proves llegeix els endpoints de prova; crear, actualitzar, eliminar, rotar, provar i reintentar exigeixen una clau de producció. La persona que va emetre la clau ha de ser avui titular o administradora del compte, i la clau ha de cobrir tots els NIF del compte. delete_account_webhook i rotate_account_webhook_secret són irreversibles: el servidor les publica amb destructiveHint: true i una entrada idempotency_key.
| Eina | Scope | Categoria |
|---|---|---|
get_account_webhook | webhooks:read ¹ | read |
get_account_webhook_delivery | webhooks:read ¹ | read |
list_account_webhook_deliveries | webhooks:read ¹ | read |
list_account_webhooks | webhooks:read ¹ | read |
create_account_webhook | webhooks:write ¹ | write |
retry_account_webhook_delivery | webhooks:write ¹ | write |
rotate_account_webhook_secret | webhooks:write ¹ | write |
test_account_webhook | webhooks:write ¹ | write |
update_account_webhook | webhooks:write ¹ | write |
delete_account_webhook | webhooks:delete ¹ | write |
API keys
API keys self-service del teu compte: llistar, crear, consultar, veure'n l'ús diari, rotar el secret, revocar i substituir l'àmbit de NIF d'una key. L'àmbit nou no pot superar mai el de la credencial que el canvia. El secret es retorna un sol cop, en crear i en rotar. revoke_api_key i rotate_api_key_secret són irreversibles: el servidor les publica amb destructiveHint: true i una entrada idempotency_key. Consulta les claus acotades. (7 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_api_key | account:read | read |
get_api_key_usage | account:read | read |
list_api_keys | account:read | read |
create_api_key | account:write ¹ | write |
revoke_api_key | account:write ¹ | write |
rotate_api_key_secret | account:write ¹ | write |
update_api_key_nif_scope | account:write ¹ | write |
Control horari de la cartera
Panell consolidat de compliment horari de la cartera de NIF: una fila per NIF actiu dins de l'àmbit de la credencial, sense l'empresa titular del compte, amb l'estat del seu últim tancament mensual i els totals de l'últim tancament (saldo, hores extra i nombre d'empleats). Una sola crida agrega tota la cartera, mentre que la resta de tools de control horari opera sobre un NIF. (1 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_consolidated_workforce | companies:read ¹ | read |
Pagaments i passarel·les
Integracions de pagaments i botigues: facturació automàtica de Stripe, comptes connectats, liquidacions, safata d’esdeveniments, gestió i diagnòstic de botigues WooCommerce i Shopify. Aquestes eines només admeten API key. La disponibilitat també depèn dels mòduls de l’empresa i de la configuració del proveïdor. (26 tools)
replay_integrations_event té efecte fiscal real. Si la causa que va impedir
facturar ja està resolta, reprocessar un esdeveniment aparcat pot emetre una
factura de debò, amb el seu número de sèrie i el seu alta a VeriFactu. No és
un reintent innocu: confirma-ho amb la persona usuària abans d'invocar-la. No
duplica factures: el reprocés torna a passar per la mateixa comprovació
d'idempotència de l'intent original.
| Eina | Scope | Categoria |
|---|---|---|
get_integrations_event | integration_events:read ¹ | read |
get_payout | payouts:read ¹ | read |
get_stripe_autoinvoicing_config | stripe_autoinvoicing:read ¹ | read |
get_stripe_connected_account | stripe_autoinvoicing:read ¹ | read |
list_integrations_events | integration_events:read ¹ | read |
list_stripe_autoinvoiced_correctives | stripe_autoinvoicing:read ¹ | read |
list_stripe_autoinvoiced_payments | stripe_autoinvoicing:read ¹ | read |
list_stripe_charge_rules | stripe_autoinvoicing:read ¹ | read |
list_stripe_connected_accounts | stripe_autoinvoicing:read ¹ | read |
list_stripe_non_invoiced_charges | stripe_autoinvoicing:read ¹ | read |
search_payouts | payouts:read ¹ | read |
create_stripe_charge_rule | stripe_autoinvoicing:write ¹ | write |
delete_stripe_charge_rule | stripe_autoinvoicing:write ¹ | destructive |
disconnect_stripe_connected_account | stripe_autoinvoicing:write ¹ | write |
reorder_stripe_charge_rules | stripe_autoinvoicing:write ¹ | write |
replay_integrations_event | integration_events:write ¹ | write |
update_stripe_autoinvoicing_config | stripe_autoinvoicing:write ¹ | write |
update_stripe_charge_rule | stripe_autoinvoicing:write ¹ | write |
update_stripe_connected_account | stripe_autoinvoicing:write ¹ | write |
list_stores | stores:read ¹ | read |
get_store | stores:read ¹ | read |
connect_store | stores:write ¹ | write |
update_store | stores:write ¹ | write |
disconnect_store | stores:write ¹ | write |
test_woocommerce_store_connection | woocommerce_store:write ¹ | write |
test_shopify_store_connection | shopify_store:write ¹ | write |
Correus enviats
Registre de correus enviats: llista els correus que Factuarea ha enviat en nom de l'empresa (factures, pressupostos, albarans, recordatoris de pagament), consulta'n un pel seu id i resumeix d'una sola vegada com va acabar l'enviament d'un lot de fins a 100 documents. Fes-lo servir per respondre «s'ha enviat el correu d'aquesta factura?» i per investigar enviaments fallits. (3 tools)
L'estat descriu el lliurament al servidor SMTP de sortida, no el lliurament
real. sent significa que el servidor de correu de sortida va acceptar el
missatge: tot i així pot rebotar o acabar a spam sense que Factuarea se
n'assabenti. No existeixen els estats delivered, bounced ni opened;
queued, sending, sent i failed són els únics. No afirmis mai que la
persona destinatària el va rebre, el va obrir o el va llegir.
| Eina | Scope | Categoria |
|---|---|---|
get_emails | emails:read ¹ | read |
get_emails_indicators | emails:read ¹ | read |
list_emails | emails:read ¹ | read |
Registre de peticions a l'API
El trànsit de la teva integració contra l'API pública v1 dels últims 30 dies: llista les crides amb el seu mètode, ruta, codi d'estat, durada, prefix d'API key i entorn, amb filtres per només errors o per qualsevol d'aquests camps, i consulta'n una de concreta pel seu request_id, l'identificador opac que l'API retorna a la capçalera de cada resposta. list_developers_request_logs i get_developers_request_logs mostren les peticions d'un NIF; list_account_request_logs i get_account_request_log mostren les de totes les claus del compte, a l'entorn de la clau que crida. Les tools de compte funcionen només amb API key, emesa per un titular o administrador del compte i que cobreixi tots els NIF del compte: consulta els registres de peticions del compte. Fes-les servir per depurar una integració: què va cridar, quan, amb quin codi d'estat i quant va trigar. Les capçaleres, el cos i la query string no s'emmagatzemen i no es retornen mai. (4 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_account_request_log | developers:read ¹ | read |
get_developers_request_logs | developers:read ¹ | read |
list_account_request_logs | developers:read ¹ | read |
list_developers_request_logs | developers:read ¹ | read |
Empleats
Plantilla de personal: cerca, alta/edició/baixa/reactivació, estadístiques i el cicle d'invitacions (enviar/reenviar/cancel·lar i llistar invitacions d'empleat). Requereix el mòdul control_horario. (18 tools)
create_employee i reactivate_employee compren les places contractades que falten quan no n'hi ha cap de lliure i el compte paga: envia una idempotency_key perquè un reintent no cobri dos cops. Consulta Places d'empleat.
| Eina | Scope | Categoria |
|---|---|---|
find_employee_by_external_id | employees:read | read |
get_employee | employees:read | read |
get_employee_stats | employees:read | read |
list_employee_invitations | employees:read | read |
search_employees | employees:read | read |
cancel_employee_invitation | employees:write | write |
create_employee | employees:write | write |
deactivate_employee | employees:write | write |
reactivate_employee | employees:write | write |
resend_employee_invitation | employees:write | write |
send_employee_invitation | employees:write | write |
update_employee | employees:write | write |
cancel_employee_batch | employees:write | write |
confirm_employee_batch | employees:write | write |
get_employee_batch | employees:read | read |
list_employee_batches | employees:read | read |
prepare_employee_batch | employees:write | write |
refresh_employee_batch_quote | employees:write | write |
Places d'empleat
Facturació de les places d'empleat per plaça contractada: previsualitzar i consultar el càrrec i la facturació, subscriure, fixar les places contractades, canviar la quantitat i cancel·lar l'add-on, a més dels bescanvis d'ofertes de places. update_employee_seats fixa les places contractades (quantitat absoluta, idempotent amb idempotency_key): comprar cobra al moment la diferència prorratejada i reduir té efecte en la renovació, sense abonament. preview_employee_seat_charge previsualitza el càrrec, sense cobrar, de donar d'alta empleats o, amb contracted_seats, de fixar les places; contracted_seats no es combina amb count ni amb employee_ids. Quan la nova quantitat queda per sota de les places ocupades, update_employee_seats, update_additional_nif_seats i cancel_employee_seat_addon accepten deactivate, la llista d'UUID del que es desactiva en la renovació, i accept_offer_package_loss, un booleà que confirma la pèrdua d'un paquet d'oferta aplicat si la reducció el trenca. Requereix el mòdul control_horario. (12 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_employee_seat_billing | employees:read | read |
preview_employee_seat_charge | employees:read | read |
cancel_employee_seat_addon | employees:write | write |
change_employee_seat_quantity | employees:write | write |
subscribe_employee_seat_addon | employees:write | write |
update_employee_seats | employees:write | write |
cancel_employee_seat_offer_redemption | employees:write | write |
confirm_employee_seat_offer_redemption | employees:write | write |
get_employee_seat_offer_redemption | employees:read | read |
list_employee_seat_offer_redemptions | employees:read | read |
prepare_employee_seat_offer_redemption | employees:write | write |
refresh_employee_seat_offer_redemption | employees:write | write |
Ofertes de places d’empreses gestionades
Les ofertes privades de places d’empreses gestionades fan servir l’empresa matriu pagadora i l’scope vigent companies:*. Preparar o actualitzar una cotització no activa empreses ni cobra. prepare_employee_seat_offer_redemption i prepare_gestoria_seat_offer_redemption accepten kind: apply_to_existing, que aplica el codi a les places que el compte ja té i no crea, activa ni reactiva res; no porta cap altra clau. Durant la prova, un bescanvi de places respon 422 customer_offer_not_eligible amb details.reason = trial_active, i un codi de paquet d’oferta, que MCP no bescanvia, respon reason = product (consulta Ofertes). (6 tools)
| Tool | Scope | Category |
|---|---|---|
cancel_gestoria_seat_offer_redemption | companies:write | write |
confirm_gestoria_seat_offer_redemption | companies:write | write |
get_gestoria_seat_offer_redemption | companies:read | read |
list_gestoria_seat_offer_redemptions | companies:read | read |
prepare_gestoria_seat_offer_redemption | companies:write | write |
refresh_gestoria_seat_offer_redemption | companies:write | write |
Horaris de treball
Horaris de treball setmanals i les seves assignacions: cerca, CRUD, arxivar/desarxivar, assignar/desassignar a empleats i consultar l'horari efectiu d'un empleat. Requereix el mòdul control_horario. (11 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_employee_work_schedule | work_schedules:read | read |
get_work_schedule | work_schedules:read | read |
get_work_schedule_stats | work_schedules:read | read |
list_work_schedule_assignments | work_schedules:read | read |
search_work_schedules | work_schedules:read | read |
archive_work_schedule | work_schedules:write ¹ | write |
assign_work_schedule | work_schedules:write ¹ | write |
create_work_schedule | work_schedules:write ¹ | write |
unarchive_work_schedule | work_schedules:write ¹ | write |
unassign_work_schedule | work_schedules:write ¹ | write |
update_work_schedule | work_schedules:write ¹ | write |
Control horari
Registre de jornada (RD-llei 8/2019): fitxar entrada/sortida amb pauses, entrades manuals, el flux de correccions de fitxatge, saldos i fulls d'hores mensuals, el tancament mensual inalterable del registre (tancar/reobrir/segellar, signatura, validació de cadena) i les seves exportacions, a més de les exportacions de nòmina. Requereix el mòdul control_horario. (29 tools)
| Eina | Scope | Categoria |
|---|---|---|
export_closed_register | time_entries:read | read |
get_current_time_entry_session | time_entries:read | read |
get_employee_time_balance | time_entries:read | read |
get_monthly_close_report | time_entries:read | read |
get_monthly_register_signature | time_entries:read | read |
get_monthly_time_record_close | time_entries:read | read |
get_monthly_time_sheet | time_entries:read | read |
get_team_time_balance_summary | time_entries:read | read |
get_time_correction | time_entries:read | read |
get_time_entry | time_entries:read | read |
get_time_tracking_settings | time_entries:read | read |
search_monthly_time_record_closes | time_entries:read | read |
search_time_corrections | time_entries:read | read |
search_time_entries | time_entries:read | read |
validate_time_record_chain | time_entries:read | read |
export_payroll | payroll_exports:read | read |
list_payroll_export_formats | payroll_exports:read | read |
approve_time_correction | time_entries:write ¹ | write |
clock_in | time_entries:write ¹ | write |
clock_out | time_entries:write ¹ | write |
close_monthly_time_record | time_entries:write ¹ | write |
pause_time_entry | time_entries:write ¹ | write |
record_manual_time_entry | time_entries:write ¹ | write |
reject_time_correction | time_entries:write ¹ | write |
reopen_monthly_time_record | time_entries:write ¹ | write |
request_time_correction | time_entries:write ¹ | write |
resume_time_entry | time_entries:write ¹ | write |
seal_monthly_time_record | time_entries:write ¹ | write |
update_time_tracking_settings | time_entries:write ¹ | write |
Absències
Absències: tipus, polítiques (amb configuració de carryover i assignacions), sol·licituds (crear/aprovar/rebutjar/cancel·lar), saldos i el calendari d'absències de l'equip. Requereix el mòdul control_horario. (25 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_absence_balance | absences:read | read |
get_absence_calendar | absences:read | read |
get_absence_policy | absences:read | read |
get_absence_request | absences:read | read |
get_absence_type | absences:read | read |
list_absence_policy_assignments | absences:read | read |
search_absence_balances | absences:read | read |
search_absence_policies | absences:read | read |
search_absence_requests | absences:read | read |
search_absence_types | absences:read | read |
archive_absence_policy | absences:write ¹ | write |
archive_absence_type | absences:write ¹ | write |
assign_absence_policy | absences:write ¹ | write |
configure_absence_policy_carryover | absences:write ¹ | write |
create_absence_policy | absences:write ¹ | write |
create_absence_request | absences:write ¹ | write |
create_absence_type | absences:write ¹ | write |
unarchive_absence_policy | absences:write ¹ | write |
unarchive_absence_type | absences:write ¹ | write |
unassign_absence_policy | absences:write ¹ | write |
update_absence_policy | absences:write ¹ | write |
update_absence_type | absences:write ¹ | write |
approve_absence_request | absences:transition ¹ | write |
cancel_absence_request | absences:transition ¹ | write |
reject_absence_request | absences:transition ¹ | write |
Presència
Presència: el tauler de presència en viu i l'estat de presència per empleat i diari. Requereix el mòdul control_horario. (3 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_employee_presence | presence:read | read |
get_live_presence | presence:read | read |
list_daily_presence | presence:read | read |
Festius
Festius: consultar el calendari de festius de l'empresa i resoldre els festius aplicables a la regió (CCAA) d'un empleat. Requereix el mòdul control_horario. (3 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_holiday | holidays:read | read |
list_holidays | holidays:read | read |
resolve_applicable_holidays | holidays:read | read |
Projectes
Projectes de tasques i els seus taulers: crear, editar, arxivar i esborrar projectes, resoldre'n un per la seva clau (DEV), gestionar les columnes del tauler i els camps personalitzats de tasca, exportar i importar les tasques en JSON, consultar el temps imputat i convertir el temps facturable en un esborrany de factura (invoice_project_time exigeix invoices:write, perquè crea una factura). Requereix el mòdul tasks. delete_project, delete_project_column i delete_project_custom_field són irreversibles, igual que les tools d'esborrat de Tasques. (22 tools)
| Eina | Scope | Categoria |
|---|---|---|
export_project_tasks | projects:read | read |
find_project_by_key | projects:read | read |
get_project | projects:read | read |
get_project_time_summary | projects:read | read |
list_project_columns | projects:read | read |
list_project_custom_fields | projects:read | read |
list_projects | projects:read | read |
preview_project_time_invoice | projects:read | read |
archive_project | projects:write | write |
create_project | projects:write | write |
create_project_column | projects:write | write |
create_project_custom_field | projects:write | write |
delete_project | projects:delete ¹ | destructive |
delete_project_column | projects:delete ¹ | destructive |
delete_project_custom_field | projects:delete ¹ | destructive |
import_project_tasks | projects:write | write |
invoice_project_time | invoices:write | write |
reorder_project_columns | projects:write | write |
unarchive_project | projects:write | write |
update_project | projects:write | write |
update_project_column | projects:write | write |
update_project_custom_field | projects:write | write |
Tasques
Tasques del tauler: cercar, crear, editar, duplicar, moure, recol·locar i esborrar tasques —una a una o en bloc—, resoldre'n una per la seva clau (DEV-12), canviar-ne l'estat, assignar-la, etiquetar-la, comentar-la, relacionar-la amb altres tasques, vincular-la a documents i contactes, adjuntar-hi fitxers o crear un enllaç de pujada d'un sol ús, imputar temps amb temporitzador i llegir-ne l'activitat. El temps imputat aquí és temps de tasca, no el fitxatge de jornada del control horari. Requereix el mòdul tasks. (52 tools)
Les tools d'esborrat —delete_task, bulk_delete_tasks, delete_task_comment, delete_task_attachment, delete_task_time_entry i delete_task_label, més delete_project, delete_project_column i delete_project_custom_field a Projectes— són irreversibles: no hi ha paperera. Confirma-ho amb la persona usuària abans d'invocar-les i envia un idempotency_key perquè un reintent no repeteixi l'efecte. Els seus scopes projects:delete i tasks:delete són només API key (¹).
| Eina | Scope | Categoria |
|---|---|---|
download_task_attachment | tasks:read | read |
find_task_by_key | tasks:read | read |
get_running_task_timer | tasks:read | read |
get_task | tasks:read | read |
get_task_activities | tasks:read | read |
get_task_attachment | tasks:read | read |
get_task_label | tasks:read | read |
get_task_time_entry | tasks:read | read |
list_task_attachments | tasks:read | read |
list_task_comments | tasks:read | read |
list_task_entity_links | tasks:read | read |
list_task_external_links | tasks:read | read |
list_task_labels | tasks:read | read |
list_task_relations | tasks:read | read |
list_task_time_entries | tasks:read | read |
list_tasks_linked_to_entity | tasks:read | read |
search_tasks | tasks:read | read |
assign_task | tasks:write | write |
assign_task_label | tasks:write | write |
attach_task_file | tasks:write | write |
bulk_change_task_status | tasks:write | write |
bulk_delete_tasks | tasks:delete ¹ | destructive |
bulk_update_tasks | tasks:write | write |
change_task_status | tasks:write | write |
create_task | tasks:write | write |
create_task_comment | tasks:write | write |
create_task_external_link | tasks:write | write |
create_task_label | tasks:write | write |
create_task_relation | tasks:write | write |
create_task_time_entry | tasks:write | write |
create_task_upload_link | tasks:write | generate |
delete_task | tasks:delete ¹ | destructive |
delete_task_attachment | tasks:delete ¹ | destructive |
delete_task_comment | tasks:delete ¹ | destructive |
delete_task_external_link | tasks:write | destructive |
delete_task_label | tasks:delete ¹ | destructive |
delete_task_relation | tasks:write | destructive |
delete_task_time_entry | tasks:delete ¹ | destructive |
duplicate_task | tasks:write | write |
link_task_entity | tasks:write | write |
move_task | tasks:write | write |
reposition_task | tasks:write | write |
set_task_custom_field_value | tasks:write | write |
start_task_timer | tasks:write | write |
stop_task_timer | tasks:write | write |
unassign_task | tasks:write | write |
unassign_task_label | tasks:write | destructive |
unlink_task_entity | tasks:write | destructive |
update_task | tasks:write | write |
update_task_comment | tasks:write | write |
update_task_label | tasks:write | write |
update_task_time_entry | tasks:write | write |
Usuaris
Els membres de l'empresa —les persones a les quals es pot assignar una tasca— i l'usuari de la credencial. No depèn de cap mòdul del pla. (2 tools)
| Eina | Scope | Categoria |
|---|---|---|
get_current_user | users:read | read |
search_users | users:read | read |
Notificacions
Els avisos de la safata de la persona titular de la credencial: llistar-los i marcar-ne un o tots com a llegits. No depèn de cap mòdul del pla. (3 tools)
| Eina | Scope | Categoria |
|---|---|---|
list_notifications | notifications:read | read |
mark_all_notifications_as_read | notifications:write | write |
mark_notification_as_read | notifications:write | write |
Agenda de l'empresa
L'agenda combinada d'una finestra de fins a 93 dies: tasques amb venciment i, en cada capa que la credencial també pot llegir, venciments de factures i despeses, caducitats de pressupostos i proformes, execucions de factures recurrents, terminis fiscals, absències i festius. Requereix el mòdul tasks. (1 tools)
| Eina | Scope | Categoria |
|---|---|---|
list_agenda_items | tasks:read | read |
Tools de comptes gestionats
Les deu tools que aprovisionen i administren comptes gestionats no formen part de les 668 de dalt ni compten als 41 dominis. Els seus scopes, accounts:read i accounts:write, són privilegiats: el super-scope * no els cobreix, així que una key que només tingui * no veu aquestes tools a tools/list. Indica el scope de manera explícita. A més, cada crida comprova que el teu compte tingui el privilegi de proveïdor de comptes gestionats que concedim nosaltres, i respon 403 privileged_scope_required si no el té. Mai arriben per OAuth: fes servir una API key. Comptes gestionats explica l'operació que reflecteix cada tool.
| Eina | Scope | Categoria |
|---|---|---|
get_managed_account | accounts:read | read |
get_provisioning_usage | accounts:read | read |
list_managed_accounts | accounts:read | read |
preview_managed_account_plan_change | accounts:read | read |
preview_managed_account_provisioning | accounts:read | read |
change_managed_account_access_level | accounts:write | write |
change_managed_account_plan | accounts:write | write |
end_account_management | accounts:write | write |
provision_managed_account | accounts:write | write |
reissue_managed_account_claim | accounts:write | write |
provision_managed_account, change_managed_account_plan, reissue_managed_account_claim i end_account_management són irreversibles: el servidor les publica amb destructiveHint: true i una entrada idempotency_key.
Tres coses no tenen tool, per disseny:
- La importació massiva. Llegeix fitxers CSV pujats, que el servidor MCP no transporta, i també és privilegiada. Fes servir la REST API: Importació massiva.
- El costat del client d'un compte gestionat. El que fa el client amb el seu compte —reclamar-lo, pujar o baixar el nivell que conserva el proveïdor, acabar la gestió i assumir el pagament— es fa a l'app, i tampoc no té operació
/v1. - La gestió de l'accés cedit. Cedir, reenviar, acceptar, rebutjar, revocar, canviar el nivell o l'abast d'un accés entre comptes, o renunciar-hi, es fa a l'app, mai per l'API ni per MCP. Accés cedit ho explica.