M1K3
Your AI. Your Mac. Nothing leaves. On-device AI companion for macOS — MLX inference, live voice, knowledge graph + RAG, and an MCP server.
Install / Use
claude mcp add Round-Tower -- npx -y github:Round-Tower/M1K3If the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Our assessment of M1K3
M1K3 scores 81/100 on our quality scale, 660th of 932 AI & Machine Learning skills we index.
Its MCP Server is 13 KB long, well organised into 11 sections with 2 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.
Maintenance, license and trust
- The repository was last updated today, so M1K3 is actively maintained.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 80/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.
M1K3 compared with similar skills
All 4 of these similar skills score higher than M1K3; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| M1K3 (this skill)by Round-Tower | 81 | 3 | today | MCP Server |
| claude-memby thedotmack | 100 | 95.1k | today | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 87.5k | 16d ago | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 84.9k | 3d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 74.2k | today | CLAUDE.md |
Frequently asked questions
- How do I install M1K3?
- Run
claude mcp add Round-Tower -- npx -y github:Round-Tower/M1K3. The install tabs above show the steps for each supported agent. - Which AI agents does M1K3 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 M1K3 safe to use?
- It declares no license and scores 80/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 M1K3 still maintained?
- The repository was last updated today, so M1K3 is actively maintained.
Skill content
View source on GitHubWhat's inside
- On-device inference — three brains: Apple Foundation Models for instant answers, Qwen 3 4B, and Gemma 4 12B via MLX. Chat with Mini from the first second while a bigger brain downloads.
- Live voice — sentence-streamed neural TTS + on-device speech-to-text, and a full-window voice mode with karaoke captions.
- Knowledge + RAG — drop in notes and PDFs; M1K3 remembers and cites, locally.
- A memory that repairs itself — a temporal memory graph of dated facts; when you correct something, the dream cycle supersedes the stale fact instead of silently losing either version, and keeps the history visible.
- A face, and creatures — the pixel face by default; an opt-in cast of low-poly 3D companions rendered on-device with RealityKit.
- Call memory — encrypted, on-device call transcription.
- A local agent — tools that do things, grounded in your own data, with markdown + syntax-highlighted code in chat.
- MCP server — 18 tools over local HTTP; give Claude and other agents a resident with a voice, a memory, and your knowledge.
Everything above runs without leaving the device. The only network use is the one-time model download and an optional, explicitly-enabled web search; the 1.0 build has no cloud path at all. A later release adds an opt-in Private Cloud Compute rung — off by default, one message at a time, every PCC answer labelled — see SECURITY.md.
| Surface | Where | Stack | Status |
|---|---|---|---|
| macOS native | macos/ | Swift 6.2, SwiftUI, MLX-Swift | The product — on-device knowledge · RAG · agent · voice · calls. Build it: macos/README.md. |
| iOS + visionOS | macos/M1K3iOSApp/ | Swift 6.2, SwiftUI | Native SwiftUI shell on the same macos/Sources/ package graph — chat · RAG · memories · docs. Ladder tops out at Lil on-device. See macos/docs/IOS_VISIONOS_PORT.md. |
| 間 AI mobile | app/ | Kotlin Multiplatform | Slow burn — the Android surface (KMP), pre-release. See app/README.md. |
| The attic | git history before 7545b4a4 | Python, THREE.js, Tauri | Where M1K3 grew up — the original CLI, avatar experiments, and ideas. Cleared from the tree 2026-08-13; see The attic. |
Get M1K3
- TestFlight beta — the easiest way in.
- Download the DMG — signed & notarized.
- Build from source —
macos/README.md: clone →xcodegen generate→ ⌘R.
Agents
M1K3 ships a command-line client, m1k3, inside the app bundle. It's a thin
client — the running app is the daemon (one MLX slot on the machine, and it
belongs to M1K3.app).
brew trust round-tower/tap # Homebrew 6: trust the tap once
brew install --cask round-tower/tap/m1k3 # the cask symlinks Contents/Helpers/m1k3
m1k3 connect claude # also: codex · cursor · vscode · zed
Then m1k3 status, m1k3 ask "what did I decide about the pin?",
m1k3 remember "…", m1k3 search "…", m1k3 speak "build's green".
Prefer clicking? M1K3 ▸ Settings ▸ Privacy ▸ MCP server has the same thing:
pick your agent, copy the snippet. Already have M1K3 installed? The binary is
at /Applications/M1K3.app/Contents/Helpers/m1k3.
Tell your agents about the resident
m1k3 agent-notes --write folds this into a project's AGENTS.md (or any path
you name). It's marker-fenced, so re-running it replaces the block rather than
stacking copies:
<!-- m1k3:begin -->
## M1K3 is the resident
M1K3 is a local, private assistant running on this Mac, reachable over MCP. It
holds the user's own documents and memories — so before you search the web, ask
it: `ask_m1k3` for a grounded answer, `search_knowledge` for the sources behind
one. Persist a durable fact with `remember` and it is there next session too.
`speak` narrates aloud, which is often kinder than a wall of text.
M1K3 can be down — a "disconnected" MCP server just means the app is closed.
Never block on it; carry on without it.
<!-- m1k3:end -->
One honest caveat: the Mac App Store build's helper is sandboxed, so it
can't write another app's config file or run claude for you. There, m1k3 connect prints the config to paste instead — and says so. The Developer ID
build (the DMG and the Homebrew cask) does the write.
MCP integration
The running Mac app serves MCP over HTTP at http://127.0.0.1:4242/mcp —
knowledge search, documents, voice, and ask_m1k3 (ask the resident AI).
Every request carries the server's access token (Settings ▸ Privacy ▸ MCP
server); m1k3 login && m1k3 connect claude wires Claude Code in. Setup for any
client: macos/docs/MCP_SETUP.md.
Tools
<!-- MCP-TOOLS:START --> <!-- generated by mcp-inventory at 2026-09-15 19:17 — do not hand-edit; run: mcp-inventory --inject README.md --server m1k3 -->18 tools (generated live from the running server).
| Tool | Required args | What it does |
|------|---------------|--------------|
| ask_m1k3 | — | Ask M1K3's local brain a question |
| forget_memory | query | Permanently forget a fact M1K3 remembers — the consent primitive, the counterpart to remember |
| get_answer | job_id | Fetch the result of an ask_m1k3 call that returned a job id because it was taking a while |
| get_document | id | Fetch the text of one indexed item by its id (from list_documents) |
| get_status | — | M1K3's overall status: active brain tier, TTS provider, voice tier, and the busy flags — whether M1K3 is speaking, in a conversation, using its mic, or already answering an ask_m1k3 call |
| list_documents | — | List the items M1K3 has indexed, with their ids, kinds, and titles. |
| list_jobs | — | List recent ask_m1k3 jobs — id, state (running/done/error), and age in seconds |
| list_todos | — | The user's todo list as M1K3 holds it |
| listen | — | Listen on M1K3's microphone and return the transcript once the speaker pauses (or the timeout passes) |
| memory_stats | — | How many atomic facts M1K3 currently remembers (the live, non-superseded count) |
| open_link | url | Open a web link in M1K3's review panel on the user's screen, beside the conversation, so they can see the page |
| propose_todo | title | PROPOSE a todo for the user |
| recall_memory | query | Recall atomic facts M1K3 remembers about the user — the temporal memory GRAPH, separate from the document corpus search_knowledge reads |
| related_memory | query | Recall the single best matching fact for the query, then walk M1K3's memory GRAPH one step out to its neighbours (linked or superseded facts) |
| remember | title, text | Store text in M1K3's memory — it becomes part of what M1K3 knows, searchable in every future conversation (the same store search_knowledge reads) |
| search_knowledge | query | Search M1K3's stored knowledge (documents, calls, notes; hybrid retrieval when available) |
| speak | text | Speak text aloud through M1K3's voice (and animate the avatar) |
| stop_speaking | — | Stop any in-progress speech immediately. |
The table above is generated live from the running app — never hand-edit it. Refresh with
mcp-inventory --inject README.md --server m1k3(needs the M1K3 app running).
The attic
M1K3 didn't start as a Mac app. It started in August 2025 as a Python CLI with
a synthesized voice, grew a THREE.js avatar, a PWA, a Tauri popover, a RAG
engine, and an MCP server — and then everything it learned was rebuilt native.
That history is signed and permanent in this repo's git history — a project
about provenance should keep its own. The attic/ tree was cleared from the
working copy on 2026-08-13; to walk through it, check out any commit before
7545b4a4 (or resurrect it with git checkout 7545b4a4 -- attic).
Contributing
Start with CONTRIBUTING.md. Architecture and current
state: CLAUDE.md. Security reports: SECURITY.md.
Privacy
Inference, retrieval, and voice run on-device; M1K3 itself has no servers and never sees or stores your conversations, and the 1.0 build has no cloud path at all. A later release adds an opt-in Private Cloud Compute rung (off by default): the one message you choose to send will go to Apple's Private Cloud Compute — see SECURITY.md for what will and will not be sent and Apple's own guarantees, quoted and linked.
License
Functional Source License, FSL-1.1-ALv2. M1K3 is
source-available and free for humans, forever: read every line, build it,
modify it, run it for yourself, use it inside your organisation, teach with
it, research with it. What the licence does not permit is a competing use —
offering M1K3, a fork of it, or a substantially similar product to others as a
commercial product or service. Each version converts to Apache-2.0 two years
after release. It is not an OSI open-source licence and we don't call it one.
Attribution and third-party notices are in NOTICE; the decision
and its reasons are in
ADR 0005.
Revisions before 2026-09-09 were published under Apache-2.0 and stay that way;
the boundary is recorded in NOTICE.
The source is public; the name is not. M1K3, the M mark, the pixel face and CRT loo
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
95.1kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
87.5kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
84.9kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
74.2kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
