Skip to content
LangGraph

Asistente de email con LangGraph

Construye un asistente de email con IA que busca en tu bandeja, redacta respuestas y gestiona flujos de email — con LangGraph.

emailautomationproductivityassistant

Código funcional

LangGraph
from langchain_openai import ChatOpenAI
from langchain_core.tools import tool
from langgraph.prebuilt import create_react_agent
@tool
def search_emails(query: str, limit: int = 5) -> str:
"""Search the inbox for emails matching a query."""
results = email_client.search(query, max_results=limit)
return "\n\n".join(
f"From: {e.sender}\nSubject: {e.subject}\nDate: {e.date}\nPreview: {e.body[:200]}"
for e in results
)
@tool
def draft_email(to: str, subject: str, body: str) -> str:
"""Create an email draft."""
draft_id = email_client.create_draft(to=to, subject=subject, body=body)
return f"Draft created (ID: {draft_id}). Review before sending."
agent = create_react_agent(
ChatOpenAI(model="gpt-4o"),
tools=[search_emails, draft_email],
prompt="You are an email assistant. Search emails to find context, then help draft professional replies. Always create drafts — never send directly.",
)
result = await agent.ainvoke({
"messages": [("user", "Find the latest email from the marketing team and draft a reply confirming the deadline")]
})
print(result["messages"][-1].content)

Paso a paso

1

Instalar dependencias

Instala LangGraph y las herramientas necesarias para este caso de uso.

2

Definir herramientas

Crea las funciones de herramientas específicas del dominio que tu agente usará para interactuar con servicios externos.

3

Crear el agente y ejecutar

Inicializa el agente de LangGraph con tus herramientas, establece el prompt del sistema y ejecuta una consulta.

¿Listo para construir con LangGraph?

Genera un proyecto listo para producción con LangGraph preconfigurado — FastAPI + Next.js, auth, streaming y más.

Comenzar

¿Listo para construir tu primer agente IA en producción?

Herramientas open-source, patrones probados en batalla, cero boilerplate. Configura tu stack y despliega en minutos — no meses.