SkillAgentSearch skills...

datadam_mcp

DataDam is a Personal Data MCP that allows you to work across various AI tools with the same personal data

Install / Use

claude mcp add KennethLeeJE8 -- npx -y github:KennethLeeJE8/datadam_mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

75/100

Supported Platforms

Claude Code
Claude Desktop

Our assessment of datadam_mcp

datadam_mcp scores 75/100 on our quality scale, 291st of 359 Data & Analytics skills we index.

Its MCP Server is 20 KB long, well organised into 35 sections with 6 code examples: a thorough specification that gives an agent plenty to work with.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
12/15
Adoption
3/20
Freshness
11/15

Maintenance, license and trust

  • The repository was last updated about 6 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
  • Our last check on 2026-09-18 found the source still online.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 86/100, with 2 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the first 100 KB of the file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands.

Automated pattern scan on 2026-09-29. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

datadam_mcp compared with similar skills

All 4 of these similar skills score higher than datadam_mcp; compare them before choosing.

SkillScoreStarsUpdatedFormat
datadam_mcp (this skill)by KennethLeeJE87536mo agoMCP Server
Agent-Reachby Panniantong10086.0k13d agoCLAUDE.md
headroomby headroomlabs-ai10074.0ktodayCLAUDE.md
rufloby ruvnet10073.4ktodayCLAUDE.md
CowAgentby zhayujie10047.2ktodayCLAUDE.md

Frequently asked questions

How do I install datadam_mcp?
Run claude mcp add KennethLeeJE8 -- npx -y github:KennethLeeJE8/datadam_mcp. The install tabs above show the steps for each supported agent.
Which AI agents does datadam_mcp work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is datadam_mcp safe to use?
Our scan of the first 100 KB of the file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. It is MIT-licensed and scores 86/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is datadam_mcp still maintained?
The repository was last updated about 6 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.

DataDam Personal Data MCP Server

DataDam is a Model Context Protocol (MCP) server backed by Supabase. It supports both streamable HTTP endpoints and stdio connections, allowing multiple AI tools to share a single personal database.

Important: There is no auth yet. Do not store sensitive data. OAuth is planned.

🚀 Quick Links


How to Use DataDam

The Problem: Your AI forgets everything between conversations. You waste 10-20 minutes every time re-explaining context that should already be known.

The Solution: DataDam is a persistent memory layer that decouples your personal information from your AI tool's unstable memory. Mention something once, and it's remembered forever across all conversations.

How It Works

Just talk naturally - DataDam works invisibly in the background, consulting you for consent:

  1. First mention: "I'm using TypeScript with Express for my API project" → DataDam proactively stores this in digital_products

  2. Weeks later: "Help me debug this API error" → DataDam retrieves your tech stack (TypeScript, Express) automatically

  3. No commands needed - Your AI handles all the storage and retrieval

💡 Tip: If a datapoint you mentioned doesn't save automatically, explicitly tell the AI to save it (e.g., "save that to my interests"). The AI's ability to proactively capture information will improve over time.


Example 1: Book Recommendations

❌ WITHOUT DataDam:

You: "Recommend a book for me?"

AI: "What genres do you like? What have you read? Any favorite authors?"

You: "I like sci-fi, I've read Project Hail Mary, The Martian, Children of Time,
     Ender's Game... I prefer hard sci-fi with good character development, nothing
     too violent, I read about 50 books a year so I've probably read most
     popular ones..."

[15 minutes of typing the same preferences you've typed 20 times before]

✅ WITH DataDam:

You: "Recommend a book for me?"

AI: [Automatically retrieves: 50+ books you've read, favorite genres (hard sci-fi),
    preferred themes (character development), dislikes (non-fiction books, violence), reading pace]

    "Based on your love of hard sci-fi like Project Hail Mary and your preference
    for character-driven stories, try 'A Memory Called Empire' by Arkady Martine.
    It's got the political intrigue of Dune with deep character development,
    and you haven't read it yet."

You: [0 minutes of setup. Instant, personalized answer.]

Time saved: 15 minutes → 0 minutes


Example 2: Tech Stack Recommendations

❌ WITHOUT DataDam:

You: "How should I add authentication to my API?"

AI: "I can help! What's your tech stack? What database are you using?
     What framework? Are you using TypeScript or JavaScript?"

You: "I'm using Node.js with Express and TypeScript, Supabase for the database
     which is PostgreSQL, I deploy on Render, I use Zod for validation,
     I prefer minimal dependencies, I'm working on an MCP server..."

[15 minutes re-explaining your entire tech stack for the hundredth time]

✅ WITH DataDam:

You: "How should I add authentication to my API?"

AI: [Automatically retrieves: TypeScript, Node.js, Express, Supabase (PostgreSQL),
    Render deployment, Zod validation, MCP development focus]

    "For your Express + TypeScript + Supabase stack, I recommend:
    - Use Supabase Auth (already integrated with your PostgreSQL database)
    - Add a middleware with Zod validation for JWT tokens
    - Keep it minimal (matches your preference)
    - Deploy config already works with your Render setup

    Here's the implementation..."

You: [0 minutes explaining. Instant, stack-specific solution.]

Time saved: 15 minutes → 0 minutes


The Core Difference

| Without DataDam | With DataDam | |----------------|--------------| | ❌ Repeat yourself every conversation | ✅ Mention once, remember forever | | ❌ 10-20 min setup per conversation | ✅ 0 min setup, instant context | | ❌ Memory resets when chat resets | ✅ Persistent memory across all chats | | ❌ Context lost when switching AI tools | ✅ Same context across all AI tools | | ❌ Generic, one-size-fits-all responses | ✅ Deeply personalized responses |


Available Categories

  • contacts - People, emails, relationships
  • books - Reading history and preferences
  • interests - Hobbies, skills, topics you care about
  • digital_products - Tools and technologies you use
  • basic_information - Personal details and background
  • favorite_authors - Authors you love

This is based off of personal interests and use, feel free to suggest categories to add.


Tools Overview

  • How it works

    • Your AI tool will invoke the neccessary tools in your console/command line upon needing personal information.
    • It will also fill out the parameters of the call itself
    • Categories group related records (e.g., books, contacts, basic_information). All datapoints are assigned to a category.
    • Tags are used as an optional refinement to narrow down results within each category
    • More information on how each tool works can be found here
  • Data model

    • Categories are maintained in the database and surfaced via the data://categories resource, which are static at the moment.
    • Filtering order: choose a category first, then use tags to further narrow results within that category (tags are optional refinements, not replacements).
  • Server tools (at …/mcp)

| Tool | Title | Purpose | Required | Optional | | --- | --- | --- | --- | --- | | datadam_search_personal_data | Search Personal Data | Find records by title and content; filter by categories/tags. | query | categories, tags, classification, limit, userId | | datadam_extract_personal_data | Extract Personal Data by Category | List items in one category, optionally filtered by tags. | category | tags, limit, offset, userId, filters | | datadam_create_personal_data | Create Personal Data | Store a new record with category, title, and JSON content. | category, title, content | tags, classification, userId | | datadam_update_personal_data | Update Personal Data | Update fields on an existing record by ID. | recordId | title, content, tags, category, classification | | datadam_delete_personal_data | Delete Personal Data | Delete one or more records; optional hard delete. | recordIds | hardDelete |

  • ChatGPT endpoint tools (at …/chatgpt_mcp)

| Tool | Title | Purpose | Required | Optional | | --- | --- | --- | --- | --- | | search | Search (ChatGPT) | Return citation-friendly results for a query. | query | — | | fetch | Fetch (ChatGPT) | Return full document content by ID. | id | — |

Connection Types

DataDam supports two connection methods:

HTTP (Streamable)

  • Use case: Hosted deployments, multiple clients, web-based AI tools
  • Setup: Deploy to cloud service (e.g., Render), configure clients with URL
  • Environment: Server-side environment variables in hosting platform
  • Protocol: HTTP/HTTPS with MCP over streamable transport

Stdio (Standard Input/Output)

  • Use case: Local development, single-client setups, desktop AI applications
  • Setup: Run server.js locally, configure clients to launch the process
  • Environment: Local environment variables or passed via client config
  • Protocol: MCP over stdio transport with direct process communication

Prerequisites

  • Homebrew: Package Manager for MacOS and Linux - Homebrew
  • Git: Version control system - Download Git
  • Node.js + npm: JavaScript runtime and package manager - Download Node.js
  • Accounts: Supabase (required), Render (for hosting)

Quickstart

Installation

1. Clone this repository:

git clone https://github.com/KennethLeeJE8/datadam_mcp.git && cd datadam_mcp

2. Install dependencies:

npm install

3. Build the TypeScript code:

npm run build

Happy to help if you have any problems w the setup! Shoot me a message or send me an email at kennethleeje8@gmail.com :)

Supabase Setup

1. Create a Supabase account

  • Go to Supabase Sign Up to create your account
  • Important: Remember your password - you'll need it for the database connection later
  • Create a new project and wait for it to finish setting up

2. Load the database schema in Supabase SQL Editor:

  • Copy the entire contents of src/database/schema.sql
  • Supabase Dashboard → SQL Editor → New query
  • Paste the copied schema code into the editor
  • Click "Run" to execute the schema

3. You should see your Supabase table editor view populated with tables in "Table Editor".

✅ Supabase setup is complete! Your database is ready to use.

Choose Your Connection Type

Select the connection method based on your AI tools and subscription tiers:

  • Option A: Stdio (Standard Input/Output)

    • Use for: Coding agents (Cursor, Windsurf, etc.), Claude Desktop (Free tier)
    • Next step: Continue to Local Testing section below
  • Option B: HTTP Streamable

    • Use for: ChatGPT Plus or higher, Claude Pro or higher, Coding agents (Cursor, Windsurf, etc.)
    • Next step: Skip to Render Deployment section

Local Testing

1. Set up environment variables by cloning the .env file:

cp .env.example .env

Edit .env and add your Supabase credentials:

To find your SUPABASE_URL:

  • Supabase Dashboard → Project Settings → Data API → Project URL

To find your SUPABASE_SERVICE_ROLE_KEY:

  • Supabase Dashboard → Project Settings → API Keys → service_role (click "Reveal" to copy)

2. Test the connection with the MCP Inspector:

npm run inspector:stdio
  • Transport: Select "stdio"
  • Arguments: Enter "server.js"
  • Click "Connect"

3. Verify the setup:

  • Verify: The inspector should connect and show available tools, confirming Supabase database connection
  • Test: Go to the Tools tab and click "List Tools" → find "extract_personal_data_tool" → enter "interests" for categories → click "Run Tool" to verify database connectivity
  • You should see a datapoint on "MCP (Model Context Protocol)"

Render Deployment (Only for Streamable HTTP Server)

Feel free to use any hosting platform, this is personal preference.

1. Create a Render account at Render or sign in if you have an existing account

2. Deploy to Render

You'll be prompted to fill in the required environment variables:

  • Ensure that branch is main
  • SUPABASE_URL - Get from: Supabase Dashboard → Project Settings → API → Project URL
  • SUPABASE_SERVICE_ROLE_KEY - Get from: Supabase Dashboard → Project Settings → API → Project API keys → service_role (click "Reveal" to copy)

Ensure that the environment variables are filled out correctly, otherwise the deployment will fail.

Verify HTTP Connections

  • Health endpoint: curl http://{render_url}/health

Verify HTTP Tools

  • Test: Go back to the Command Line and run:
    npm run inspector:http
    
    • Server URL: Enter http://<YOUR_RENDER_URL>/mcp
    • **T

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryData
Updated6mo ago
Forks1

Languages

TypeScript

Trust signals

86/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

2 low