Persistent Memory SystemPersistent Memory System

Remote

API Integration

Integrate this MCP server into your applications.

Get your API Key

You'll need to login and generate a Smithery API key to connect to this server.

Installation

Install the official MCP SDKs using npm:

bash
npm install @modelcontextprotocol/sdk @smithery/sdk

TypeScript SDK

typescript

import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { createSmitheryUrl } from "@smithery/sdk"

const config = {
  "sseCors": true,
  "sseHost": "localhost",
  "ssePort": 3000,
  "logLevel": "info",
  "databaseUrl": "file:/memory-tool.db",
  "logTimestamps": true,
  "transportType": "stdio",
  "embeddingModel": "Xenova/bge-small-en-v1.5",
  "modelCachePath": "./models",
  "databaseAuthToken": "string",
  "embeddingDimension": 384
}
const serverUrl = createSmitheryUrl("https://server.smithery.ai/@joleyline/mcp-memory-libsql", { config, apiKey: "your-smithery-api-key"})

const transport = new StreamableHTTPClientTransport(serverUrl)

// Create MCP client
import { Client } from "@modelcontextprotocol/sdk/client/index.js"

const client = new Client({
	name: "Test client",
	version: "1.0.0"
})
await client.connect(transport)

// Use the server tools with your LLM application
const tools = await client.listTools()
console.log(`Available tools: ${tools.map(t => t.name).join(", ")}`)

Configuration Schema

Full JSON Schema for server configuration:

json
{
  "type": "object",
  "required": [],
  "properties": {
    "sseCors": {
      "type": "boolean",
      "default": true,
      "description": "Enable CORS for SSE transport"
    },
    "sseHost": {
      "type": "string",
      "default": "localhost",
      "description": "SSE transport host"
    },
    "ssePort": {
      "type": "number",
      "default": 3000,
      "description": "SSE transport port"
    },
    "logLevel": {
      "type": "string",
      "default": "info",
      "description": "Logging level"
    },
    "databaseUrl": {
      "type": "string",
      "default": "file:/memory-tool.db",
      "description": "LibSQL database URL (local file or remote)"
    },
    "logTimestamps": {
      "type": "boolean",
      "default": true,
      "description": "Include timestamps in logs"
    },
    "transportType": {
      "type": "string",
      "default": "stdio",
      "description": "Transport type (stdio or sse)"
    },
    "embeddingModel": {
      "type": "string",
      "default": "Xenova/bge-small-en-v1.5",
      "description": "Embedding model ID"
    },
    "modelCachePath": {
      "type": "string",
      "default": "./models",
      "description": "Local path for embedding cache"
    },
    "databaseAuthToken": {
      "type": "string",
      "description": "Auth token for remote LibSQL databases"
    },
    "embeddingDimension": {
      "type": "number",
      "default": 384,
      "description": "Embedding vector dimension"
    }
  }
}