Persome
Local-first personal memory and model server for trusted MCP agents on macOS.
io.github.Intuition-Lab/personal-model · Repository · version 0.3.2 · 1.3k stars · listed from registry
Install
The sweep installs into a clean prefix, but this is the command a user would run:
uvx personal-model
Results by platform
Linux
MCP handshake failed2026-11-09 · probed over pypi4 recorded runs, oldest first.
handshake failed: MCP error -32000: Connection closed transport: Unexpected token 'C', "Created de"... is not valid JSON --- stderr (tail) --- … │ │ 1098 │ env_file_mod.load_env_file(paths.env_file()) │ │ 1099 │ from .mcp import server as mcp_server │ │ 1100 │ │ │ ❱ 1101 │ mcp_server.run_stdio() │ │ 1102 │ │ 1103 │ │ 1104 ocr_app = typer.Typer(help="Configure and inspect on-device OCR for │ │ AX-poor apps.") │ │ │ │ /home/runner/.cache/uv/archive-v0/FvtsvJwm-TuXIyf-/lib/python3.14/site-packa │ │ ges/persome/mcp/server.py:1517 in run_stdio │ │ │ │ 1514 │ _start_parent_watchdog() │ │ 1515 │ # Stdio has no HTTP request surface and therefore no bearer │ │ header. Keep it │ │ 1516 │ # explicitly outside the local HTTP authentication boundary. │ │ ❱ 1517 │ server = build_server(auth_enabled=False) │ │ 1518 │ server.run() # FastMCP.run() uses stdio by default │ │ 1519 │ │ 1520 │ │ │ │ /home/runner/.cache/uv/archive-v0/FvtsvJwm-TuXIyf-/lib/python3.14/site-packa │ │ ges/persome/mcp/server.py:784 in build_server │ │ │ │ 781 │ auth_enabled: bool = True, │ │ 782 ): # type: ignore[no-untyped-def] │ │ 783 │ """Construct and return a FastMCP server instance (not yet │ │ running).""" │ │ ❱ 784 │ from mcp.server.fastmcp import FastMCP # lazy import │ │ 785 │ │ │ 786 │ if auth_enabled: │ │ 787 │ │ # HTTP cookies are not port-bound. Invalidate every │ │ capability whenever │ │ │ │ /home/runner/.cache/uv/archive-v0/FvtsvJwm-TuXIyf-/lib/python3.14/site-packa │ │ ges/mcp/server/fastmcp.py:16 in <module> │ │ │ │ 13 │ "or pin 'mcp<2' to keep running v1 code." │ │ 14 ) │ │ 15 │ │ ❱ 16 raise ModuleNotFoundError(_MESSAGE, name=__name__) │ │ 17 │ ╰──────────────────────────────────────────────────────────────────────────────╯ ModuleNotFoundError: No module named 'mcp.server.fastmcp'. This is mcp 2.x, where FastMCP was renamed to MCPServer (from mcp.server.mcpserver import MCPServer) and other APIs changed; see the migration guide at https://py.sdk.modelcontextprotocol.io/v2/migration/#fastmcp-renamed-to-mcpserve r or pin 'mcp<2' to keep running v1 code.
macOS
MCP handshake failed2026-11-09 · probed over pypi4 recorded runs, oldest first.
handshake failed: MCP error -32000: Connection closed
--- stderr (tail) ---
error: No solution found when resolving tool dependencies
cause: Because paddlepaddle{platform_machine == 'arm64' and sys_platform == 'darwin'}==3.3.1 has no wheels with a matching Python ABI tag (e.g., `cp315`) and personal-model>=0.3.2 depends on paddlepaddle{platform_machine == 'arm64' and sys_platform == 'darwin'}==3.3.1, we can conclude that personal-model>=0.3.2 cannot be used.
And because you require personal-model==0.3.2, we can conclude that your requirements are unsatisfiable.
hint: You require CPython 3.15 (`cp315`), but we only found wheels for `paddlepaddle` (v3.3.1) with the following Python ABI tags: `cp39`, `cp310`, `cp311`, `cp312`, `cp313`
Windows
MCP handshake failed2026-11-09 · probed over pypi4 recorded runs, oldest first.
handshake failed: MCP error -32000: Connection closed
--- stderr (tail) ---
Downloading openai (1.6MiB)
Downloading personal-model (6.3MiB)
Downloaded personal-model
Downloaded openai
Installed 56 packages in 15.04s
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "C:\Users\runneradmin\AppData\Local\uv\cache\archive-v0\MVidUyVPl0HkXsPO\Scripts\personal-model.exe\__main__.py", line 4, in <module>
File "C:\Users\runneradmin\AppData\Local\uv\cache\archive-v0\MVidUyVPl0HkXsPO\Lib\site-packages\persome\cli.py", line 16, in <module>
import fcntl
ModuleNotFoundError: No module named 'fcntl'
Badge
Paste this into the project README to show the current result:
[](https://doesitinstall.com/s/io.github.intuition-lab__personal-model.html)