Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Task automation via SQLite, desktop Local API, or Mindwtr Cloud; read-only by default.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
MINDWTR_DB_PATH, MINDWTR_MCP_CLOUD_URL, MINDWTR_MCP_CLOUD_TOKEN, MINDWTR_MCP_API_URL, MINDWTR_MCP_API_TOKENค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"mindwtr": {
"command": "npx",
"args": [
"-y",
"mindwtr-mcp"
],
"env": {
"MINDWTR_DB_PATH": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_TOKEN": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add mindwtr --env MINDWTR_DB_PATH='ใส่ค่าของคุณ' --env MINDWTR_MCP_CLOUD_URL='ใส่ค่าของคุณ' --env MINDWTR_MCP_CLOUD_TOKEN='ใส่ค่าของคุณ' --env MINDWTR_MCP_API_URL='ใส่ค่าของคุณ' --env MINDWTR_MCP_API_TOKEN='ใส่ค่าของคุณ' -- npx -y mindwtr-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"mindwtr": {
"command": "npx",
"args": [
"-y",
"mindwtr-mcp"
],
"env": {
"MINDWTR_DB_PATH": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_TOKEN": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"mindwtr": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mindwtr-mcp"
],
"env": {
"MINDWTR_DB_PATH": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_CLOUD_TOKEN": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_URL": "ใส่ค่าของคุณ",
"MINDWTR_MCP_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
MINDWTR_DB_PATH envMINDWTR_MCP_CLOUD_URL envMINDWTR_MCP_API_URL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub dongdongbh ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: MINDWTR_MCP_CLOUD_TOKEN, MINDWTR_MCP_API_TOKEN
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.1.14) เข้า registry เมื่อวานซืน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Agent-Native Google Calendar - manage events, sync, and public booking
ให้ AI สร้างและแก้ไฟล์ Excel ได้เอง ทั้งสูตร กราฟ และ PivotTable โดยไม่ต้องมีโปรแกรม Excel ในเครื่อง
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
MCP server for Mindwtr. Connect MCP clients (Claude Desktop, etc.) to your local SQLite database, the desktop Local API, or a self-hosted Mindwtr Cloud endpoint.
By default this is a stdio server: MCP clients launch it as a subprocess and talk over JSON-RPC on stdin/stdout. It also has an opt-in HTTP transport (see Remote access (HTTP)) for self-hosters who want to expose it at a URL instead.
The desktop app includes a built-in MCP server in Settings → Integrations → Local MCP server (advanced). It requires no separately installed runtime or helper. The desktop installer does not add a standalone mindwtr-mcp command to your PATH; mobile apps do not host MCP.
You do not need to run the whole app from source to use MCP. You can use the normal desktop app binary for your tasks, then run this separate MCP helper from the repository with Bun, or build the helper once and run it with Node. Point the helper at the desktop app's local mindwtr.db, or use the Local API backend below.
On desktop, find the database in the default database locations listed under Requirements. Mobile binaries do not expose a local MCP server surface.
These requirements apply to the standalone helper, not the built-in desktop server.
--omit=optional. If no prebuilt binary is available for your platform, npm needs a working C/C++ build toolchain and Python for node-gyp.mindwtr.db) for SQLite mode, a running desktop Local API and bearer token for API mode, or a self-hosted Mindwtr Cloud URL and bearer token for Cloud modeFor SQLite mode with npm 12, approve the SQLite dependency's install script; otherwise a successful install can still fail at startup with a missing native binding. For npx or global installs, allow only better-sqlite3:
npx --allow-scripts=better-sqlite3 -y mindwtr-mcp --db "/path/to/mindwtr.db"
npm install -g --allow-scripts=better-sqlite3 mindwtr-mcp
In MCP client configurations using npx, add "--allow-scripts=better-sqlite3" before "mindwtr-mcp" in args. For an existing project-local install, run npm install-scripts approve better-sqlite3, then npm rebuild better-sqlite3 from that project. Review the dependency before approving; do not enable all dependency scripts.
Default database locations. The installed Windows and macOS apps keep the database in a data subfolder from version 1.3.2 on; Linux and the portable builds are unchanged. The server looks in both places, so it finds the database either way.
~/.local/share/mindwtr/mindwtr.db (Flatpak: ~/.var/app/tech.dongdongbh.mindwtr/data/mindwtr/mindwtr.db; Snap: ~/snap/mindwtr/current/.local/share/mindwtr/mindwtr.db)~/Library/Application Support/mindwtr/data/mindwtr.db~/Library/Application Support/mindwtr/mindwtr.db%APPDATA%\mindwtr\data\mindwtr.db%APPDATA%\mindwtr\mindwtr.dbAdditional macOS paths for sandboxed builds:
~/Library/Containers/tech.dongdongbh.mindwtr/Data/Library/Application Support/mindwtr/data/mindwtr.db~/Library/Containers/tech.dongdongbh.mindwtr/Data/Library/Application Support/mindwtr/mindwtr.dbA --db path pinned in an MCP client configuration keeps working across that move: if the file is not at the configured path, the server checks the matching data subfolder (or the parent folder) and reports on stderr which database it opened.
If mindwtr.db is missing but data.json exists in the same desktop data folder, the MCP server will bootstrap a fresh SQLite database from that local data snapshot on first start. The desktop data folder is the folder that holds mindwtr.db in the default locations above.
You can override local mode with:
--db /path/to/mindwtr.dbMINDWTR_DB_PATH=/path/to/mindwtr.dbMINDWTR_DB=/path/to/mindwtr.dbFor self-hosted Cloud mode, use:
--cloud-url https://mindwtr.example.com or MINDWTR_MCP_CLOUD_URL--cloud-token or MINDWTR_MCP_CLOUD_TOKEN--cloud-allow-insecure-http=true for trusted private HTTP deploymentsAfter installing the published package, run it directly:
mindwtr-mcp --db "/path/to/mindwtr.db"
Or let an MCP client launch it through npx:
{
"mcpServers": { "mindwtr": { "command": "npx", "args": [ "-y", "mindwtr-mcp", "--db", "~/.local/share/mindwtr/mindwtr.db" ] } } }
The npm package is read-only by default. Add --write only when you explicitly want add/update/complete/delete tools enabled.
Requires mindwtr-mcp 1.1.11 or later.
Enable the desktop app's Local API in Settings and copy its bearer token. Keep the app and API running. This backend uses the app's REST endpoints and never opens a database or falls back to SQLite.
For an API-only installation, omit the optional native SQLite addon:
npm install -g --omit=optional mindwtr-mcp
Configure your MCP client to pass the token through its environment, rather than putting it in command-line arguments:
{
"command": "mindwtr-mcp", "args": ["--api-url", "http://127.0.0.1:3456"], "env": { "MINDWTR_MCP_API_TOKEN": " " } }
Use the port shown in Settings. MINDWTR_MCP_API_URL can replace --api-url. URLs must use literal 127.0.0.1 or [::1], with no credentials, path, query or fragment; redirects are refused. Do not combine API and Cloud/--db options. Existing database-path environment variables are ignored in API mode.
Writes remain disabled unless explicitly enabled with --write. If the app is closed or the token is invalid, the helper returns an error. A timed-out write may have reached the app: inspect the task before retrying, as the helper does not retry writes automatically.
Desktop 1.3.8 adds optional protection for task creation and edits in Local API mode:
mindwtr_add_task accepts idempotencyKey, 1–128 visible ASCII characters without spaces. Keep the same key and identical input when retrying an uncertain create, including attachment links. The desktop retains the original result for seven days, even if that task is later edited or deleted. Different input with the same key returns idempotency_conflict. A full receipt store returns idempotency_capacity; retry later with the same key and input.mindwtr_get_task, task creation, and task edits return { "task": { ... }, "version": "sha256-..." }. Pass the version unchanged as expectedVersion to mindwtr_update_task. A stale edit returns task_version_conflict; read the task again and review the changes before retrying. An edit that changes nothing preserves the version.Both arguments are optional. Without them, writes keep their existing behavior. Protected requests use versioned desktop endpoints and fail on older desktop versions without falling back to an unprotected write. Older desktop reads can omit version. These arguments are unavailable in Cloud and direct SQLite mode; unsupported task input fields are rejected. Attachment replacement and lifecycle restrictions below still apply.
| MCP capability | Desktop Local API support |
|---|---|
| List/get tasks | Supported, including rich search operators, date filters, sorting and pagination |
| Create tasks | Explicit title and fields; quickAdd is unavailable |
| Update/complete/delete/restore tasks | Supported through the API's corresponding endpoints; terminal status changes cannot be submitted as ordinary edits |
| List/get/create/update/delete projects | Supported for the API's basic project fields: title, color, status, Area and sequential behavior |
| List areas | Supported |
| View section catalogue and project assignments | Unavailable; task assignments by known ID are supported |
| Sections, managed people, Area writes | Unavailable; these tools are hidden in API mode |
GTD availability view | Unavailable because the API does not expose the required section snapshot |
| Replacing attachment links | Unavailable because the API does not provide conditional attachment updates |
Other unsupported fields are rejected before a write. The desktop API's recurrence limitations also apply; some recurring completions must be performed in the app. This backend does not promise full SQLite/Cloud tool parity.
--api-url selects the helper's data source. --http instead selects how an MCP client connects to the helper; it can be used with any backend and has a separate authentication token.
Use Cloud mode when you run your own Mindwtr Cloud server and want MCP tools without pointing the helper at a local SQLite database:
npx -y mindwtr-mcp \
--cloud-url "https://mindwtr.example.com" \ --cloud-token "$MINDWTR_TOKEN"
Or pass the same values through environment variables:
MINDWTR_MCP_CLOUD_URL="https://mindwtr.example.com" \
MINDWTR_MCP_CLOUD_TOKEN="$MINDWTR_TOKEN" \ npx -y mindwtr-mcp
Cloud mode uses the self-hosted Cloud API. Reads come from the current /v1/data snapshot; with --write, task/project/section/area writes go through the Cloud server's per-resource REST endpoints (POST /v1/tasks, PATCH /v1/tasks/:id, and so on), so they get the same validation and revision stamping as any other client. Without --write, write tools return read_only. Person edits and restoring deleted tasks are not available in Cloud mode yet.
This does not make Mindwtr Cloud itself a hosted MCP server. It is still the same stdio helper, backed by a Cloud URL that you operate.
For private HTTP test deployments, local/private HTTP URLs are allowed by the shared Cloud client rules. Use --cloud-allow-insecure-http=true only for a self-hosted endpoint you intentionally trust.
By default mindwtr-mcp only speaks stdio. Pass --http to also (instead of stdio) serve a stateless streamable-HTTP MCP endpoint, so you can point a remote MCP client at a URL — the motivating case is Gemini Spark "custom apps", which take an MCP server URL. HTTP mode works with all three backends.
mindwtr-mcp --http --http-token "$(openssl rand -hex 32)" --db "/path/to/mindwtr.db"
Flags (all have MINDWTR_MCP_HTTP* env var equivalents):
--http / MINDWTR_MCP_HTTP — enable HTTP mode. Also implied by setting --http-host, --http-port, or --http-token.--http-token / MINDWTR_MCP_HTTP_TOKEN — required whenever HTTP mode is on, at least 16 characters. Generate one with openssl rand -hex 32. The server refuses to start without it — there is no way to expose HTTP mode unauthenticated, even on loopback.--http-host / MINDWTR_MCP_HTTP_HOST — bind address, default 127.0.0.1.--http-port / MINDWTR_MCP_HTTP_PORT — bind port, default 8722.The desktop app's built-in MCP server also uses port 8722. If it is on, pass another port with --http-port, for example --http-port 8723.
The MCP endpoint is POST /mcp and requires Authorization: Bearer on every request; GET /healthz returns 200 ok without auth for reverse-proxy health checks. Requests without a valid token get 401; repeated authentication failures get 429 with a Retry-After header. Bodies over 1 MiB get 413. When HTTP mode is on, the server does not also connect a stdio transport — it
ตัดมาแค่ช่วงต้น อ่านต่อใน repo