Skip to main content

MCP server + CLI for the plintho voice journal

Project description

plintho-mcp

A small CLI + MCP server that lets any MCP-capable client (Claude Desktop, Cursor, Cline, Zed, …) query the plintho voice-journal backend on behalf of a single user.

Install

Direct from GitHub (no PyPI release yet):

pipx install 'git+https://github.com/vtech-ai/plintho-mcp.git'

Or with pip:

pip install 'git+https://github.com/vtech-ai/plintho-mcp.git'

Local checkout while developing:

git clone https://github.com/vtech-ai/plintho-mcp.git
cd plintho-mcp
pipx install -e .

Requires Python 3.11+. Runtime deps: mcp, httpx. The package does not pull in any of the plintho backend's heavy dependencies.

Pair this device with your account

$ plintho-mcp login --name "MacBook Cursor"
配对码: WXYZ-2345
请在 plintho iOS app  Settings  MCP Access 输入此码
等待中...
✓ 已登录为 user-abc

The token is saved to ~/.plintho/mcp_token (mode 600). The plaintext exists only on this machine; the server stores only its sha256 hash.

Wire into your MCP client

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "plintho": { "command": "plintho-mcp" }
  }
}

Claude Code

claude mcp add plintho -- plintho-mcp

Cursor — ~/.cursor/mcp.json

{
  "mcpServers": {
    "plintho": { "command": "plintho-mcp" }
  }
}

Same command key works for Cline / Zed / Continue / any stdio-MCP client.

Tools exposed

Tool What it does
list_events_by_date All events on a given date (YYYY-MM-DD or today/yesterday).
get_event_detail One event's note (Markdown) + raw utterances.
search_events Free-text search across event titles/summaries/notes, optional date.
search_utterances Substring search across raw transcribed utterances.
get_daily_summary Daily summary (日报) for a given date.

All tools are scoped to the user the token was issued to — there is no user_id parameter and the server enforces ownership on every call.

Other commands

plintho-mcp whoami             # show current user_id / token name
plintho-mcp logout             # delete the local token file
plintho-mcp login --force      # re-pair (replaces existing token locally)

To revoke a token server-side, use the iOS app → Settings → MCP Access.

Environment variables

Var Default Purpose
PLINTHO_API_BASE https://api.plintho.app Backend URL.
PLINTHO_HOME ~/.plintho Token + config directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plintho_mcp-0.1.0.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plintho_mcp-0.1.0-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file plintho_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: plintho_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.11

File hashes

Hashes for plintho_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fd7fa6955c8bd3182580dcc74d07ae955200ddf00f48047734c9f28872df472b
MD5 4c8c14abd99ef2148f5d14e60e3d97c6
BLAKE2b-256 6ad72cc551dd0e1d2dff2ce8055ac16fdc367af537a1067615a6c36602d6dbd5

See more details on using hashes here.

File details

Details for the file plintho_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: plintho_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.11

File hashes

Hashes for plintho_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9363660dbcb1be8157b82e0e983611a588d5a4c65a530347524d13394074a23c
MD5 67c1309cebe991927a9487b3f28fe8d3
BLAKE2b-256 d1f71f62e098a5d82dcdf34ef3e00e34e68c75fa18fc50e25d5f8f454a77bbc8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page