What Dify already keeps

Chat apps keep conversation variables and a memory window per conversation. Facts across conversations and users need an external store.

Where Auld fits

Add an HTTP Request node for recall before the LLM node and another for ingestion after it. Map Dify’s user identifier to the Auld viewer.

ConcernDifyAuld
Current conversationYesNot needed
Facts across sessions and channelsYour codeYes
Which fact is current after a changeYour codeYes, with history
What was true on a dateYour codeYes (asOf)
Who may see a memoryYour codeIdentities and audiences
Source for each statementYour codeReturned with every memory

Implementation sequence

  1. Add environment variables

    Store the base URL and key as secret environment variables.

  2. Recall node

    POST to /v1/recall with the query and the system user variable.

  3. Use the result

    Insert the response body into the LLM node’s context.

  4. Ingest node

    POST the user message to /v1/records after answering.

  5. Or a custom tool

    Describe the endpoints with an OpenAPI schema and import it as a tool.

Example

HTTP Request node — ingest (illustrative variables)
{
  "method": "POST",
  "url": "{{#env.AULD_API_BASE#}}/v1/records",
  "headers": { "Authorization": "Bearer {{#env.AULD_API_KEY#}}" },
  "body": {
    "sourceId": "dify-{{#sys.conversation_id#}}-{{#sys.dialogue_count#}}",
    "text": "{{#sys.query#}}",
    "occurredAt": "{{#current_time#}}",
    "author": "{{#sys.user_id#}}",
    "visibility": "user:{{#sys.user_id#}}"
  }
}

Illustrative example · standard HTTP · check the framework’s current docs for exact signatures

Or connect the MCP server

If your Dify setup can use MCP tools, point it at the Auld MCP endpoint instead of writing wrappers. The model gets remember, recall, forget and memory_status. Use wrappers when you need to inject the user id yourself or post-process results; use MCP for speed of setup.

Connect an MCP client →

Custom integration recipe using standard HTTP/MCP tools

  • This recipe wires Dify’s own tool interface to the Auld REST API or MCP server; there is nothing Auld-specific to install.
  • Bind the viewer id from your authentication layer, not from model output.
  • Ingestion is asynchronous — poll the job before depending on a just-sent fact in tests.
  • Recall returns up to your plan’s token limit (8,000 on Pay as you go and Flex).

Frequently asked questions

Agent apps?

Import the endpoints as a custom tool so the agent can call recall itself.

Variable names?

Template variable syntax varies by Dify version; use the variable picker.