Sync Day

io.github.syncday-appPublished by GitHub account syncday-appv1.0.0Updated Oct 27, 2026

Free no-signup group scheduling; share a link and rank times by who's free.

VerifiedStreamable HTTPWeb executableProductivity & WorkflowCommunication & Collaboration

Overview

AI-generated overview

Sync Day lets an assistant create and manage free, no-signup group availability polls, then rank candidate times by who can make them.

What you can do
  • Create availability polls with candidate days and start times, returning a share link
  • Parse a natural-language sentence into poll settings without creating anything
  • Read a poll's settings, candidate starts, participants, ranked times and per-person votes
  • Save or replace one person's availability and set their approval votes
  • Organiser actions: update poll settings, remove a participant, and lock in a final time
When to use it
Useful when a group needs to find a meeting or gathering time without accounts: the assistant can draft a poll from a sentence, share the link, collect availability and votes, and settle on the best slot.
Requirements
A remote endpoint at sync.day over streamable HTTP; no package, environment variable or header is declared. Organiser tools need the adminKey returned by create_event, and participants are identified by an identity value rather than a name.
Before you install
The adminKey from create_event grants organiser powers such as updating the poll, removing participants and deciding the time, so keep it private. Availability and votes are written to a public poll page, and participant names may repeat, so identity values matter. Poll data is stored on a third-party service.

Installation

In SourceWeft

  1. Open Sync Day in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.syncday-app%2Fsync-day/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "sync-day": {
      "type": "http",
      "url": "https://sync.day/mcp/mcp"
    }
  }
}

Tools

8

create_event

Create event

Create a sync.day availability poll and get its share link. Candidate days run from startDate to endDate (inclusive; or give days instead). Each day offers candidate START times from hourFrom, every startStepMinutes, as long as start + durationMinutes <= hourTo. Returns slug, public url (share this), adminUrl and adminKey (keep private; needed for update_event / remove_participant). Example: 周六周日下午聚餐 3 小时 -> {title:'周末聚餐', startDate:'2026-09-05', endDate:'2026-09-06', hourFrom:13, hourTo:18, durationMinutes:180, startStepMinutes:60}.

ParametersdaystitlerequiredhourTorequiredendDatehourFromrequiredquestionstartDaterequireddurationMinutesrequiredstartStepMinutes

parse_event_text

Parse event text

Turn a natural-language sentence (Chinese works best) into create_event input using sync.day's AI parser. Does NOT create anything; review the result, then call create_event. Example: '下周六或周日下午聚餐,大概 3 小时'.

Parameterstextrequiredtoday

get_event

Get event

Read an event: settings, every candidate start key per day (startOptions), who has answered (participants with their start keys; names may repeat), the top 10 start times by head-count (ranked), the starts EVERYONE with picks can make with their votes (voteOptions), each person's vote (votes) and decidedStart. No key needed.

Parametersslugrequired

submit_availability

Submit availability

Save (or replace) one person's availability: the candidate start keys they can make, from get_event.startOptions. The person is identified by `identity`, not by name: the same identity later overwrites the same row (and can rename it), a different identity with the same name is a second participant. Keys outside the event's start options are rejected. Returns the updated ranking.

Parametersnamerequiredslugrequiredstartsrequiredidentityrequired

remove_participant

Remove participant

Organiser only: remove one participant by name (the oldest row with that name when it repeats), together with their vote. Requires the adminKey from create_event.

ParametersnamerequiredslugrequiredadminKeyrequired

update_event

Update event

Organiser only: change any event settings (same fields and rules as create_event; omitted fields keep their current value; endDate wins over days). Existing picks are kept; those no longer valid starts are just hidden.

ParametersdaysslugrequiredtitlehourToendDateadminKeyrequiredhourFromquestionstartDatedurationMinutesstartStepMinutes

vote_time

Approve start times

Approval voting: set every start one person accepts (replaces their earlier approvals; an empty list clears them). The voter is the `identity` used in submit_availability and must have at least one start saved. Only keys listed in get_event.voteOptions are accepted; the error lists the current options otherwise. Rejected once the organiser decided. Example: {slug:'calm-otter-4821', identity:'3f9a1c77b2e04d5e8a61f0c9d2b7e415', starts:['2026-09-05T15:00','2026-09-06T10:00']}. `start` is shorthand for a single-item `starts`.

Parametersslugrequiredstartstartsidentityrequired

decide_time

Decide the time

Organiser only: settle on a start time (locks availability picking and voting; the page shows 已定). Pass start=null to reopen. Requires the adminKey from create_event.

ParametersslugrequiredstartrequiredadminKeyrequired

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.