Skip to content

memorylake-ai/memorylake-skills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MemoryLake Skills

A skill that enables AI agents to create projects, upload documents, and then search/retrieve/analyze data from a MemoryLake server — the memory layer for AI Agents.

Compatible Platforms

This skill works with any AI coding agent that supports MCP or can execute shell commands:

Claude Code
Claude Code
Cursor
Cursor
OpenAI Codex
OpenAI Codex
Manus
Manus
Google Antigravity
Google Antigravity
OpenClaw
OpenClaw
Anthropic's agentic
CLI for Claude
AI-powered
code editor
OpenAI's terminal
coding agent
Autonomous AI
agent by Meta
Google's agent-first
IDE with Gemini
Open-source personal
AI assistant

How it works:

  • Use the REST API (Bearer API key + X-User-ID) to create a project, upload documents, and generate an MCP secret.
  • Use the Streamable HTTP MCP server (secret in query string) for search + retrieval + code-run analysis.

This repo includes two shell clients:

  • scripts/memorylake_rest_client.sh (REST)
  • scripts/memorylake_client.sh (MCP)

What is MemoryLake?

MemoryLake ingests unstructured files (Excel, PDF, text, etc.), chunks and indexes their content, and exposes it through a Streamable HTTP MCP Server for intelligent retrieval and data analysis. It gives AI agents long-term memory over your documents.

What This Skill Does

  • Hybrid search — Semantic + keyword (BM25) search across all indexed documents
  • File exploration — Browse memorylake contents, file types, and metadata
  • Code-based analysis — Run Python (pandas, numpy, scikit-learn, etc.) against your data server-side
  • Session management — A bash client that handles the MCP Streamable HTTP protocol (JSON-RPC, SSE, session lifecycle)

Project Structure

memorylake-skills/
├── SKILL.md                          # Skill definition with end-to-end workflow (REST → MCP)
├── scripts/
│   ├── memorylake_rest_client.sh      # REST client (projects, uploads, documents)
│   └── memorylake_client.sh           # MCP client (Streamable HTTP MCP)
├── references/
│   ├── mcp-tools.md                   # MCP tool parameters and response formats
│   └── memorylake-openapi.json         # REST OpenAPI spec (projects/drives/upload/etc.)
└── memorylake-skills.skill             # Packaged distributable (.zip with .skill extension)

Quick Start

1. Install the skill

Download memorylake-skills.skill from Releases or clone this repo, then install in your AI agent. For example, in Claude Code:

/skill install memorylake-skills.skill

2. Get a MemoryLake API key (REST)

  1. Go to https://app.memorylake.ai/ and apply for an API key.
  2. REST Base URL:
https://app.memorylake.ai/openapi/memorylake

Auth headers:

  • Authorization: Bearer <your API key>
  • X-User-ID: <your user id>

3. Create a project + generate MCP secret

export MEMORYLAKE_BASE_URL="https://app.memorylake.ai/openapi/memorylake"
export MEMORYLAKE_API_KEY="<your api key>"
export MEMORYLAKE_USER_ID="<your user id>"

# Create project
./scripts/memorylake_rest_client.sh projects:create '{"name":"My Project"}'

# Create project API key (this is the MCP secret)
./scripts/memorylake_rest_client.sh projects:create-apikey <project_id> '{"description":"mcp"}'

Use the returned secret to form the MCP URL:

https://ai.data.cloud/memorylake/mcp/v1?apikey=<secret>

4. Upload documents + quick-add into project

# Create multipart upload and complete it (uploads parts to presigned URLs)
./scripts/memorylake_rest_client.sh upload:create-multipart '{"file_size": 123456}' > upload.json
./scripts/memorylake_rest_client.sh upload:complete-multipart upload.json /path/to/file.pdf

# Then quick-add into the project
./scripts/memorylake_rest_client.sh projects:quick-add <project_id> '{"object_key":"<object_key>","file_name":"file.pdf"}'

If you have multiple documents, upload + quick-add one by one.

5. Poll document status until ready

./scripts/memorylake_rest_client.sh projects:list-documents <project_id>

Document status values: error, okay, running, pending. Recommended polling interval: 5s.

6. Ask questions about your data (MCP)

Once installed, your AI agent can:

  • "What files are in my memorylake?"
  • "Search for budget reports from 2024"
  • "Analyze the revenue data across all uploaded spreadsheets"
  • "Summarize the content of my PDF documents"

Available Tools

The skill exposes 5 MemoryLake tools via HTTP:

Tool Purpose
get_memorylake_metadata Explore memorylake structure and contents
search_memory Hybrid semantic + keyword search across all files
fetch_memory Get detailed metadata for specific files
create_memory_code_runner Create a Python execution environment
run_memory_code Run Python code against your data (pandas, numpy, etc.)

Using the MCP Client Script Standalone

Once you have the MCP URL (.../mcp/v1?apikey=<secret>), you can use scripts/memorylake_client.sh directly:

MCP_URL="https://ai.data.cloud/memorylake/mcp/v1?apikey=<secret>"

# Initialize a session
SESSION=$(./scripts/memorylake_client.sh "$MCP_URL" init)

# Explore your memorylake
./scripts/memorylake_client.sh "$MCP_URL" "$SESSION" get_memorylake_metadata

# Search for content
./scripts/memorylake_client.sh "$MCP_URL" "$SESSION" search_memory '{
  "parsed_query": {
    "bm25_cleaned_query": "revenue report 2024",
    "named_entities": [],
    "bm25_keywords": ["revenue", "report", "2024"],
    "bm25_boost_keywords": ["revenue", "2024"],
    "rewritten_query_for_dense_model": "Annual revenue and financial reports for the year 2024"
  }
}'

# Fetch file details
./scripts/memorylake_client.sh "$MCP_URL" "$SESSION" fetch_memory '{"memory_ids": ["ds-abc123"]}'

Requirements

  • curl (included on macOS and most Linux distros)
  • A MemoryLake API key from memorylake.ai

Links

License

MIT

About

MemoryLake skills for Agent — search, retrieve, and analyze data from MemoryLake

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages