Files
langgraphjs/libs/checkpoint-mongodb
Christian Bromann 9e114e55d3 chore(deps): remove uuid dependency in favor of embedded uuid in core (#2527)
## Summary
- Remove the direct `uuid` npm dependency from `@langchain/langgraph`,
`@langchain/langgraph-checkpoint`,
`@langchain/langgraph-checkpoint-redis`, `@langchain/langgraph-api`,
`@langchain/langgraph-supervisor`, and `@langchain/langgraph-sdk`.
- Switch all UUID generation and validation to
`@langchain/core/utils/uuid` (v4, v5, v6, v7, and `validate`).
- Drop unused `@types/uuid` devDependencies from checkpoint backend
packages that no longer reference `uuid` directly.

fixes #2481
2026-06-12 10:54:29 -07:00
..
2024-08-23 12:43:37 -07:00
2026-06-10 10:41:31 -07:00
2024-08-23 12:43:37 -07:00
2025-07-02 02:35:57 +02:00

@langchain/langgraph-checkpoint-mongodb

Implementation of a LangGraph.js CheckpointSaver that uses a MongoDB instance.

Usage

import { MongoClient } from "mongodb";
import { MongoDBSaver } from "@langchain/langgraph-checkpoint-mongodb";

const writeConfig = {
  configurable: {
    thread_id: "1",
    checkpoint_ns: ""
  }
};
const readConfig = {
  configurable: {
    thread_id: "1"
  }
};


const client = new MongoClient(process.env.MONGODB_URL);

const checkpointer = new MongoDBSaver({ client });
const checkpoint = {
  v: 1,
  ts: "2024-07-31T20:14:19.804150+00:00",
  id: "1ef4f797-8335-6428-8001-8a1503f9b875",
  channel_values: {
    my_key: "meow",
    node: "node"
  },
  channel_versions: {
    __start__: 2,
    my_key: 3,
    "start:node": 3,
    node: 3
  },
  versions_seen: {
    __input__: {},
    __start__: {
      __start__: 1
    },
    node: {
      "start:node": 2
    }
  },
  pending_sends: [],
}

// store checkpoint
await checkpointer.put(writeConfig, checkpoint, {}, {});

// load checkpoint
await checkpointer.get(readConfig);

// list checkpoints
for await (const checkpoint of checkpointer.list(readConfig)) {
  console.log(checkpoint);
}

await client.close();