VolunteerReminder

com.volunteerreminder由 volunteerreminder.com 发布官方发布者v0.3.0更新于 Oct 24, 2026

Import a volunteer roster and preview shifts. Test-mode until a human enables live SMS.

已验证Streamable HTTP可网页运行效率与工作流沟通与协作

概览

AI 生成的概览

面向 VolunteerReminder 的远程 MCP 服务器,让助手为组织管理志愿者名册、周期性排班和提醒设置。

可以做什么
读取账户概览、套餐权益、提醒设置、发送历史和公开价格,并可创建账户或生成 Stripe 结账链接交给人工完成订阅。管理排班:列出、查看、预览发生日期、创建、更新和归档周期性或指定日期排班。管理志愿者:列出、添加、更新和移除联系人,并整体替换某排班的名册。从 CSV 或表格导入粘贴或上传的志愿者名册与排班,创建前可先预览。查看即将到来的班次、仍缺志愿者的日期,并向账户所有者发送测试提醒。
适用场景
适合已在使用 VolunteerReminder 的志愿者协调者或组织,希望由助手创建周期性排班、导入名册、回答谁在何时值班的问题,并调整提醒提前时间,而无需打开后台面板。
运行要求
远程 streamable HTTP 端点,无需本地安装包。需要已有的 VolunteerReminder 账户及 API 访问权限,并具备 read、schedules:write、contacts:write、reminders:write 等作用域。get_pricing 等部分工具无需 API 密钥。需要能访问该服务的网络。
安装前请注意
写入类工具会创建、更新、归档和移除排班与联系人,assign_contacts_to_schedule 会整体替换名册,操作前应先与用户确认。send_test_reminder 会发送真实消息,但会转给账户所有者。start_checkout 会导向 Stripe 付费订阅,助手不直接收款。导入可能批量创建联系人和排班,应先预览。志愿者姓名、电话和邮箱会发送到该服务。

安装

在 SourceWeft 中

  1. 打开 控制台中的 VolunteerReminder,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.volunteerreminder%2Fmcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "volunteerreminder": {
      "type": "http",
      "url": "https://mcp.volunteerreminder.com/mcp"
    }
  }
}

README

该仓库没有 README。

工具

23

get_account_overview

Get account overview

Read the current VolunteerReminder account: organization name, plan and entitlements, current reminder send mode, and volunteer usage vs the plan limit. Call this first to understand what the account can do before creating schedules or contacts. Note the `reminder_mode`: an account created through this connector (create_account) starts in `test` (reminders reroute to the owner, never to volunteers); only a human can switch it to `live` from the dashboard. `effective_mode` is what actually happens at send time.

无需输入参数。

list_schedules

List schedules

List all active (non-archived) schedules on the account, each with its description, job/role (name and job_id), next upcoming occurrence, and how many volunteers are rostered. Requires the `read` scope.

无需输入参数。

get_schedule

Get a schedule

Get one schedule's full configuration: recurrence settings, job/role, group, roster (contact ids), start/end dates, and notes. Requires the `read` scope.

输入参数schedule_id必填

preview_schedule_occurrences

Preview upcoming occurrence dates

PURE and side-effect-free: computes the next occurrence dates a recurrence configuration WOULD produce, without creating anything. Use this to show the user the concrete dates (e.g. 'the next 8 Tuesdays at 9:00 AM Central') and get their confirmation BEFORE calling create_schedule. Requires the `read` scope.

输入参数timecountend_datestart_datenth_weekdaystart_monthcustom_datesday_of_monthdays_of_weekschedule_type必填week_of_month

get_upcoming_shifts

Get upcoming shifts

Who is volunteering when. Lists upcoming shifts with date/time, schedule, whether that date is still on, and the rostered volunteers' names. Omit `schedule_id` to cover EVERY active schedule in one call (best for questions like "who is on this Sunday?": pass from and to as that same date). A bare "yyyy-MM-dd" `to` includes that whole day. Requires the `read` scope.

输入参数tofromlimitschedule_id

create_schedule

Create a schedule

Create a recurring (or custom-date) schedule and materialize its upcoming occurrences. Best practice: call preview_schedule_occurrences with the same recurrence settings first and confirm the dates with the user. This tool returns the created schedule AND an inline preview of its next occurrences so you can show what was set up. You can optionally seed the roster with contact_ids at creation. Requires the `schedules:write` scope.

输入参数timenotesend_dategroup_idjob_name必填start_datecontact_idsdescription必填nth_weekdaystart_monthcustom_datesday_of_month另有 3 个

update_schedule

Update a schedule

Partially update a schedule — send only the fields you want to change; unset fields keep their current value. Changing recurrence fields recomputes and re-materializes future occurrences. If the change would remove upcoming shifts, nothing is saved and the tool returns confirm_remove_required with the `removed` dates and a `confirm_token`. Show the user those dates; only if they agree, call again with the same changes plus confirm_remove: true and that confirm_token. This tool does NOT change the roster; use assign_contacts_to_schedule for that. Requires the `schedules:write` scope.

输入参数timenotesend_dategroup_idjob_namestart_datedescriptionnth_weekdayschedule_id必填start_monthcustom_datesday_of_month另有 5 个

archive_schedule

Archive a schedule

Archive (soft-delete) a schedule. It stops appearing in the active list and no further reminders go out for it, but past reminder history is preserved. This is reversible only from the dashboard. Confirm with the user before archiving. Requires the `schedules:write` scope.

输入参数schedule_id必填

list_contacts

List volunteers

List all volunteers on the account's roster, each with contact details and group. Requires the `read` scope.

无需输入参数。

add_contacts

Add volunteers

Add one or more volunteers to the roster in a single call. ALL-OR-NOTHING: if the batch would push the account past its plan's volunteer limit, or any contact references a group_id not on this account, NOTHING is added and the error names the limit/count/bad id so you can adjust. Phone numbers are validated and normalized to E.164. Adding a mobile number needs consent_attested=true (ask the user to confirm the volunteers agreed to texts). To put new volunteers on a shift, follow with assign_contacts_to_schedule. Requires the `contacts:write` scope.

输入参数contacts必填consent_attested

update_contact

Update a volunteer

Update a volunteer's details. Send only the fields you want to change; a field set to null clears it. Requires the `contacts:write` scope.

输入参数notesgroup_idfull_namelast_namecontact_id必填first_nameland_phonemobile_phoneemail_addressconsent_attested

remove_contact

Remove a volunteer

Remove (soft-delete) a volunteer from the roster. This frees a volunteer-cap slot and removes them from any schedule rosters they were on. Confirm with the user before removing. Requires the `contacts:write` scope.

输入参数contact_id必填

assign_contacts_to_schedule

Set a schedule's roster

Assign volunteers to a schedule. This REPLACES the schedule's entire roster — send the COMPLETE desired set of contact ids, not a delta (pass an empty array to clear it). Every id must belong to this account or the whole request is rejected with the offending ids named. Does not change occurrences. Requires the `contacts:write` scope.

输入参数contact_ids必填schedule_id必填

import_volunteer_schedule

Import a volunteer roster and schedule

Parse a pasted or uploaded volunteer roster + schedule (CSV or a table with columns like name, phone, email, job/role, day, start, end) and either PREVIEW or CREATE the contacts, schedules, and assignments. Always call first with confirm=false and show the user the upcoming shifts; only call again with confirm=true, passing back preview_token from that preview, after they approve. Import is test-mode only and is refused on some accounts. Use create_account first if they do not have an account — do not invent a second signup path. This tool never changes reminder mode, never enables the confirm loop or substitute finder, and never texts real volunteers. New accounts stay in test mode. Requires `read` for preview; `schedules:write` and `contacts:write` to commit. Set consent_attested=true on commit when any row has a phone number (the coordinator affirms the volunteers agreed to be texted).

输入参数text必填confirmpreview_tokenconsent_attested

get_open_days

Get open days (who do we still need?)

List calendar days in the look-ahead window that have no attendable shift yet, plus recurring monthly slots not yet claimed by a schedule — i.e. where the account still needs volunteers. Requires the `read` scope.

输入参数monthscurrent_year_only

get_reminder_settings

Get reminder settings

Read the account's reminder lead times (the account-wide default plus any per-job overrides) and which channels (email / SMS) are available on the current plan. Reminder overrides are per JOB, not per individual schedule. Requires the `read` scope.

无需输入参数。

get_send_history

Get reminder send history

Read recent reminder outcomes — which reminders were sent and which failed — newest first, paginated. Use this to confirm reminders actually went out. Requires the `read` scope.

输入参数pageper_page

set_reminder_rule

Set a reminder rule

Set the reminder lead time: the account-wide default and/or a per-job override. Provide at least one of `global_default` or `job_override`, and set at least one of days/hours/minutes greater than zero. Overrides are per JOB (a job may back several schedules); get the job_id from list_schedules. Replaces any earlier override for that job. Requires the `reminders:write` scope.

输入参数require_smsjob_overrideglobal_default

remove_reminder_rule

Remove a reminder rule

Remove a reminder lead-time rule. Provide `job_id` to remove that job's override; omit it to clear the account-wide default. Returns the updated reminder settings. Requires the `reminders:write` scope.

输入参数job_id

send_test_reminder

Send a test reminder to the account owner

Send a single TEST reminder to the account owner's own email/phone so they can preview what a reminder looks like. This never reaches volunteers — it always reroutes to the owner. Optionally pass a schedule_id to preview that schedule's reminder; otherwise a generic sample is sent. It is a real message that cannot be unsent, so confirm with the user first. Requires the `reminders:write` scope.

输入参数schedule_id

get_pricing

Get pricing and plans

Read VolunteerReminder's public plan catalog: each plan's monthly and annual price (USD), volunteer limit, and included features (SMS reminders are included with no per-message credits or metering). No API key required — use this to help a user comparison-shop or decide which plan fits before they sign up.

无需输入参数。

create_account

Create an account (pending email verification)

Start a new VolunteerReminder account for a human, using their email address. This does NOT finish signup and does NOT return an API key: it emails the person a verification link they must click to activate the account. Nothing can be built on the account and no reminders can ever send until they verify — and even then a new account starts in safe `test` mode (reminders reach only the owner, never volunteers) until a human turns on live sending from the dashboard. Idempotent: calling it again with the same email re-sends the link and creates no duplicate. After the user tells you they've verified, they mint an API key from the dashboard and reconnect this connector with it. Tell the user to check their email.

输入参数email必填organization_name

start_checkout

Get a Stripe Checkout link to subscribe

Get a Stripe-hosted Checkout URL for the account to subscribe to a paid plan, then HAND THE URL TO THE HUMAN to open and complete payment. You never take payment yourself and never see card details. Use get_pricing first to pick a plan. Fails if the account already has an active subscription (manage that from the billing dashboard). Requires a connected API key (any scope with `read`).

输入参数plan必填interval

版本历史

1
  1. v0.3.0最新Sep 16, 2026

评分

已满足适用检查项的 75%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分

    请声明包含 README 的 GitHub 仓库,或在 OAuth 受保护资源元数据中提供 resource_documentation。

  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。