Episode 21 highlights LangChain's modern 2026 features: the v1.x architecture with separate core and integrations, v2/v3 content-block streaming, Context Hub, Harness Profiles, Deep Agents v0.5+, support for the latest models, MCP integration, and the reliability and security hardening roadmap.

In episode 20 you took the application to production: LangServe, the LangGraph Platform, containerization, scaling, and monitoring. Now let's look ahead. Episode 21 maps the modern features shaping LangChain in 2026 — the v1.x architecture, v2/v3 streaming, Context Hub, Harness Profiles, Deep Agents v0.5+, support for the latest models, MCP integration — along with the official roadmap determining the direction of this framework going forward.
The most fundamental change in the v1.x era is the clear separation between the core and integrations. langchain-core is the only mandatory dependency, containing the abstractions: runnables, prompts, output parsers, messages, and tools. Meanwhile, provider and tooling support lives in separate packages like langchain-openai, langchain-anthropic, langchain-groq, and langgraph.
pip install langchain-core langchain-openai langgraph deepagentsIn practice this means you install only what you use. As of July 2026, langchain is at version 1.3.14 and langchain-core at 1.5.3 — the two evolve at their own pace. A consequence to remember: your application code depends on the langchain-core version, so record it in your lockfile and review the changelog before upgrading, because integrations may change without waiting for the core.
Model streaming evolved from plain strings to rich content: text, reasoning, and structured data in a single stream. langchain-core 1.4.0 introduced v2 streaming, and langchain 1.3.0 added version="v3" to astream_events with a more consistent event contract for content-block-based chunks.
chain = prompt | model | StrOutputParser()
async for event in chain.astream_events(input, version="v3"):
if event["event"] == "on_chat_model_stream":
chunk = event["data"]["chunk"]
print(chunk.text, end="", flush=True)The key difference from old streaming: chunks now carry per-block content — text, model reasoning, or structured output — so a UI can separate reasoning from the final answer. You no longer have to assemble raw strings and guess where the reasoning ends. Make sure your package version includes these updates with pip show langchain-core. If you're building a modern chat UI, v3 streaming is the contract to learn.
The quality of an LLM application is largely determined by its context or system prompt. Context Hub treats context as files — filesystem-based with a backend connected to the LangSmith Hub — so prompts can be stored, reviewed through pull requests, and rolled back with git like regular code.
from langchain_ai.llmhub import ContextHub
hub = ContextHub()
agent = create_agent(
model=model,
tools=tools,
context=hub.list_contexts(
scope="workspace",
langchain_hub_api_key="your-hub-key",
),
)In other words, the context that used to live in strings in your code is now an artifact that can be experimented on. This combination fits perfectly with the episode 19 evaluation pipeline: swap the context, run the dataset, compare the scores, and only the winning context gets merged into main.
Harness Profiles are curated per-provider and per-model profiles that configure tool calling parsing, streaming, and content-block behavior consistently. Instead of adjusting model configuration one by one, you pick a profile already adapted to that model's behavior.
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model="gpt-5", profile="gpt-5")
agent = create_agent(
model=model,
tools=tools,
system_prompt="Kamu adalah asisten peneliti.",
)These profiles follow the latest model releases: support for Claude Opus 5 and the gpt-5.x profiles is available through each provider's package. The benefit is practical — when a provider changes its tool calling format in a new version, the profile absorbs the change so your application code doesn't need to change every time a model is released.
Deep Agents is also growing fast. Version 0.5.0 brought async, non-blocking subagents, plus multi-modal tool support for PDF, audio, and video. This means an agent can delegate tasks to subagents while still responding to users, and handle more diverse documents than just text.
On the connectivity side, MCP (Model Context Protocol) integration lets LangChain agents use tools from any MCP server — including the server catalogs built for other ecosystems.
from langchain_mcp_adapters.client import MultiServerMCPClient
from langchain_mcp_adapters.tools import load_mcp_tools
client = MultiServerMCPClient(
{"github": {"url": "http://localhost:9000/sse"}}
)
tools = load_mcp_tools(client)This pattern extends LangChain's tool catalog with an open standard: tools from an MCP server can be installed into create_agent or create_deep_agent like regular tools. It's an important bridge, because MCP has become the shared language for giving agents data and tool access across frameworks.
Finally, the official development direction. Three big themes stand out:
langchain-core 1.4.0, followed by performance optimization across components.Info
This direction is consistent with the industry trend: increasingly autonomous agents must be balanced by increasingly tight confinement. More capability without more control only increases risk.
Episode 21 mapped the future of LangChain 2026: the v1.x architecture with a lean core, v2/v3 content-block streaming, Context Hub for versioned prompts, Harness Profiles for curated model configuration, Deep Agents 0.5+ with async subagents and multi-modal tools, MCP integration, and a roadmap focused on reliability, confinement, and security hardening.
Key takeaways:
langchain-core; the rest is installed as needed.In episode 22, the final episode, we close this series: Ecosystem, Alternatives & Final Reflections — comparing LangChain with LlamaIndex, CrewAI, and Haystack, plus a recap of the journey and a production checklist. See you there!