{"apiVersion":"v1","directorySlug":"360reformas-mcp-1822fe0307","title":"360reformas","description":null,"pageUrl":"https://www.mcpbundles.com/skills/360reformas-mcp-1822fe0307","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.360reformas.com/mcp","hostedMcpUrl":null,"toolCount":45,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.360reformas/360reformas-mcp-1822fe0307","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"data_quality_report","description":"Run read-only data-quality checks on one Odoo model: duplicates, missing required values, orphaned references, format anomalies","inputSchema":{"type":"object","required":["model"],"properties":{"model":{"type":"string"},"checks":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"key_fields":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"sample_limit":{"type":"integer","default":500}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"data_quality_report","displayName":"data_quality_report","title":"data_quality_report"},{"name":"diagnose_odoo_call","description":"Diagnose an Odoo model call without executing it","inputSchema":{"type":"object","required":["model","method"],"properties":{"args":{"anyOf":[{"type":"array","items":{}},{"type":"null"}],"default":null},"model":{"type":"string"},"kwargs":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"method":{"type":"string"},"metadata":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"transport":{"type":"string","default":"auto"},"include_debug":{"type":"boolean","default":false},"observed_error":{"anyOf":[{},{"type":"null"}],"default":null},"target_version":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"use_live_metadata":{"type":"boolean","default":false}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"diagnose_odoo_call","displayName":"diagnose_odoo_call","title":"diagnose_odoo_call"},{"name":"generate_json2_payload","description":"Build a JSON-2 request preview without network access","inputSchema":{"type":"object","required":["model","method"],"properties":{"args":{"anyOf":[{"type":"array","items":{}},{"type":"null"}],"default":null},"model":{"type":"string"},"kwargs":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"method":{"type":"string"},"base_url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"database":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"include_database_header":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"generate_json2_payload","displayName":"generate_json2_payload","title":"generate_json2_payload"},{"name":"inspect_model_relationships","description":"Inspect model relationships and required field metadata","inputSchema":{"type":"object","required":["model"],"properties":{"model":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"fields_metadata":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"include_computed":{"type":"boolean","default":true},"include_readonly":{"type":"boolean","default":true},"use_live_metadata":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"inspect_model_relationships","displayName":"inspect_model_relationships","title":"inspect_model_relationships"},{"name":"diagnose_access","description":"Diagnose ACL and record-rule visibility for an Odoo model","inputSchema":{"type":"object","required":["model"],"properties":{"limit":{"type":"integer","default":50},"model":{"type":"string"},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"operation":{"type":"string","default":"read"},"record_ids":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"default":null},"include_rules":{"type":"boolean","default":true},"expected_count":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null},"observed_error":{"anyOf":[{},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"diagnose_access","displayName":"diagnose_access","title":"diagnose_access"},{"name":"upgrade_risk_report","description":"Report Odoo upgrade and JSON-2 migration risks","inputSchema":{"type":"object","properties":{"methods":{"anyOf":[{"type":"array","items":{"type":"object","additionalProperties":true}},{"type":"null"}],"default":null},"modules":{"anyOf":[{"type":"array","items":{"type":"object","additionalProperties":true}},{"type":"null"}],"default":null},"include_debug":{"type":"boolean","default":false},"source_version":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"target_version":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"observed_errors":{"anyOf":[{"type":"array","items":{}},{"type":"null"}],"default":null},"source_findings":{"anyOf":[{"type":"array","items":{"type":"object","additionalProperties":true}},{"type":"null"}],"default":null},"use_live_metadata":{"type":"boolean","default":false}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"upgrade_risk_report","displayName":"upgrade_risk_report","title":"upgrade_risk_report"},{"name":"analyze_upgrade_log","description":"Classify Odoo install/update log errors into a migration worklist (no_action / needs_review / needs_script) with fix suggestions","inputSchema":{"type":"object","required":["log_text"],"properties":{"log_text":{"type":"string"},"source_version":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"target_version":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"analyze_upgrade_log","displayName":"analyze_upgrade_log","title":"analyze_upgrade_log"},{"name":"lookup_model_history","description":"Look up Odoo model rename/removal history by old or new model name (e.g. account.invoice -> account.move)","inputSchema":{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"lookup_model_history","displayName":"lookup_model_history","title":"lookup_model_history"},{"name":"fit_gap_report","description":"Classify Odoo requirements into fit/gap implementation buckets","inputSchema":{"type":"object","required":["requirements"],"properties":{"requirements":{"type":"array","items":{}},"available_fields":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"available_models":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"business_context":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"installed_modules":{"anyOf":[{"type":"array","items":{}},{"type":"null"}],"default":null},"use_live_metadata":{"type":"boolean","default":false}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"fit_gap_report","displayName":"fit_gap_report","title":"fit_gap_report"},{"name":"scan_addons_source","description":"Scan local Odoo addon source without importing addon code","inputSchema":{"type":"object","properties":{"max_files":{"type":"integer","default":200},"addons_paths":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"max_file_bytes":{"type":"integer","default":300000}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"scan_addons_source","displayName":"scan_addons_source","title":"scan_addons_source"},{"name":"build_domain","description":"Build a validated Odoo domain from structured conditions","inputSchema":{"type":"object","required":["conditions"],"properties":{"conditions":{"type":"array","items":{"type":"object","additionalProperties":true}},"fields_metadata":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"logical_operator":{"type":"string","default":"and"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"build_domain","displayName":"build_domain","title":"build_domain"},{"name":"business_pack_report","description":"Report expected modules, models, and safe discovery calls for a business pack","inputSchema":{"type":"object","required":["pack"],"properties":{"pack":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"use_live_metadata":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"business_pack_report","displayName":"business_pack_report","title":"business_pack_report"},{"name":"get_odoo_profile","description":"Read a bounded profile of the connected Odoo environment","inputSchema":{"type":"object","properties":{"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"module_limit":{"type":"integer","default":100},"include_modules":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_odoo_profile","displayName":"get_odoo_profile","title":"get_odoo_profile"},{"name":"schema_catalog","description":"Build and cache a bounded Odoo model schema catalog","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","default":50},"query":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"models":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"refresh":{"type":"boolean","default":false},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"include_fields":{"type":"boolean","default":false}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"schema_catalog","displayName":"schema_catalog","title":"schema_catalog"},{"name":"health_check","description":"Report this MCP server's non-secret runtime safety posture","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"health_check","displayName":"health_check","title":"health_check"},{"name":"list_instances","description":"List configured Odoo instance names without credentials","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_instances","displayName":"list_instances","title":"list_instances"},{"name":"list_models","description":"List Odoo models with optional name filtering","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","default":100},"query":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_models","displayName":"list_models","title":"list_models"},{"name":"get_model_fields","description":"Get field metadata for a specific Odoo model","inputSchema":{"type":"object","required":["model"],"properties":{"model":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"relevance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"max_fields":{"type":"integer","default":30},"field_names":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_model_fields","displayName":"get_model_fields","title":"get_model_fields"},{"name":"search_records","description":"Search Odoo records with read-only search_read; optional free-text `query` matches across name/ref/email-like fields","inputSchema":{"type":"object","required":["model"],"properties":{"limit":{"type":"integer","default":10},"model":{"type":"string"},"order":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"query":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"fields":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"offset":{"type":"integer","default":0},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_records","displayName":"search_records","title":"search_records"},{"name":"read_record","description":"Read a single Odoo record by model and ID","inputSchema":{"type":"object","required":["model","record_id"],"properties":{"model":{"type":"string"},"fields":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"record_id":{"type":"integer"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_record","displayName":"read_record","title":"read_record"},{"name":"read_attachment","description":"Read an ir.attachment's metadata and size-capped base64 content","inputSchema":{"type":"object","required":["attachment_id"],"properties":{"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"include_data":{"type":"boolean","default":true},"attachment_id":{"type":"integer"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_attachment","displayName":"read_attachment","title":"read_attachment"},{"name":"aggregate_records","description":"Aggregate Odoo records server-side using Postgres groupby/sum/count. Uses formatted_read_group on Odoo 19+ and read_group on earlier versions.","inputSchema":{"type":"object","required":["model","group_by"],"properties":{"lazy":{"type":"boolean","default":false},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null},"model":{"type":"string"},"order":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"offset":{"type":"integer","default":0},"group_by":{"type":"array","items":{"type":"string"}},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"measures":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"aggregate_records","displayName":"aggregate_records","title":"aggregate_records"},{"name":"search_employee","description":"Search for employees by name","inputSchema":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"limit":{"type":"integer","default":20},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_employee","displayName":"search_employee","title":"search_employee"},{"name":"search_holidays","description":"Search for holidays within a date range","inputSchema":{"type":"object","required":["start_date","end_date"],"properties":{"end_date":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"start_date":{"type":"string"},"employee_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_holidays","displayName":"search_holidays","title":"search_holidays"},{"name":"preview_write","description":"Preview create, write, or unlink without executing it","inputSchema":{"type":"object","required":["model","operation"],"properties":{"model":{"type":"string"},"values":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"context":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"operation":{"type":"string"},"record_ids":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"default":null},"values_list":{"anyOf":[{"type":"array","items":{"type":"object","additionalProperties":true}},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"preview_write","displayName":"preview_write","title":"preview_write"},{"name":"validate_write","description":"Validate a standard write payload against optional fields_get metadata","inputSchema":{"type":"object","required":["model","operation"],"properties":{"model":{"type":"string"},"values":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"context":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"operation":{"type":"string"},"record_ids":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"default":null},"values_list":{"anyOf":[{"type":"array","items":{"type":"object","additionalProperties":true}},{"type":"null"}],"default":null},"fields_metadata":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"use_live_metadata":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"validate_write","displayName":"validate_write","title":"validate_write"},{"name":"execute_approved_write","description":"Execute a previously previewed and confirmed standard write","inputSchema":{"type":"object","required":["approval"],"properties":{"confirm":{"type":"boolean","default":false},"approval":{"type":"object","additionalProperties":true}}},"logicalName":"execute_approved_write","displayName":"execute_approved_write","title":"execute_approved_write","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"chatter_post","description":"Post a chatter message on a mail.thread record. Default mode requires an approval token returned from a preview call; set MCP_CHATTER_DIRECT=1 to bypass and post immediately.","inputSchema":{"type":"object","required":["model","record_id","body"],"properties":{"body":{"type":"string"},"model":{"type":"string"},"confirm":{"type":"boolean","default":false},"approval":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"record_id":{"type":"integer"},"partner_ids":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"default":null},"message_type":{"type":"string","default":"comment"},"subtype_xmlid":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"attachment_ids":{"anyOf":[{"type":"array","items":{"type":"integer"}},{"type":"null"}],"default":null}}},"logicalName":"chatter_post","displayName":"chatter_post","title":"chatter_post","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"execute_method","description":"Execute a custom method on an Odoo model","inputSchema":{"type":"object","required":["model","method"],"properties":{"args":{"anyOf":[{"type":"array","items":{}},{"type":"null"}],"default":null},"model":{"type":"string"},"kwargs":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"method":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"logicalName":"execute_method","displayName":"execute_method","title":"execute_method","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"index_knowledge","description":"Fetch a bounded slice of records and build a local BM25 knowledge index","inputSchema":{"type":"object","required":["model"],"properties":{"limit":{"type":"integer","default":500},"model":{"type":"string"},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"fields":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"replace":{"type":"boolean","default":false},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"index_knowledge","displayName":"index_knowledge","title":"index_knowledge"},{"name":"search_knowledge","description":"Relevance-ranked local BM25 search over previously indexed records","inputSchema":{"type":"object","required":["query","model"],"properties":{"limit":{"type":"integer","default":5},"model":{"type":"string"},"query":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_knowledge","displayName":"search_knowledge","title":"search_knowledge"},{"name":"knowledge_stats","description":"Report local knowledge index sizes and document budget","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"knowledge_stats","displayName":"knowledge_stats","title":"knowledge_stats"},{"name":"receivable_payable_aging","description":"Aged receivable/payable report bucketed by days overdue","inputSchema":{"type":"object","properties":{"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"limit":{"type":"integer","default":5000},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"direction":{"type":"string","default":"receivable"},"top_partners":{"type":"integer","default":15}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"receivable_payable_aging","displayName":"receivable_payable_aging","title":"receivable_payable_aging"},{"name":"accounting_health_summary","description":"Open receivable/payable item counts and draft invoice backlog","inputSchema":{"type":"object","properties":{"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"accounting_health_summary","displayName":"accounting_health_summary","title":"accounting_health_summary"},{"name":"obtener_incidencias_pendientes","description":"Obtiene las incidencias (subtareas del proyecto 'Incidencias') de Odoo Magnetic. Por defecto devuelve solo incidencias NO resueltas (excluye finalizadas y canceladas). Permite filtrar por programador, cliente, estado específico y agrupar por programador.","inputSchema":{"type":"object","properties":{"estado":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"limite":{"type":"integer","default":30},"offset":{"type":"integer","default":0},"cliente":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"programador":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"agrupar_por_programador":{"type":"boolean","default":false}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"obtener_incidencias_pendientes","displayName":"obtener_incidencias_pendientes","title":"obtener_incidencias_pendientes"},{"name":"obtener_incidencias_por_programador","description":"Obtiene las incidencias pendientes asignadas a un programador específico en Odoo Magnetic. Equivalente directo a filtrar por programador responsable.","inputSchema":{"type":"object","required":["programador"],"properties":{"limite":{"type":"integer","default":25},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"programador":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"obtener_incidencias_por_programador","displayName":"obtener_incidencias_por_programador","title":"obtener_incidencias_por_programador"},{"name":"obtener_incidencias_por_cliente","description":"Obtiene las incidencias pendientes asociadas a un cliente en Odoo Magnetic. Permite ver rápidamente qué incidencias abiertas tiene un cliente específico.","inputSchema":{"type":"object","required":["cliente"],"properties":{"limite":{"type":"integer","default":25},"cliente":{"type":"string"},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"obtener_incidencias_por_cliente","displayName":"obtener_incidencias_por_cliente","title":"obtener_incidencias_por_cliente"},{"name":"obtener_detalle_incidencia","description":"Obtiene el detalle completo de una incidencia específica por su ID. Incluye descripción, notas adicionales, dudas, cambios solicitados y los últimos mensajes del chatter.","inputSchema":{"type":"object","required":["incidencia_id"],"properties":{"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"incidencia_id":{"type":"integer"},"incluir_mensajes":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"obtener_detalle_incidencia","displayName":"obtener_detalle_incidencia","title":"obtener_detalle_incidencia"},{"name":"search_across_instances","description":"Read-only search fanned out across configured Odoo instances, merged and attributed","inputSchema":{"type":"object","required":["model"],"properties":{"model":{"type":"string"},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"fields":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"instances":{"anyOf":[{},{"type":"null"}],"default":null},"limit_per_instance":{"type":"integer","default":50}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_across_instances","displayName":"search_across_instances","title":"search_across_instances"},{"name":"aggregate_across_instances","description":"Read-only aggregate fanned out across instances with combined grand totals","inputSchema":{"type":"object","required":["model","group_by"],"properties":{"model":{"type":"string"},"domain":{"anyOf":[{},{"type":"null"}],"default":null},"group_by":{"type":"array","items":{"type":"string"}},"measures":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"instances":{"anyOf":[{},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"aggregate_across_instances","displayName":"aggregate_across_instances","title":"aggregate_across_instances"},{"name":"accounting_health_across_instances","description":"AR/AP aging fanned out across instances — the partner-network sweep","inputSchema":{"type":"object","properties":{"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"direction":{"type":"string","default":"receivable"},"instances":{"anyOf":[{},{"type":"null"}],"default":null},"top_partners":{"type":"integer","default":10}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"accounting_health_across_instances","displayName":"accounting_health_across_instances","title":"accounting_health_across_instances"},{"name":"submit_async_task","description":"Run an allowlisted long-running read operation in the background","inputSchema":{"type":"object","required":["operation"],"properties":{"params":{"anyOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"instance":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"operation":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"submit_async_task","displayName":"submit_async_task","title":"submit_async_task"},{"name":"get_async_task","description":"Poll a background task's status and result","inputSchema":{"type":"object","required":["task_id"],"properties":{"task_id":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_async_task","displayName":"get_async_task","title":"get_async_task"},{"name":"cancel_async_task","description":"Cancel a pending or running background task","inputSchema":{"type":"object","required":["task_id"],"properties":{"task_id":{"type":"string"}}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"cancel_async_task","displayName":"cancel_async_task","title":"cancel_async_task"},{"name":"list_async_tasks","description":"List recent background tasks newest-first","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_async_tasks","displayName":"list_async_tasks","title":"list_async_tasks"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=360reformas&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AuMzYwcmVmb3JtYXMuY29tL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22360reformas%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.360reformas.com%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22360reformas%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.360reformas.com%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=360reformas&connectorUrl=https%3A%2F%2Fmcp.360reformas.com%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"360reformas\" --url \"https://mcp.360reformas.com/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/360reformas-mcp-1822fe0307","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/360reformas-mcp-1822fe0307/tools/{tool}","mcpServerUrl":"https://mcp.360reformas.com/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/360reformas-mcp-1822fe0307?live=1"}