Skip to content

LangChain emem, the verifiable memory protocol for the physical world emem_entity_link

How to: LangChain emem, the verifiable memory protocol for the physical world emem_entity_link

client:LangChain transport:streamable-http tool:emem_entity_link

Add emem, the verifiable memory protocol for the physical world to LangChain

  1. 01

    Open pip install langchain-mcp-adapters and merge this in. Keep any servers already there.

from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient({
        "emem": {
            "transport": "streamable_http",
            "url": "https://emem.dev/mcp",
        }
})

tools = await client.get_tools()
  1. 02

    Save the file and restart LangChain.

  2. 03

    Ask for something emem_entity_link does. LangChain lists the server's tools on connect and calls emem_entity_link itself — you do not invoke it by name.

  3. 04

    If nothing happens, check the server is running and that emem, the verifiable memory protocol for the physical world's identifier in your config matches the one above exactly.

get_tools() returns the server's tools as LangChain tools, ready for an agent. LangChain docs

Set these first

emem, the verifiable memory protocol for the physical world will not start until these are set, so emem_entity_link never becomes available.

  • PORT
  • EMEM_BIND
  • EMEM_DATA
  • EMEM_PUBLIC_URL
  • EMEM_TLS_DOMAINS

Same tool, other clients

This list was read from the server itself, by connecting to it and calling tools/list on 24 September 2026. It is what the server actually exposes, not what its listing claims.

Mutating and Read-only are read off each tool's name, not its schema — a hint, not a guarantee. The registry stores tool names only; connect the server for its live schemas.