---
title: "Email tools for LangChain"
description: "Give agents built with LangChain a real inbox over MCP. They read, reply and send from the addresses you approve, for as long as you allow."
url: "https://nextmail.sh/agents/langchain"
---

[All frameworks and tools](https://nextmail.sh/agents.md#frameworks)

LangChain + Nextmail

# An inboxfor LangChain.

Agents built with LangChain read, reply and send from the addresses you approve. They load the Nextmail tools over MCP, with a sign-in you give once.

[Open LangChain](https://www.langchain.com)

Connect LangChain

```
import asyncio from langchain.agents import create_agentfrom langchain.mcp import MCPAdapter SERVERS = {    "mcpServers": {        "nextmail": {"command": "npx", "args": ["-y", "@nextmail/cli", "mcp", "serve"]}    }}TOOLS = {"whoAmI", "listThreads", "getThread"}  async def main():    async with MCPAdapter(SERVERS) as adapter:        tools = [tool for tool in await adapter.list_tools() if tool.name in TOOLS]        agent = create_agent("claude-sonnet-5", tools)        result = await agent.ainvoke(            {"messages": [{"role": "user", "content": "Summarise my unread mail."}]}        )        print(result["messages"][-1].text)  asyncio.run(main())
```

LangChain's MCP adapter starts the local bridge and hands the agent only the tools it needs. The guide also covers TypeScript.

## Three steps. Then it works on its own.

1. 01
   
   Install the adapter
   
   Run pip install "langchain\[mcp\]>=1.4" langchain-anthropic in your project.
2. 02
   
   Sign in once
   
   Run npx @nextmail/cli login and approve in your browser what the agent may reach. On a server, add --no-browser and paste the code back.
3. 03
   
   Load the tools
   
   LangChain starts the bridge, npx -y @nextmail/cli mcp serve, and gets the tools your approval allows. Hand the agent only the ones it needs.

[Read the full LangChain guide](https://nextmail.sh/docs/mcp/frameworks/langchain.md)

## What your LangChain agent can do with it. Through one connection.

`$ nextmail temp new`

[Agent features](https://nextmail.sh/agents/features.md)

## Tasks for your LangChain agent. In plain words.

Each prompt shows the tools it is likely to call.

- Summarise my unread mail at support@acme.com and draft replies. Don't send them yet.
  
  - listThreads
  - getThread
  - createDraft
- Answer Ada's refund question in her thread, then file it under refunds.
  
  - getThread
  - replyToEmail
  - modifyLabels
- Find the invoice Jonas sent last month and sum up the thread.
  
  - listThreads
  - getThreadSummary
- Add Noor Haddad to my contacts and to the Beta audience.
  
  - createContact
  - addContactToAudience

## You approve it. Like any other app.

When the client signs in, you pick the workspace, what it may do, which addresses it reaches and for how long. Account → Connected apps changes or removes it later.

- **Your role is the ceiling**
  An app never holds a permission you lack, and when your role loses one, the app loses it on its next call.
- **Some things are never granted**
  No app can create or rotate API keys, open billing or manage the workspace, whatever you tick.
- **Risky changes wait for you**
  Adding a webhook, writing a rule, changing roles or removing a domain needs your verification code, or a 60-minute allowance you switch on for that app.

[How an approval is scoped](https://nextmail.sh/docs/mcp/scope.md)

## Asked first. Answered plainly.

## More frameworks and tools. Same server, your stack.

- [Vercel AI SDK Full Vercel AI SDK setup](https://nextmail.sh/agents/vercel-ai-sdk.md)
- [OpenAI Agents SDK Full OpenAI Agents SDK setup](https://nextmail.sh/agents/openai-agents-sdk.md)
- [CrewAI Full CrewAI setup](https://nextmail.sh/agents/crewai.md)
- [n8n Full n8n setup](https://nextmail.sh/agents/n8n.md)

[See everything agents can do](https://nextmail.sh/agents.md)

## Give it an address. Watch it work.

MCP, the API and the command line come with every plan, the free one included. Connect a client and approve exactly what it reaches.

[Open mail](https://nextmail.sh/mail/inbox) [Get Started](https://nextmail.sh/signup.md)[Read the MCP guide](https://nextmail.sh/docs/mcp/overview.md)

`claude mcp add --transport http nextmail https://api.nextmail.sh/mcp`
