Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

StudioMeyer Personal Suite

NPM · MCP-PERSONAL-SUITE · SCANNED SEP 20

Local-first productivity: email, calendar, messaging, search, image gen. 49 tools. BYOK.

Available components

0 this week 77 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security81
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects nodemailer 8.0.11, a direct dependency. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • Dependency health was assessed across the 329 of 330 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 90 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability79
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 5555 tokens (~113/item across 49 items; 49 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
  • Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 6 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "suite_delete" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 50 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the StudioMeyer Personal Suite MCP server?

StudioMeyer Personal Suite runs locally as an npm package, launched with npx -y mcp-personal-suite. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · mcp-personal-suite

# add to Claude Code
claude mcp add io-studiomeyer-personal-suite -- npx -y mcp-personal-suite
// .cursor/mcp.json
{
  "mcpServers": {
    "io-studiomeyer-personal-suite": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-personal-suite"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "io-studiomeyer-personal-suite": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-personal-suite"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add io-studiomeyer-personal-suite -- npx -y mcp-personal-suite
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-studiomeyer-personal-suite": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "mcp-personal-suite"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add io-studiomeyer-personal-suite --command npx --arg -y --arg mcp-personal-suite
# ~/.hermes/config.yaml
mcp_servers:
  io-studiomeyer-personal-suite:
    command: "npx"
    args: ["-y", "mcp-personal-suite"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "io-studiomeyer-personal-suite": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "mcp-personal-suite"
      ]
    }
  }
}
# add to Vellum
assistant mcp add io-studiomeyer-personal-suite -t stdio -c npx -a -y mcp-personal-suite
// mcp.json
{
  "mcpServers": {
    "io-studiomeyer-personal-suite": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-personal-suite"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 −3
    • CVE-2026-92598 affects this package: high security
    • CVE-2026-92595 affects this package: high security
    • CVE-2026-92597 affects this package: high security
    • CVE-2026-92596 affects this package: high security
    • GHSA-cc9r-2j5m-2m83 no longer affects this package security
    • GHSA-8m3c-c648-2xjj no longer affects this package security
    • GHSA-wmmp-3585-3rmp no longer affects this package security
    • GHSA-2x7j-588g-ccc2 no longer affects this package security
    • Stability: pass → 0.80 functional
  • 17 Sept 26 +1
    • Stability: 0.97 → pass security
  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 13 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

  • 10 Sept 26 −4
    • Stability: pass → 0.77 functional
  • 9 Sept 26 +1
    • GHSA-8m3c-c648-2xjj affects this package: high security
    • GHSA-2x7j-588g-ccc2 affects this package: high security
    • GHSA-cc9r-2j5m-2m83 affects this package: high security
    • GHSA-wmmp-3585-3rmp affects this package: high security
    • Stability: 0.97 → pass security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/mcp-personal-suite@0.5.6

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 5 findings
ID CVE Severity Vector Fix available
GHSA-2x7j-588g-ccc2 CVE-2026-92596 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-8m3c-c648-2xjj CVE-2026-92595 medium CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N yes
GHSA-cc9r-2j5m-2m83 CVE-2026-92597 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N yes
GHSA-p6gq-j5cr-w38f CVE-2026-82659 high CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N yes
GHSA-wmmp-3585-3rmp CVE-2026-92598 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 329 packages
Packages resolved 329
Deprecated 2
Stale 83
Tree resolution Partial

The dependency tree was only partially resolved, so these counts may be incomplete.

Background: SBOMs and build attestations, explained →

MCP tools · 49 exposed · ~4,948 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
calendar_check_availability ~111

Find free time slots on a given day. Useful for meeting planning — returns available slots with minimum duration.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
datestringyesDate to check (YYYY-MM-DD)
durationMinutesnumberMinimum slot duration in minutes (default: 30)
endHournumberBusiness day end hour (default: 18)
startHournumberBusiness day start hour (default: 9)

No output schema declared.

No examples provided.

calendar_create_event ~249

Create a new calendar event. Supports title, start/end time, description, location, attendees, recurrence. Google Meet links available with Google provider. Automatically checks for conflicts before creating.

NameTypeReqDescription
addMeetLinkbooleanAuto-generate a Google Meet link for this event
attendeesarrayAttendee email addresses
calendarIdstringCalendar ID (default: primary)
descriptionstringEvent description
endstringyesEnd time (ISO 8601, e.g. 2026-03-18T11:00:00+01:00)
locationstringEvent location
recurrencestringRecurrence rule: "daily", "weekly", "monthly", "yearly", or custom RRULE string (e.g. "RRULE:FREQ=WEEKLY;BYDAY=MO")
startstringyesStart time (ISO 8601, e.g. 2026-03-18T10:00:00+01:00)
summarystringyesEvent title
timeZonestringTime zone (default: Europe/Berlin)

No output schema declared.

No examples provided.

calendar_daily_summary ~65

Full day overview with AI context: all events, busy/free time analysis, first/last event times. Great for daily planning.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
datestringDate (YYYY-MM-DD). Default: today

No output schema declared.

No examples provided.

calendar_delete_event ~46

Delete a calendar event. Sends cancellation notice to attendees.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
eventIdstringyesEvent ID to delete

No output schema declared.

No examples provided.

calendar_get_event ~50

Get a single calendar event with full details (description, attendees, location, etc.).

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
eventIdstringyesEvent ID

No output schema declared.

No examples provided.

calendar_list_calendars ~29

List all calendars accessible to the authenticated user with their IDs, names, and access roles.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

calendar_list_events ~139

List calendar events within a date range. Defaults to next 7 days. Supports calendar filtering.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
maxResultsnumberMax events to return (default: 50)
querystringFree-text filter on event fields
timeMaxstringEnd of time range (ISO 8601). Default: 7 days from now
timeMinstringStart of time range (ISO 8601, e.g. 2026-03-17T00:00:00+01:00). Default: now

No output schema declared.

No examples provided.

calendar_search_events ~67

Full-text search across event titles, descriptions, and locations. Searches 1 year back and forward.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
maxResultsnumberMax results (default: 20)
querystringyesSearch query

No output schema declared.

No examples provided.

calendar_status ~42

Check calendar configuration status. Supports Google Calendar and CalDAV (iCloud, Nextcloud, mailbox.org, etc.). Call this first to see if calendar is set up.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

calendar_upcoming ~61

Quick view: next N events from now. Default: 5 events. Fast overview of what is coming up.

NameTypeReqDescription
calendarIdstringCalendar ID (default: primary)
countnumberNumber of events (default: 5)

No output schema declared.

No examples provided.

calendar_update_event ~136

Update an existing calendar event. Only provided fields will be changed.

NameTypeReqDescription
attendeesarrayNew attendee list (replaces existing)
calendarIdstringCalendar ID (default: primary)
descriptionstringNew description
endstringNew end time (ISO 8601)
eventIdstringyesEvent ID to update
locationstringNew location
startstringNew start time (ISO 8601)
summarystringNew title
timeZonestringTime zone (default: Europe/Berlin)

No output schema declared.

No examples provided.

channel_broadcast ~50

Send the same message to multiple platforms at once. Runs in parallel.

NameTypeReqDescription
targetsarrayyesArray of { platform, channelId } targets
textstringyesMessage text to broadcast

No output schema declared.

No examples provided.

channel_connect ~52

Connect to a messaging platform. Idempotent — safe to call if already connected. For WhatsApp: if QR scan is needed, returns the raw pairing URI string.

NameTypeReqDescription
platformstringyesPlatform to connect

No output schema declared.

No examples provided.

channel_disconnect ~29

Disconnect from a messaging platform. This stops receiving messages.

NameTypeReqDescription
platformstringyesPlatform to disconnect

No output schema declared.

No examples provided.

channel_history ~103

Get conversation history from a platform API. Unlike channel_receive (which reads the local buffer), this fetches older messages directly from the platform.

NameTypeReqDescription
beforenumberUnix timestamp (ms) — messages before this time
channelIdstringyesChannel/chat ID
limitnumberMax messages to return (default 50)
platformstringyesPlatform to query
threadIdstringThread ID for thread-specific history

No output schema declared.

No examples provided.

channel_list ~32

List available channels/groups/conversations on connected platforms.

NameTypeReqDescription
platformstringFilter by platform (omit for all)

No output schema declared.

No examples provided.

channel_receive ~74

Get recently received messages from the in-memory buffer. For older messages, use channel_history instead.

NameTypeReqDescription
limitnumberMax messages to return (default 20)
platformstringFilter by platform (omit for all)
sincenumberUnix timestamp (ms) — only messages after this time

No output schema declared.

No examples provided.

channel_send ~89

Send a message to a specific platform and channel. Use channel_list to discover channel IDs first.

NameTypeReqDescription
channelIdstringyesChannel/chat ID on the platform
platformstringyesTarget platform
replyToIdstringMessage ID to reply to
textstringyesMessage text to send
threadIdstringThread/topic ID for threaded replies

No output schema declared.

No examples provided.

channel_status ~25

Health check for all configured messaging platforms. Call this first to see what is available.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

email_auth ~145

Generate OAuth2 authorization URL or exchange authorization code for tokens. Step 1: action="url" to get the auth URL. Step 2: action="exchange" with the code from the redirect.

NameTypeReqDescription
actionstringyes"url" to generate auth URL, "exchange" to trade code for tokens
clientIdstringyesOAuth2 Client ID
clientSecretstringOAuth2 Client Secret (required for exchange)
codestringAuthorization code (for exchange action)
providerstringyesOAuth2 provider
redirectUristringRedirect URI (default: http://localhost:3000/oauth/callback)

No output schema declared.

No examples provided.

email_delete ~64

Delete an email (moves to Trash). Provider-aware: uses correct Trash folder for Gmail/Outlook/IMAP. Get UIDs from email_list.

NameTypeReqDescription
folderstringSource folder (default: INBOX)
uidnumberyesEmail UID to delete

No output schema declared.

No examples provided.

email_folders ~23

List all email folders/labels. Use folder names in other tools.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

email_forward ~92

Forward an email to another address. Includes original message as quoted text. Get UIDs from email_list.

NameTypeReqDescription
attachmentsarrayAdditional file attachments
folderstringFolder of the original email (default: INBOX)
textstringOptional message to prepend before the forwarded content
tostringyesRecipient email address
uidnumberyesEmail UID to forward

No output schema declared.

No examples provided.

email_list ~81

List emails from a folder. Returns subject, from, date, flags. Use email_read for full body.

NameTypeReqDescription
folderstringFolder name (default: INBOX)
limitnumberMax emails to return (default 20)
searchstringSearch in subject and sender
unseenbooleanOnly unread emails

No output schema declared.

No examples provided.

email_mark_read ~55

Mark an email as read (sets \Seen IMAP flag). Get UIDs from email_list.

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidnumberyesEmail UID to mark as read

No output schema declared.

No examples provided.

email_mark_unread ~57

Mark an email as unread (removes \Seen IMAP flag). Get UIDs from email_list.

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidnumberyesEmail UID to mark as unread

No output schema declared.

No examples provided.

email_move ~84

Move an email to a different folder (e.g., Archive, Trash, custom label). Use email_folders to discover available folders.

NameTypeReqDescription
fromstringSource folder (default: INBOX)
tostringyesDestination folder (e.g., "[Gmail]/Trash", "Archive", "Important")
uidnumberyesEmail UID to move

No output schema declared.

No examples provided.

email_read ~60

Read a single email by UID. Returns full body, headers, and attachment info. Get UIDs from email_list first.

NameTypeReqDescription
folderstringFolder name (default: INBOX)
uidnumberyesEmail UID (from email_list)

No output schema declared.

No examples provided.

email_reply ~103

Reply to an email by UID. Automatically sets In-Reply-To, References headers, and "Re:" subject prefix. Get UIDs from email_list.

NameTypeReqDescription
attachmentsarrayFile attachments
folderstringFolder where the original email is (default: INBOX)
htmlstringReply HTML body
textstringyesReply text
uidnumberyesUID of the email to reply to (from email_list)

No output schema declared.

No examples provided.

email_search ~67

Search emails by subject or sender. Uses IMAP SEARCH — works with any provider.

NameTypeReqDescription
folderstringFolder to search (default: INBOX)
limitnumberMax results (default 20)
querystringyesSearch term (matches subject and sender)

No output schema declared.

No examples provided.

email_send ~136

Send an email. Supports Gmail OAuth2, Outlook OAuth2, and SMTP. Can include attachments (file paths on disk, up to 25MB total).

NameTypeReqDescription
attachmentsarrayFile attachments (paths on disk)
bccstringBCC recipients (comma-separated)
ccstringCC recipients (comma-separated)
htmlstringHTML body (optional, overrides text in rich clients)
replyTostringReply-To address
subjectstringyesEmail subject
textstringyesPlain text body
tostringyesRecipient email address

No output schema declared.

No examples provided.

email_setup ~217

Configure email provider. For Gmail/Outlook: provide clientId + clientSecret + refreshToken (from OAuth2 flow). For IMAP: provide host + user + password.

NameTypeReqDescription
clientIdstringOAuth2 Client ID (Gmail/Outlook)
clientSecretstringOAuth2 Client Secret (Gmail/Outlook)
emailstringyesEmail address
imapHoststringIMAP host (for generic IMAP)
imapPassstringIMAP password
imapPortnumberIMAP port (default 993)
imapUserstringIMAP username
providerstringyesEmail provider
refreshTokenstringOAuth2 Refresh Token (Gmail/Outlook)
smtpHoststringSMTP host
smtpPassstringSMTP password
smtpPortnumberSMTP port (default 587)
smtpUserstringSMTP username

No output schema declared.

No examples provided.

email_status ~24

Check email configuration status. Call this first to see if email is set up.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

email_threads ~53

Get email threads — groups related emails by References/In-Reply-To headers. Shows conversation flow.

NameTypeReqDescription
folderstringFolder (default: INBOX)
limitnumberMax threads (default 10)

No output schema declared.

No examples provided.

image_download ~103

Download a generated image to local filesystem. SSRF-protected: only HTTPS URLs from known image CDNs (OpenAI, fal.ai, Google) and local Gemini temp files are allowed. Default save location: ~/Downloads/ or /tmp/.

NameTypeReqDescription
filenamestringCustom filename (e.g. "my-logo.png"). Auto-generated if omitted.
urlstringyesImage URL to download (from image_generate result) or local file path (Gemini)

No output schema declared.

No examples provided.

image_edit ~103

Edit an existing image using AI. Currently only OpenAI (DALL-E 2) supports native image editing. For Flux/Gemini, use image_generate with a detailed prompt describing the desired output.

NameTypeReqDescription
imageUrlstringyesURL of the source image to edit (must be accessible via HTTPS)
promptstringyesDescription of the edit to make
providerstringProvider to use. Currently only "openai" supports native editing.

No output schema declared.

No examples provided.

image_generate ~219

Generate an image using AI. BYOK: configure your API keys via suite_setup(module: "image"). Providers: OpenAI DALL-E 3 (best for text/logos), Flux Pro (best for photorealistic), Gemini (versatile fallback). "auto" mode selects the best provider based on prompt content.

NameTypeReqDescription
promptstringyesImage generation prompt. Be descriptive for best results.
providerstringProvider to use. "auto" (default) picks based on prompt: OpenAI for text-heavy, Flux for photorealistic, Gemini as fallback.
qualitystringImage quality (OpenAI only). hd=finer detail but slower. Default: standard.
sizestringImage dimensions. square=1024x1024, landscape=1792x1024, portrait=1024x1792. Default: square.
stylestringImage style (OpenAI only). vivid=hyper-real/dramatic, natural=more subtle. Default: vivid.

No output schema declared.

No examples provided.

search_code_context ~87

Find code examples, documentation, GitHub issues, StackOverflow threads via Exa. Best for "how do I do X in library Y" queries. Requires exaApiKey.

NameTypeReqDescription
maxResultsnumberMax results (default: 10)
querystringyesCode/technical query (e.g. "how to stream tool_use responses with anthropic SDK")

No output schema declared.

No examples provided.

search_deep ~89

Multi-round deep search. Generates multiple search angles from the query, searches in parallel, deduplicates results, and returns a comprehensive combined result set.

NameTypeReqDescription
maxResultsPerRoundnumberMax results per search angle (default: 5)
maxRoundsnumberNumber of search angles to explore (default: 4)
querystringyesThe main research query

No output schema declared.

No examples provided.

search_images ~54

Search for images on the web. Uses SearXNG images category or Brave Image Search.

NameTypeReqDescription
maxResultsnumberMax results to return (default: 10)
querystringyesImage search query

No output schema declared.

No examples provided.

search_news ~94

Search for recent news articles. Default "auto" uses SearXNG → Brave. Pass engine="tavily" for AI-synthesized news with citations.

NameTypeReqDescription
enginestringProvider override. "auto" (default) uses SearXNG→Brave fallback.
maxResultsnumberMax results to return (default: 10)
querystringyesNews search query

No output schema declared.

No examples provided.

search_research ~173

Deep research search via Tavily — runs multiple sub-searches, scrapes top pages, returns a synthesized answer with citations. Slow (15-30s) but gives you a research-grade answer, not raw links. Requires tavilyApiKey.

NameTypeReqDescription
daysBacknumberFor news topic: how many days back to search
depthstringSearch depth — advanced is slower but better (default: advanced)
excludeDomainsarrayExclude these domains
includeDomainsarrayOnly include these domains
maxResultsnumberMax source results to cite (default: 5)
querystringyesResearch question (e.g. "What are the current approaches to MCP authentication?")
topicstringContent domain (default: general)

No output schema declared.

No examples provided.

search_semantic ~150

Neural/semantic search via Exa — finds pages by concept similarity, not keywords. Best when you know WHAT you want but not exact keywords. Requires user to configure exaApiKey via suite_setup.

NameTypeReqDescription
categorystringRestrict to a content category
excludeDomainsarrayExclude these domains
includeDomainsarrayOnly include these domains
includeTextbooleanInclude 1000-char text excerpts (default: false, uses highlights only)
maxResultsnumberMax results (default: 10)
querystringyesConceptual search query (e.g. "approaches to reducing API costs in agent loops")

No output schema declared.

No examples provided.

search_web ~97

Search the web. Default "auto" mode uses SearXNG → Brave fallback. Pass engine="exa"|"tavily" to use those providers for keyword-style web search.

NameTypeReqDescription
enginestringProvider override. "auto" (default) uses SearXNG→Brave fallback.
maxResultsnumberMax results to return (default: 10)
querystringyesSearch query

No output schema declared.

No examples provided.

suite_delete ~72

Delete your configuration and credentials. For GDPR/DSGVO compliance — removes all stored data. Specify a module or "all".

NameTypeReqDescription
confirmbooleanyesMust be true to confirm deletion. This action cannot be undone.
modulestringyesWhich module to delete, or "all" to remove everything

No output schema declared.

No examples provided.

suite_guide ~61

Embedded documentation. Topics: quickstart, connect, email, calendar, messaging, search, image, oauth. Call this FIRST on a new connection to learn how the suite works.

NameTypeReqDescription
topicstringWhich topic to load. Default: quickstart

No output schema declared.

No examples provided.

suite_health ~32

Run health checks on all configured modules. Tests actual connections (IMAP, Calendar API, messaging bots, search engines).

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

suite_setup ~877

Configure a module. For email: just provide email_address + email_password — settings are auto-detected for 30K+ providers. For advanced/OAuth: use email_provider + manual fields. Supported modules: email, calendar, messaging, search.

NameTypeReqDescription
calendar_caldav_passwordstringCalDAV password (or app-specific password for iCloud/Fastmail)
calendar_caldav_urlstringCalDAV server URL (e.g. https://caldav.icloud.com, https://cloud.example.com/remote.php/dav, https://dav.mailbox.org)
calendar_caldav_usernamestringCalDAV username (usually your email address)
calendar_default_calendar_idstringDefault calendar ID. For Google: "primary". For CalDAV: the calendar URL from calendar_list_calendars.
calendar_oauth_access_tokenstringGoogle OAuth2 access token (for Google provider)
calendar_oauth_client_idstringGoogle OAuth2 client ID (for Google provider)
calendar_oauth_client_secretstringGoogle OAuth2 client secret (for Google provider)
calendar_oauth_refresh_tokenstringGoogle OAuth2 refresh token (for Google provider)
calendar_providerstringCalendar provider: "google" (default) or "caldav" (iCloud, Nextcloud, mailbox.org, Posteo, Radicale, any CalDAV server)
channel_bot_tokenstringBot token (Telegram/Discord/Slack)
channel_default_idstringDefault channel/chat ID
channel_platformstringWhich messaging platform to configure
channel_signing_secretstringSigning secret (Slack only)
email_addressstringEmail address (e.g. info@meinefirma.de). Auto-detects IMAP/SMTP settings for 30K+ providers. Just provide this + email_password for quick setup.
email_from_addressstringSender email address
email_from_namestringSender display name
email_imap_hoststringIMAP host (for IMAP provider)
email_imap_passwordstringIMAP password
email_imap_portnumberIMAP port (default: 993)
email_imap_userstringIMAP username
email_oauth_access_tokenstringOAuth2 access token
email_oauth_client_idstringOAuth2 client ID (for Gmail/Outlook)
email_oauth_client_secretstringOAuth2 client secret (for Gmail/Outlook)
email_oauth_refresh_tokenstringOAuth2 refresh token
email_passwordstringEmail password or app password. Used with auto-detected IMAP/SMTP settings.
email_providerstringEmail provider. Not needed if email_address is provided (auto-detected). Use for OAuth flows (gmail/outlook).
email_smtp_hoststringSMTP host (for IMAP provider)
email_smtp_portnumberSMTP port (default: 587)
image_flux_api_keystringfal.ai API key for Flux Pro (best for photorealistic). ~$0.04/image.
image_gemini_api_keystringGoogle AI API key for Gemini / Imagen 3 (versatile fallback). ~$0.04-0.30/image.
image_openai_api_keystringOpenAI API key for DALL-E 3 image generation (best for text/logos). ~$0.04-0.12/image.
modulestringyesWhich module to configure
search_brave_api_keystringBrave Search API key (2000 queries/month free)
search_exa_api_keystringExa API key — enables search_semantic + search_code_context (see exa.ai pricing)
search_searxng_urlstringSearXNG instance URL (self-hosted, privacy-focused)
search_tavily_api_keystringTavily API key — enables search_research (1000 free credits/month, advanced=2 credits/query)

No output schema declared.

No examples provided.

suite_status ~27

Show which modules are configured and ready to use. Call this first to understand what is available.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

Common questions

What is the StudioMeyer Personal Suite MCP server?

StudioMeyer Personal Suite is an MCP server listed in the public MCP registry as io.studiomeyer/personal-suite. Local-first productivity: email, calendar, messaging, search, image gen. 49 tools. BYOK. This page covers its npm package (mcp-personal-suite).

Is the StudioMeyer Personal Suite MCP server safe to use?

StudioMeyer Personal Suite scores 77 out of 100 on VerifyMCP. We recorded 5 known advisories against it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the StudioMeyer Personal Suite MCP server expose?

StudioMeyer Personal Suite exposes 49 tools: suite_guide, suite_status, suite_setup, suite_health, suite_delete, and 44 more. Their descriptions and schemas cost roughly 4,948 tokens of context every time the server is loaded.

Is the StudioMeyer Personal Suite MCP server still maintained?

StudioMeyer Personal Suite is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the StudioMeyer Personal Suite MCP server under?

StudioMeyer Personal Suite declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.