md-log Frequently Asked Questions (FAQ)
md-log is a human-in-the-loop review and archive layer that takes the Markdown (.md) reports an AI coding agent writes over MCP, lets a person review and pen-annotate them on web, phone, or tablet, and saves every change as an immutable version. Individuals and teams both use it free on the hosted SaaS (free teams up to 5 members); for unlimited members or full data control you self-host On-Premise.
This page collects the questions people ask most about md-log in one place. For the product overview see Overview, for hands-on setup see Quickstart and Connect MCP, for reviewing and annotating see Review, for team collaboration see Collaboration, and for self-hosting see On-Premise. To start free right now, sign up at app.md-log.com.
Frequently asked questions
General
What is md-log?
md-log is a human-in-the-loop review and archive layer that takes the Markdown (.md) reports an AI coding agent writes about its work, lets a person review and pen-annotate them on web, phone, or tablet, and stores every save as an immutable version. The idea is that you review the report, not the diff.
Who is md-log for?
It is for developers, tech leads, EMs, and small teams running a plan-review-approve loop with an AI coding agent. It fits reviewers especially well when they want to vet an agent's output asynchronously while away from the desk.
Does md-log automatically review my code?
No. md-log is not an automated code reviewer; it is a viewer and archive that presents reports clearly. A person still makes the approve or reject decision (human-in-the-loop), and md-log makes that review comfortable rather than replacing human judgment.
What is vibe coding?
Vibe coding is a way of working where a person hands tasks to an AI coding agent and drives progress by reviewing and approving the results. md-log acts as the review layer where a human vets the reports the agent leaves and accumulates them as history.
Pricing & plans
Is md-log free?
Yes, for individuals and small teams. Individual use is a free, operator-hosted SaaS, and team collaboration is free on the same SaaS for up to 5 members. Sign up at app.md-log.com, mint your MCP key yourself under Settings, Tokens, and start immediately with no sales inquiry and no payment step.
Do I need a credit card?
No. Both the free individual plan and free team collaboration need only a sign-up, with no credit card or payment details.
How much does On-Premise cost?
Team collaboration on the hosted SaaS is free for up to 5 members. On-Premise, which you adopt when you need more members or full data control (keeping reports behind your firewall), is by inquiry. To discuss it, reach out via the contact page (/en/contact) or email support@md-log.com.
Getting started
What do I need to get started?
You need an account at app.md-log.com, an MCP key minted under Settings, Tokens, and Node.js 22 or newer. From there you connect the md-log MCP server to your agent and it can start saving reports.
Do I need Node.js?
Yes. The MCP server runs via npx, so Node.js 22 or newer is required. Check with node -v in a terminal, and if it's missing install the LTS build from nodejs.org. npx auto-downloads the tool on first run, so there is nothing to build manually.
Which AI agents work with md-log?
md-log works with Claude Code, Claude Desktop, OpenAI Codex, Cursor, and other MCP clients. They all connect the same way, with the single command npx -y md-log-mcp and two environment variables.
MCP & keys
Where do I mint my MCP key and what does it look like?
You mint it yourself in the web app under Settings, Tokens, and it starts with mdlog_pat_. The key is shown only once at creation, so copy it somewhere safe right then.
Do I have to tell the agent to save every time?
No. Add a rule to your project's agent rules file (CLAUDE.md for Claude Code, AGENTS.md for Codex, project rules for Cursor) telling the agent to write a WHAT/WHY/IMPACT report and save it via save_markdown at a path like <project>/<date>-<topic>.md. The agent then creates a report automatically after each task.
How do I rotate or revoke a key?
In Settings, Tokens, revoke the existing key and mint a new one. A revoked key is invalidated immediately, so if you suspect a leak, revoke it and re-mint.
Is a leaked key dangerous to my whole account?
No. The MCP key is document-scoped, so the key alone cannot change your password, mint other keys, or manage login sessions. A leaked key does not hand over the whole account, so if one leaks you simply revoke it in Settings, Tokens and mint a new one.
Can I use one key on multiple devices or agents?
Yes. You can configure the same MCP key across several agents or machines. If you prefer to manage them separately, you can also mint multiple keys and split them up.
Review & annotation
Which devices support pen annotation?
You can write handwritten annotations with a stylus on pen-capable tablets: S-Pen on Android (native) and Apple Pencil on iOS. Devices without a stylus fall back to finger-draw, and pen-only UI is gated to pen-capable devices.
Do annotations follow document changes?
Annotations are pinned to a specific document version. The server does not re-anchor or carry them forward automatically; to move them to another version you use an explicit copy action that duplicates them verbatim. Orphaned strokes whose text block no longer exists park at the bottom of the document, client-side.
Can I annotate on the web?
The web app renders annotations read-only as an SVG overlay and never authors strokes. Stroke authoring happens in the mobile and tablet apps.
Can I edit documents on mobile?
Yes. The mobile app is offline-first (local database) and syncs deltas, so you can edit documents there. It runs on iOS and Android, phones and tablets.
Is version history kept?
Yes. Every save creates a new immutable version, and you can view the version history and open past versions. Moving or renaming a document preserves its history and annotations.
Teams & collaboration
Is team collaboration free?
Yes. Team collaboration is a free, generally available feature on the hosted SaaS (not a beta). There is no paid team tier — you create a team and share documents right from your logged-in web or mobile session. Free teams are capped at 5 members; bigger teams move to On-Premise.
How many members can a free team have?
A free team is capped at a maximum of 5 members. If you need more than 5 members or unlimited-size collaboration, you scale up to self-hosted On-Premise.
How do I invite a teammate?
You invite teammates by email from the team management screen. The invitee must already have a md-log account — there is no invite-link signup yet — and invites and team management happen from a logged-in web or mobile session.
What are the roles, and who can edit versus view?
There are four ordered roles: Viewer (read-only) < Editor (edit, annotate, and create inside shared folders) < Admin (manage members, roles, and invites) < Owner (transfer ownership or disband the team). So Viewers read shared reports, while Editors and above save new versions and can create, rename, or delete documents in a shared folder.
Can I share a single document or a whole folder?
Both. In one action you can share a single document or an entire folder (its whole subtree) into a team, and unsharing makes it private again. Sharing is team-scoped, so there is no share-with-one-specific-person option yet.
Where does shared content show up?
On the web it appears inside the main file browser as a 'Shared with me' group with a badge on shared items; on mobile it lives in a dedicated 'Shared' tab in the bottom tab bar. Teammates' pen and stylus annotations show up as per-author layers pinned to the version. Note that on mobile, shared content is online-only (not in the offline store).
Can I collaborate through the MCP key?
No. Team and collaboration features work only from a logged-in web or mobile session; the MCP/PAT key path stays personal and owner-scoped. The MCP key an agent uses cannot create teams, send invites, or manage sharing.
Data & security
Does md-log work offline?
The mobile app supports offline-first editing, but documents are stored on the service server, so a network path to MDLOG_API_BASE_URL is required. Shared content is online-only, and fully offline-only use is not supported.
Where is my data stored, and is it private?
On the free individual plan and free team collaboration, data is stored on the operator-hosted service server and belongs to your account and team. To keep reports that carry your company's code context inside your own infrastructure, On-Premise keeps all reports, images, and annotations behind your firewall.
Is there two-factor authentication?
Yes. md-log supports optional TOTP two-factor authentication using an authenticator app plus recovery codes. When enabled it protects login even if your password leaks, and 2FA applies to web and mobile login only, not to MCP keys.
How do I delete my account and data?
You can delete your whole account under Settings, Account, or delete individual documents and folders. There is also a public account and data deletion page.
What are the path and .md rules?
A filename must end in .md, and paths may not contain '..', backslashes, empty segments, or control characters (they are NFC-normalized). Folders are created automatically on save, like mkdir -p.
Teams & On-Premise
What does On-Premise include?
On-Premise is self-hosting where your team runs auth, storage, and backups. You run the application server and data storage inside your own infrastructure, so reports, images, and annotations stay only in your storage, and no public inbound is required. You adopt it when you need unlimited members or full data control, and the specific components are covered during the adoption conversation.
Can we migrate from the free SaaS to On-Premise?
Yes. The hosted SaaS gives you free individual use and free team collaboration for up to 5 members. When you grow past 5 members or need all reports, images, and annotations in your own storage behind your firewall, you move to On-Premise. Reach out via the contact page (/en/contact) or support@md-log.com, and the workflow and features you already use stay the same.