Somiya

app.somiya由 somiya.app 發布v0.1.1更新於 Oct 30, 2026

Your family's Somiya calendar, tasks and lists. Reads; any change waits for you to confirm.

已驗證STDIO僅桌面效率與工作流溝通與協作

概覽

AI 產生的概覽

本機 MCP 伺服器,讓 AI 助理讀取家庭 Somiya 行事曆、任務與購物清單,並提出需你在 App 內確認的建議。

可以做什麼
  • 讀取家庭概況:未來 7 天的行程與到期或逾期任務、成員姓名與角色,以及目前權杖的標籤、權限範圍、角色與到期時間。
  • 依時間範圍搜尋行事曆事件。
  • 列出未完成的家庭任務,以及購物清單與其項目。
  • 提出待確認的任務或購物項目建議,建議會留在 App 內等你確認,工具本身不會建立任何內容。
適用情境
適合家庭以 Somiya 安排行程,並希望助理回答「這週家裡有什麼安排」或代為草擬任務與購物項目的情況。只有權杖權限範圍涵蓋的工具才會提供給助理。
執行需求
以 stdio 方式在本機執行,通常透過 npx 啟動,需要 Node 20 以上版本。需在 App 內「設定 → AI 存取」建立權杖,並以環境變數 SOMIYA_TOKEN 傳入;讀取權限預設開啟,suggest:changes 預設關閉。可選 SOMIYA_API_URL 覆寫 API 位址。僅支援桌面端。
安裝前請注意
SOMIYA_TOKEN 可存取家庭行事曆與任務資料,只顯示一次,90 天後過期,可隨時在 App 內撤銷。建議只有在你於 App 內點擊確認後才會成為實際變更,且不提供編輯或刪除。你傳送給 AI 服務商的內容受該服務商條款規範;Somiya 會統計工具呼叫次數用於容量規劃。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Somiya,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

somiya-mcp

MCP server for Somiya — point your own AI assistant at your family's calendar and tasks.

Your AI proposes. Only you confirm.

The server runs on your machine. Your assistant talks to it, it talks to the Somiya API, and Somiya's servers never see the conversation. The assistant can read what you can see, and it can suggest a task or a shopping item — but a suggestion is only a line of text waiting in the app until you tap confirm. Nothing reaches your family's data without that tap.

Quick start

  1. In the Somiya app: Settings → AI access → Create token. Copy it (it is shown once).
  2. Add this to your MCP client's config:
json
{  "mcpServers": {    "somiya": {      "command": "npx",      "args": ["-y", "somiya-mcp"],      "env": { "SOMIYA_TOKEN": "smcp_..." }    }  }}
  1. Restart the client and ask it "what's on for the family this week?"

Try it without the app

A read-only token for a made-up family, the Riveras, is public, so you can see what your assistant gets before installing anything:

bash
claude mcp add somiya-demo -e SOMIYA_TOKEN=smcp_NDh8cy3ETXdhz37s-_cr8XgctTUYh3QgUMDIDqTy1zI -- npx -y somiya-mcp

Or put it in the config above. It reads their calendar, tasks and shopping lists, and it cannot suggest anything. Everyone who tries it shares the one token, so on a busy day it may answer "too many requests" for a minute.

Tools

ToolNeeds scopeWhat it returns
somiya_whats_next—Events and due/overdue tasks for the next 7 days
somiya_get_family—Member names and roles
somiya_whoami—This token's label, scopes, role, expiry
somiya_search_eventsread:calendarEvents between two timestamps
somiya_list_tasksread:tasksOpen family tasks
somiya_list_shoppingread:tasksShopping lists and their items
somiya_suggest_tasksuggest:changesFiles a task for you to confirm in the app. Creates nothing
somiya_suggest_shopping_itemsuggest:changesFiles an item for you to confirm in the app. Creates nothing

Only the tools your token's scopes cover are advertised — the assistant never sees a tool it would be refused. Started without a token, the server lists every tool and each one answers with how to get a token. Scopes are chosen when you create the token; the read scopes are on by default and suggest:changes is off.

Configuration

VariableDefault
SOMIYA_TOKEN—Required. Minted in the app.
SOMIYA_API_URLhttps://api.somiya.appOverride only for self-hosting or staging.

Privacy

  • Somiya never sees your AI conversation. This process is the only thing that talks to both sides, and it runs on your machine.
  • Your AI provider does see whatever you send it. What you paste into your assistant is governed by that provider's terms — that is your choice and your agreement, not something Somiya can make on your behalf.
  • Revoke any time, from the same screen you created the token on. It stops working on the next call.
  • Tokens expire after 90 days.
  • Somiya counts how often each tool is called, for capacity planning. Those counters record a tool name and a date — no user, no family, no arguments, no results.

Why it cannot write on its own

An assistant that reads untrusted content — a forwarded email, a flyer, a web page — can be steered by that content. Give it a "delete the task" tool and prompt injection stops being a curiosity and starts being destructive. So the boundary is the product: every change goes through a person, in the app.

A suggestion arrives as one line with two buttons. Confirming it runs the same code your own tap runs, with the same permission checks and the same audit trail; dismissing it leaves nothing behind; an unanswered suggestion is dropped after a day. That confirmation is not a setting — there is no "always allow", because an always-allow switch is exactly what would turn an injected instruction into a real change.

Editing and deleting are not offered even as suggestions. An assistant that can propose additions can, at worst, waste your time. One that could propose removals would be asking you to approve losses one tap at a time.

The noise is bounded as well, since a confirmation prompt you stop reading is the same as none: at most ten unanswered suggestions per client, one notification per burst rather than one per item, and your quiet hours are honoured.

Development

bash
pnpm installpnpm build

Requires Node 20+ (uses global fetch).

License

MIT

來源:README.md,提交 12086ba

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:伺服器未能啟動。

版本歷史

1
  1. v0.1.1最新Oct 23, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分