Puter MCP
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ
MCP server for iCloud (Apple) Calendar access via CalDAVเลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผลตรวจผ่าน 1/3 · ทำงานบนเครื่องคุณ · ✓ ตรวจคำสั่งแล้ว 13 พ.ย. 2569
ขั้นแรก: คุณใช้ AI ตัวไหน
เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
ICLOUD_USERNAME Your Apple ID email (e.g., user@icloud.com)คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ
SettingsDeveloperEdit Config
{
"mcpServers": {
"icloud-calendar": {
"command": "npx",
"args": [
"-y",
"@icloud-calendar-mcp/server"
],
"env": {
"ICLOUD_USERNAME": "ใส่ค่าของคุณ",
"ICLOUD_PASSWORD": "ใส่ค่าของคุณ"
}
}
}
}วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Icloud Calendar MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude บอกว่ากำลังใช้ Icloud Calendar MCP หรือมีชื่อเครื่องมือของ Icloud Calendar MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ChatGPT ยังต่อ Icloud Calendar MCP ไม่ได้
Icloud Calendar MCP ต้องติดตั้งในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะตัวที่ทำงานบนเว็บ
ก · ใช้แอปที่ต่อ Icloud Calendar MCP ได้
ต่อกับ Claude Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Icloud Calendar MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (ICLOUD_USERNAME) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
ICLOUD_USERNAME Your Apple ID email (e.g., user@icloud.com)คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ
Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell
claude mcp add --scope user icloud-calendar --env ICLOUD_USERNAME='ใส่ค่าของคุณ' --env ICLOUD_PASSWORD='ใส่ค่าของคุณ' -- npx -y @icloud-calendar-mcp/serverแก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ต้องเห็น Icloud Calendar MCP ในรายการและขึ้นว่าเชื่อมต่อแล้ว
ใช้ Icloud Calendar MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude Code บอกว่ากำลังใช้ Icloud Calendar MCP หรือมีชื่อเครื่องมือของ Icloud Calendar MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Cursor ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Icloud Calendar MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (ICLOUD_USERNAME) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
ICLOUD_USERNAME Your Apple ID email (e.g., user@icloud.com)คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ
ในค่าตั้งของ Icloud Calendar MCP ช่อง ICLOUD_PASSWORD, ICLOUD_USERNAME ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Icloud Calendar MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Cursor บอกว่ากำลังใช้ Icloud Calendar MCP หรือมีชื่อเครื่องมือของ Icloud Calendar MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ VS Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Icloud Calendar MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (ICLOUD_USERNAME) · ต้องลง Node.js ในเครื่องก่อน (ทำครั้งเดียว)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
ICLOUD_USERNAME Your Apple ID email (e.g., user@icloud.com)คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ
ในค่าตั้งของ Icloud Calendar MCP ช่อง ICLOUD_PASSWORD, ICLOUD_USERNAME ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Icloud Calendar MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า VS Code บอกว่ากำลังใช้ Icloud Calendar MCP หรือมีชื่อเครื่องมือของ Icloud Calendar MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม
ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง
Claude Code
claude mcp add --scope user icloud-calendar --env ICLOUD_USERNAME='ใส่ค่าของคุณ' --env ICLOUD_PASSWORD='ใส่ค่าของคุณ' -- npx -y @icloud-calendar-mcp/serverClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"icloud-calendar": {
"command": "npx",
"args": [
"-y",
"@icloud-calendar-mcp/server"
],
"env": {
"ICLOUD_USERNAME": "ใส่ค่าของคุณ",
"ICLOUD_PASSWORD": "ใส่ค่าของคุณ"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"icloud-calendar": {
"command": "npx",
"args": [
"-y",
"@icloud-calendar-mcp/server"
],
"env": {
"ICLOUD_USERNAME": "ใส่ค่าของคุณ",
"ICLOUD_PASSWORD": "ใส่ค่าของคุณ"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"icloud-calendar": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@icloud-calendar-mcp/server"
],
"env": {
"ICLOUD_USERNAME": "ใส่ค่าของคุณ",
"ICLOUD_PASSWORD": "ใส่ค่าของคุณ"
}
}
}
}ICLOUD_USERNAME จำเป็น envICLOUD_PASSWORD ความลับ จำเป็น envคำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
npm: @icloud-calendar-mcp/serverดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ติดตั้งบนเครื่องได้ใน
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 14 พ.ย. 2569
ผู้ลงทะเบียน (onekash.org) ไม่ใช่เจ้าของ repo (icloud-calendar-mcp) อาจเป็นคนอื่นที่นำมาลงต่อ
มีการแก้โค้ดล่าสุด เมื่อวาน
GitHub อ่านชนิด license ไม่ออก ต้องเปิดไฟล์ดูเอง
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์
ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย
ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx
ยังไม่มีรีวิว
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: ICLOUD_PASSWORD
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด เมื่อวาน และส่งรุ่นล่าสุด (3.3.0) เข้า registry เมื่อวาน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Puter MCP, XcodeBuildMCP, XcodeBuildMCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
ให้ AI จัดการโปรเจกต์ Xcode สั่ง build และใช้ iOS Simulator
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
iCloud Calendar MCP Server
An MCP (Model Context Protocol) server that gives AI assistants access to iCloud Calendar via CalDAV, with security controls aligned with the OWASP MCP Top 10.
[!CAUTION]
Never use your main Apple ID password. This server requires an app-specific password which can be revoked independently without affecting your Apple ID.
get_events and create_event return an opaque handle that references an event across sessions and process restarts, so editing or deleting one needs no re-listing.| Tool | Description | Read-Only | Destructive |
|---|---|---|---|
list_calendars | List all calendars from iCloud account | Yes | No |
get_events | Get events within a date range from a calendar | Yes | No |
create_event | Create a new calendar event | No | No |
update_event | Update an event (whole series or a single occurrence) | No | No |
delete_event | Delete an event (whole series or a single occurrence) | No | Yes |
| Resource | Description |
|---|---|
calendar://calendars | Browse available calendars |
User-initiated templates that guide Claude through a multi-step task:
| Prompt | Description |
|---|---|
schedule_meeting | Draft an event from a title, attendees, and duration, then create it |
reschedule | Move an existing event by looking it up, then editing it |
find_conflicts | List a day's events and report overlapping time slots |
Choose your preferred installation method:
[!IMPORTANT]
Every option runs the same Java build. Java 21 or newer must be on your `PATH`, including for `npx` and `uvx`. Those wrappers download and launch the JAR; they do not replace the JVM.
npx @icloud-calendar-mcp/server
uvx icloud-calendar-mcp
# Download the latest release (version-agnostic name, always resolves)
curl -LO https://github.com/icloud-calendar-mcp/icloud-calendar-mcp/releases/latest/download/icloud-calendar-mcp-all.jar
java -jar icloud-calendar-mcp-all.jar
git clone https://github.com/icloud-calendar-mcp/icloud-calendar-mcp.git
cd icloud-calendar-mcp ./gradlew fatJar java -jar build/libs/icloud-calendar-mcp-*-all.jar
Set your iCloud credentials as environment variables:
export ICLOUD_USERNAME="your-apple-id@icloud.com"
export ICLOUD_PASSWORD="your-app-specific-password"
Security Note: Use an app-specific password, not your main Apple ID password.
Add to your Claude Desktop configuration:
| Platform | Config Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Linux | ~/.config/claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
Using npm (Recommended)
{
"mcpServers": { "icloud-calendar": { "command": "npx", "args": ["@icloud-calendar-mcp/server"], "env": { "ICLOUD_USERNAME": "your-apple-id@icloud.com", "ICLOUD_PASSWORD": "your-app-specific-password" } } } }
</details>
Using uvx (Python)
{
"mcpServers": { "icloud-calendar": { "command": "uvx", "args": ["icloud-calendar-mcp"], "env": { "ICLOUD_USERNAME": "your-apple-id@icloud.com", "ICLOUD_PASSWORD": "your-app-specific-password" } } } }
</details>
Using JAR directly
{
"mcpServers": { "icloud-calendar": { "command": "java", "args": ["-jar", "/path/to/icloud-calendar-mcp-all.jar"], "env": { "ICLOUD_USERNAME": "your-apple-id@icloud.com", "ICLOUD_PASSWORD": "your-app-specific-password" } } } }
</details>
Once configured, you can ask Claude:
No parameters required.
| Parameter | Type | Required | Description |
|---|---|---|---|
calendar_id | string | Yes | Calendar identifier (from list_calendars) |
start_date | string | Yes | Start date (YYYY-MM-DD) |
end_date | string | Yes | End date (YYYY-MM-DD) |
Behavior to know about:
start_date and end_date select whole UTC calendar days: start_date at 00:00 UTC through the end of end_date in UTC. Timed events return UTC startTime/endTime instants; all-day events return a plain YYYY-MM-DD. To resolve a user's day in another timezone, request one extra day on each side and keep the events whose start, converted to that zone, falls on the wanted day; all-day events are floating dates and need no conversion.end_date must not precede start_date. The response is capped at 1000 events, and a single recurring series that expands to too many occurrences is rejected. If you hit a cap, query a week or a month at a time.handle and a recurrenceId that identifies the instance.get_events for a short window. This is CDN indexing lag, not a deletion, so do not recreate it.Each result includes uid, handle, summary, isAllDay, and startTime/endTime (timed) or startDate/endDate (all-day), plus any of description, location, rrule, recurrenceId, status, url, categories, priority, organizer, attendeeCount that are set.
| Parameter | Type | Required | Description |
|---|---|---|---|
calendar_id | string | Yes | Target calendar |
title | string | Yes | Event title |
start_time | string | Cond. | ISO 8601 datetime for a timed event. A naive value (2026-01-15T09:00:00) is read as UTC unless timezone is set; a Z or offset value is an absolute instant that overrides timezone |
end_time | string | Cond. | ISO 8601 datetime for a timed event (same rules as start_time) |
start_date | string | Cond. | Start date YYYY-MM-DD for an all-day event |
end_date | string | Cond. | End date YYYY-MM-DD, inclusive, for an all-day event |
is_all_day | boolean | No | All-day event flag |
description | string | No | Event description |
location | string | No | Event location |
timezone | string | No | IANA timezone for a timed event (e.g., America/New_York) |
end_timezone | string | No | IANA timezone for the end when it differs from the start (e.g., a flight). Falls back to timezone |
rrule | string | No | Recurrence rule (e.g., FREQ=WEEKLY;BYDAY=MO) |
rdates | string[] | No | Extra occurrence dates (RFC 5545 RDATE) |
exdates | string[] | No | Excluded occurrence dates (RFC 5545 EXDATE) |
alarms | object[] | No | Reminders on the event (see Alarms) |
Only the fields you pass are changed.
| Parameter | Type | Required | Description |
|---|---|---|---|
event_id | string | Yes | Reference to the event. Prefer the opaque handle from get_events/create_event; a bare UID also works for an event fetched earlier in the session (see Referencing an event) |
title | string | No | New title |
start_time | string | No | New start time (ISO 8601, same rules as create) |
end_time | string | No | New end time (ISO 8601) |
start_date | string | No | New start date for an all-day event (YYYY-MM-DD) |
end_date | string | No | New end date for an all-day event (YYYY-MM-DD) |
is_all_day | boolean | No | Change to all-day event |
description | string | No | New description |
location | string | No | New location |
timezone | string | No | IANA timezone (e.g., America/New_York) |
end_timezone | string | No | IANA timezone for the end when it differs from the start |
rrule | string | No | Recurrence rule |
rdates | string[] | No | Replace RDATEs (omit to keep, empty array to clear) |
exdates | string[] | No | Replace EXDATEs (omit to keep, empty array to clear) |
alarms | object[] | No | Replace reminders (omit to keep, empty array to clear, a list to replace; see Alarms) |
scope | string | Cond. | Which occurrences a recurring edit affects (see Editing recurring events). Required when the handle points at one occurrence of a series |
| Parameter | Type | Required | Description |
|---|---|---|---|
event_id | string | Yes | Reference to the event. Prefer the opaque handle; a bare UID also works for an event fetched earlier in the session |
scope | string | Cond. | Which occurrences a recurring delete removes (see Editing recurring events). Required when the handle points at one occurrence of a series |
get_events and `cre