
    aj                    p    S r SSKJr  SSKrSSKJr  SSKJr  SSKJ	r
  SSKJr  \(       a  SSKJr  S
S	 jrg)uF   Tool MCP: save_agent_analisis_json — legado (JSON en files/agents/).    )annotationsN)TYPE_CHECKING)check_mcp_secret)agent_workspace_storage)validate_analisis_payload)FastMCPc                N    U R                  5         S         SS jj5       ng )Nc                   [        U5        UR                  5       (       d  [        S5      e [        R                  " U5      n[        U[        5      (       d  [        S5      e[        U5        [        R                  " U5      n[        R                  " X`U5      n[        UR                  5       5      US'   U$ ! [        R
                   a  n[        SU 35      UeSnAff = f)u   Guarda el análisis/redacción del informe como JSON en files/agents/{agent_id}/.

Legado. Preferir store_data + plantillas del agente para documentos nuevos.
u#   payload_json no puede estar vacío.u!   payload_json no es JSON válido: Nz,payload_json debe ser un objeto JSON (dict).keys)r   strip
ValueErrorjsonloadsJSONDecodeError
isinstancedictr   storageresolve_agent_idsave_json_payloadlistr   )filenamepayload_jsonagent_idsecretpayloadexcaidresults           UC:\Users\jesus\Desktop\proyecto_pie360\backend\app\backend\mcp\tools\save_analisis.pysave_agent_analisis_json*register.<locals>.save_agent_analisis_json   s     	 !!##BCC	Qjj.G '4((KLL!'*&&x0**3'Bglln-v ## 	Q@FGSP	Qs   B9 9C!CC!) r"   )
r   strr   r#   r   r#   r   r#   returnr   )tool)mcpr    s     r   registerr'      sP    XXZ 	  	
 
     )r&   z	'FastMCP'r$   None)__doc__
__future__r   r   typingr   app.backend.mcp.authr   app.backend.utilsr   r   +app.backend.utils.agent_analisis_validationr   mcp.server.fastmcpr   r'    r(   r   <module>r2      s%    L "    1 @ Q*r(   