Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Private, EU-hosted email for AI agents over JMAP: read, search, reply, draft, organize, send.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
LETTIO_USERNAME, LETTIO_PASSWORD, LETTIO_HOSTค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://mcp.lettio.eu/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"lettio": {
"command": "npx",
"args": [
"-y",
"@lettio/mcp"
],
"env": {
"LETTIO_USERNAME": "ใส่ค่าของคุณ",
"LETTIO_PASSWORD": "ใส่ค่าของคุณ",
"LETTIO_HOST": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http lettio https://mcp.lettio.eu/mcpclaude mcp add lettio --env LETTIO_USERNAME='ใส่ค่าของคุณ' --env LETTIO_PASSWORD='ใส่ค่าของคุณ' --env LETTIO_HOST='ใส่ค่าของคุณ' -- npx -y @lettio/mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"lettio": {
"url": "https://mcp.lettio.eu/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"lettio": {
"command": "npx",
"args": [
"-y",
"@lettio/mcp"
],
"env": {
"LETTIO_USERNAME": "ใส่ค่าของคุณ",
"LETTIO_PASSWORD": "ใส่ค่าของคุณ",
"LETTIO_HOST": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"lettio": {
"type": "http",
"url": "https://mcp.lettio.eu/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"lettio": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@lettio/mcp"
],
"env": {
"LETTIO_USERNAME": "ใส่ค่าของคุณ",
"LETTIO_PASSWORD": "ใส่ค่าของคุณ",
"LETTIO_HOST": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://mcp.lettio.eu/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
LETTIO_HOST envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน lettio.eu แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 341 ms (HTTP 401)
ประกาศวิธีล็อกอินแบบ OAuth ให้โปรแกรม AI พาไปล็อกอินเอง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: LETTIO_USERNAME, LETTIO_PASSWORD
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.5.0) เข้า registry 5 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Vexa, emailmd, MCP WhatsApp Cloud
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Let your AI assistant read, search and send email from a private, EU-hosted mailbox.
Lettio MCP is a Model Context Protocol server that connects an AI agent (Claude, Cursor, and any other MCP client) to a Lettio mailbox over JMAP. Your assistant can triage your inbox, find a message, and send a reply.
Prefer nothing to install? Lettio also runs as a hosted, OAuth‑secured MCP server at
https://mcp.lettio.eu/mcp— add that URL in your client and sign in. This npm package is the
local / self‑hosted option for people who want to run it on their own machine.
The hosted server at https://mcp.lettio.eu/mcp adds three tools that open interactive cards in clients that support MCP Apps, such as Claude:
show_emails: the inbox, a folder or search results as a list you can open, archive and flagshow_email: a whole conversation, with Reply, Reply all, Archive and Trashpreview_email: a drafted message you can edit, preview in your brand and sendSending from a card always needs your click, even when the connection doesn't allow the agent to send on its own. One connection can cover up to 10 mailboxes; searches run across all of them.
| Tool | What it does |
|---|---|
whoami | Show the connected mailbox and whether it may send. |
list_accounts | List configured mailboxes (local server). |
list_mailboxes | List folders with message and unread counts. |
list_recent_emails | Latest messages in a folder, with paging. |
search_emails | Free text plus filters: sender, recipient, subject, dates, attachments, unread, folder. |
read_email | One message as text, with its attachments listed. HTML mail is converted. |
get_thread | A whole conversation, oldest first. |
get_attachment | Open an attachment: text and PDF as text, images as images, others as binary. Locally it can also save to a file. |
send_email | Send formatted mail as the signed-in mailbox, with attachments. |
reply_email | Reply in-thread, optionally to everyone, with attachments. |
create_draft | Save a message to Drafts without sending. |
create_reply_draft | Save a threaded reply to Drafts without sending. |
send_draft | Send a draft that is already in Drafts. |
set_read_status | Mark messages read or unread. |
flag_email | Flag or unflag messages. |
label_email | Add or remove a label. |
move_email | Move to a folder, archive, or trash (reversible). |
create_folder | Create a mail folder. |
Messages are written in Markdown and rendered as a styled email: headings, tables, quotes (end with > — Name), callouts (> [!NOTE] Title), code blocks, numbered steps and buttons ([Label](https://url "button")). The mailbox signature is added automatically; set it with set_signature.
To match your brand, set LETTIO_BRANDS to JSON (or a path to a JSON file) keyed by domain:
{ "example.com": { "primary": "#231F47", "accent": "#D8093A", "font": "Lexend, Arial, sans-serif" } }
Formatted mail goes out as HTML with a plain-text version. Pass format: "plain" to send text as written. Bulk tools take up to 100 ids.
Attachments can be base64 content, a local path, or from_email_id with attachment_id to reuse a file from another message.
Add this to your claude_desktop_config.json:
{
"mcpServers": { "lettio": { "command": "npx", "args": ["-y", "@lettio/mcp"], "env": { "LETTIO_USERNAME": "you@yourcompany.eu", "LETTIO_PASSWORD": "your-app-password" } } } }
Restart Claude Desktop; the Lettio tools appear in the tools menu.
Configured entirely through environment variables.
| Variable | Required | Description |
|---|---|---|
LETTIO_USERNAME | yes | Full email address, e.g. you@yourcompany.eu. |
LETTIO_PASSWORD | yes | Mailbox app password. |
LETTIO_HOST | no | Mail host. Defaults to https://mail.lettio.eu. |
LETTIO_ACCOUNT_NAME | no | Friendly name for the account (default: the username). |
Set LETTIO_ACCOUNTS to a JSON array and omit the single‑account variables:
[
{ "name": "work", "username": "you@yourcompany.eu", "password": "app-password" }, { "name": "sales", "username": "sales@yourcompany.eu", "password": "app-password" } ]
Then pass account: "work" to any tool to choose which mailbox to use.
Sending is deliberately constrained. Before it sends, the server asks the mail host for the identities the signed‑in mailbox is allowed to use and requires one that matches the login address. The From header and the SMTP envelope MAIL FROM are both pinned to that address. There is no parameter for choosing a different sender, so an agent can never send "from" a foreign or arbitrary mailbox. Credentials are read from the environment, kept only in memory, and never logged.
npm install
npm run build LETTIO_USERNAME=you@yourcompany.eu LETTIO_PASSWORD=app-password npm start
MIT © Valmia Solutions s.r.o.