# io.github.silverstein/minutes (npm · minutes-mcp)

The private, owned conversation-memory layer for AI. Record, transcribe, and search every meeting.

- Trust score: 91/100 (high trust)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-21

## Components

- npm · `minutes-mcp`: 91/100 (this document), [markdown](https://verifymcp.io/servers/silverstein-minutes/minutes-mcp.md), [page](https://verifymcp.io/servers/silverstein-minutes/minutes-mcp)

## Channel facts

- Registry: `npm`
- Package: `minutes-mcp`
- Version: `0.26.3`
- Transport: `stdio`

## Trust breakdown

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. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-21.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 31 of 100 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to silverstein/minutes).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 5 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 88/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Tool/resource definitions use about 4226 tokens (~98/item across 43 items; 34 tools + 9 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 53/100
  - Stability observed for 16 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 99% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 34 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 35 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.
  - Supports UI / widget rendering.

## Install

### How do I install the io.github.silverstein/minutes MCP server?

io.github.silverstein/minutes runs locally as an npm package, launched with npx -y minutes-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add silverstein-minutes -- npx -y minutes-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "silverstein-minutes": {
      "command": "npx",
      "args": [
        "-y",
        "minutes-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "silverstein-minutes": {
      "command": "npx",
      "args": [
        "-y",
        "minutes-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add silverstein-minutes -- npx -y minutes-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "silverstein-minutes": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "minutes-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add silverstein-minutes --command npx --arg -y --arg minutes-mcp
```

### Hermes

```yaml
mcp_servers:
  silverstein-minutes:
    command: "npx"
    args: ["-y", "minutes-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "silverstein-minutes": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "minutes-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add silverstein-minutes -t stdio -c npx -a -y minutes-mcp
```

### Other

```json
{
  "mcpServers": {
    "silverstein-minutes": {
      "command": "npx",
      "args": [
        "-y",
        "minutes-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-21 (score 91, +1)

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

### 2026-09-19 (score 90, +1)

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

### 2026-09-17 (score 89, +1)

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

### 2026-09-16 (score 88, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-09-15 (score 73, −14)

- [security regression] Malware scan: pass → unverified
- [functional] Package version: 0.26.2 → 0.26.3

### 2026-09-13 (score 87, +1)

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

### 2026-09-10 (score 86, +1)

- [security regression] Stability: 0.13 → unverified
- [security regression] Tool safety: pass → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional] Package version: 0.26.1 → 0.26.2

### 2026-09-08 (score 85, +16)

- [security improvement] Malware scan: unverified → pass

## MCP tools (34)

### `start_recording` (~245 tokens)

Start recording audio with call-aware preflight. When a known call app is active, Minutes can infer call intent and block silent mic-only call captures unless explicitly allowed. Note: this server does not listen to audio content. Recordings are stopped by invoking stop_recording after the user types a request in chat — never promise the user they can speak a 'stop recording' voice command. Docs: https://useminutes.app/docs/mcp/tools#tool-start_recording

Input parameters:

- `allow_degraded` (boolean): Allow a mic-only capture to continue even if Minutes detects a call but no system-audio route is configured.
- `intent` (string): Optional recording intent. If omitted and a known call app is active, Minutes may infer call intent.
- `language` (string): Transcription language code (e.g. 'en', 'ur', 'es', 'zh'). Overrides config.toml setting.
- `mode` (string): Live capture mode
- `skip_audio_probe_reason` (string): Per-call reason to skip the system-audio readiness probe. This is not persisted and is written into recording_health.
- `title` (string): Optional title for this recording

### `stop_recording` (~42 tokens)

Stop the current recording and process it (transcribe, diarize, summarize). Docs: https://useminutes.app/docs/mcp/tools#tool-stop_recording

### `get_status` (~33 tokens)

Check if a recording is currently in progress. Docs: https://useminutes.app/docs/mcp/tools#tool-get_status

### `list_processing_jobs` (~77 tokens)

List background processing jobs for recent recordings, including queued, transcript-ready, needs-review, failed, and completed work. Docs: https://useminutes.app/docs/mcp/tools#tool-list_processing_jobs

Input parameters:

- `include_completed` (boolean): Include completed and failed jobs
- `limit` (integer): Maximum number of jobs (1-50)

### `list_meetings` (~123 tokens)

List recent meetings and voice memos. Restricted meetings are excluded. An override requires both an operator launch grant and include_restricted=true, and is durably audited. Docs: https://useminutes.app/docs/mcp/tools#tool-list_meetings

Input parameters:

- `include_restricted` (boolean): Include restricted meetings only when a human launched the server with MINUTES_MCP_RESTRICTED_POLICY=logged-override; every request is durably audited
- `limit` (integer): Maximum results (1-50)
- `type` (string): Filter by type

### `search_meetings` (~191 tokens)

Search meeting transcripts and voice memos. Restricted meetings are excluded. An override requires both an operator launch grant and include_restricted=true, and is durably audited. Docs: https://useminutes.app/docs/mcp/tools#tool-search_meetings

Input parameters:

- `include_restricted` (boolean): Include restricted meetings only when a human launched the server with MINUTES_MCP_RESTRICTED_POLICY=logged-override; every request is durably audited
- `intent_kind` (string): Filter structured intents by kind
- `intents_only` (boolean): Return structured intent records instead of transcript snippets
- `limit` (integer): Maximum results (1-50)
- `owner` (string): Filter structured intents by owner / person
- `query` (string, required): Text to search for
- `since` (string): Only results after this date (ISO)
- `type` (string): Filter by type

### `activity_summary` (~59 tokens)

Summarize meeting-adjacent desktop context bound to one exact normal meeting source. Docs: https://useminutes.app/docs/mcp/tools#tool-activity_summary

Input parameters:

- `path` (string, required): Exact normal meeting Markdown path linked to the context session

### `search_context` (~82 tokens)

Search desktop-context events bound to one exact normal meeting source. Docs: https://useminutes.app/docs/mcp/tools#tool-search_context

Input parameters:

- `limit` (number): Maximum results
- `path` (string, required): Exact normal meeting Markdown path linked to the context session
- `query` (string, required): Text query for app names, bundle ids, or captured window titles

### `get_moment` (~93 tokens)

Show the local rewind bound to one exact normal meeting source. Docs: https://useminutes.app/docs/mcp/tools#tool-get_moment

Input parameters:

- `after_minutes` (number): Minutes after the anchor
- `at` (string): Explicit anchor timestamp (RFC3339)
- `before_minutes` (number): Minutes before the anchor
- `path` (string, required): Exact normal meeting Markdown path linked to the context session

### `get_screen_context` (~93 tokens)

Retrieve up to three verified PNG screenshots bound to one exact normal meeting source, optionally nearest a timestamp. Docs: https://useminutes.app/docs/mcp/tools#tool-get_screen_context

Input parameters:

- `at` (string): Nearest-image anchor timestamp (RFC3339)
- `limit` (integer): Maximum verified images (1-3)
- `path` (string, required): Exact normal meeting Markdown path linked to the context session

### `consistency_report` (~84 tokens)

Flag conflicting decisions and stale commitments across meetings using structured intent data. Meetings designated `sensitivity: restricted` are always excluded from this report. Docs: https://useminutes.app/docs/mcp/tools#tool-consistency_report

Input parameters:

- `owner` (string): Filter stale commitments by owner / person
- `stale_after_days` (number): Flag commitments this many days old or older

### `get_person_profile` (~116 tokens)

Get a relationship profile derived from live, policy-authorized meeting snapshots within the supported corpus bounds. Restricted meetings are excluded unless an operator launch grant plus include_restricted=true is durably audited. Docs: https://useminutes.app/docs/mcp/tools#tool-get_person_profile

Input parameters:

- `include_restricted` (boolean): Include restricted meetings only when a human launched the server with MINUTES_MCP_RESTRICTED_POLICY=logged-override; every request is durably audited
- `name` (string, required): Person / attendee name to profile

### `research_topic` (~151 tokens)

Research a topic across policy-authorized meetings within the supported corpus bounds. Restricted meetings are excluded. An override requires an operator launch grant plus include_restricted=true and is durably audited. Docs: https://useminutes.app/docs/mcp/tools#tool-research_topic

Input parameters:

- `attendee` (string): Filter by attendee / person
- `include_restricted` (boolean): Include restricted meetings only when a human launched the server with MINUTES_MCP_RESTRICTED_POLICY=logged-override; every request is durably audited
- `query` (string, required): Topic or question to investigate across meetings
- `since` (string): Only results after this date (ISO)
- `type` (string): Filter by type

### `get_meeting` (~112 tokens)

Get a full meeting transcript with speaker overlays. A restricted meeting returns a stub. Full access requires an operator launch grant plus include_restricted=true and is durably audited. Docs: https://useminutes.app/docs/mcp/tools#tool-get_meeting

Input parameters:

- `include_restricted` (boolean): Return restricted content only when a human launched the server with MINUTES_MCP_RESTRICTED_POLICY=logged-override; every request is durably audited
- `path` (string, required): Path to the meeting markdown file

### `process_audio` (~137 tokens)

On macOS and Linux, process a bounded WAV file from the Minutes inbox or Downloads through the transcription pipeline. Compressed/private containers and Windows fail closed without reading audio. Retained meeting-library audio is unavailable to agent surfaces. Docs: https://useminutes.app/docs/mcp/tools#tool-process_audio

Input parameters:

- `file_path` (string, required): Path to an inbox/Downloads WAV file (.wav)
- `language` (string): Transcription language code (e.g. 'en', 'ur', 'es', 'zh'). Overrides config.toml setting.
- `title` (string): Optional title
- `type` (string): Content type

### `add_note` (~74 tokens)

Add a note to the current active recording. Notes are timestamped and included in that recording's meeting summary. Existing meeting files cannot be mutated from this assistant tool. Docs: https://useminutes.app/docs/mcp/tools#tool-add_note

Input parameters:

- `text` (string, required): The note text (plain text, no markdown needed)

### `track_commitments` (~97 tokens)

List open and stale action items and explicit intent commitments from live meeting frontmatter. Optionally filter by person. Answers: 'What did I promise Sarah?' or 'What's overdue?' Meetings designated `sensitivity: restricted` never enter this live-source view. Docs: https://useminutes.app/docs/mcp/tools#tool-track_commitments

Input parameters:

- `person` (string): Filter by person name or slug (optional — omit for all commitments)

### `relationship_map` (~68 tokens)

Show contacts with relationship scores, meeting frequency, and losing-touch alerts from the bounded process-private graph projection. Restricted meetings never enter the projection. Docs: https://useminutes.app/docs/mcp/tools#tool-relationship_map

Input parameters:

- `limit` (integer): Max people to return (1-50)

### `start_dictation` (~93 tokens)

Start dictation mode. Speak naturally — text accumulates across pauses and the combined result is written when dictation ends. Runs until stop_dictation is called or silence timeout. Docs: https://useminutes.app/docs/mcp/tools#tool-start_dictation

Input parameters:

- `language` (string): Transcription language code (e.g. 'en', 'ur', 'es', 'zh'). Overrides config.toml setting.

### `stop_dictation` (~33 tokens)

Stop the current dictation session. Docs: https://useminutes.app/docs/mcp/tools#tool-stop_dictation

### `list_voices` (~48 tokens)

List active voice enrollments for speaker identification. Shows who has been enrolled, sample count, and model version. Docs: https://useminutes.app/docs/mcp/tools#tool-list_voices

### `confirm_speaker` (~104 tokens)

Compatibility registration for speaker confirmation. Agent-controlled mutation is intentionally unavailable; confirm in the Minutes app or a human CLI session so identity changes cannot race policy authorization. Docs: https://useminutes.app/docs/mcp/tools#tool-confirm_speaker

Input parameters:

- `meeting` (string, required): Path to the meeting markdown file
- `name` (string, required): Real name to assign to this speaker
- `speaker_label` (string, required): Speaker label to confirm (e.g., SPEAKER_1)

### `add_agent_annotation` (~216 tokens)

Append attributed agent commentary as an agent.annotation event. This never edits meeting markdown/frontmatter and is rejected unless the agent_id is allowed in ~/.minutes/agents.allow. Docs: https://useminutes.app/docs/mcp/tools#tool-add_agent_annotation

Input parameters:

- `agent_id` (string, required): Stable agent identifier listed in ~/.minutes/agents.allow
- `body` (string, required): Annotation body
- `citations` (array): Source citations or event references
- `confidence` (string)
- `meeting_id` (string): Target meeting identifier, if known
- `meeting_path` (string): Target meeting markdown path, if known
- `provenance`: JSON-serializable provenance object
- `span_end_ms` (number): End offset of the target span in milliseconds
- `span_start_ms` (number): Start offset of the target span in milliseconds
- `subkind` (string): Annotation subtype, e.g. coaching, correction, risk, summary
- `tools` (array): Tool or model names used to produce the annotation

### `get_agent_annotations` (~122 tokens)

Compatibility name only: unavailable in MCP because an annotation's source pointer and body are both author-supplied, so revalidating the pointer cannot bound what the body discloses. Docs: https://useminutes.app/docs/mcp/tools#tool-get_agent_annotations

Input parameters:

- `agent_id` (string): Compatibility argument; the tool is unavailable
- `limit` (number): Compatibility argument; the tool is unavailable
- `meeting_id` (string): Compatibility argument; the tool is unavailable
- `meeting_path` (string): Compatibility argument; the tool is unavailable

### `get_meeting_insights` (~334 tokens)

Query structured insights extracted from meetings, decisions, commitments and questions with confidence levels. Each insight records a path to the meeting it was derived from; that path is resolved to a meeting in the live corpus, and the resolved meeting is re-read from disk and re-verified against the live sensitivity policy before the insight is released. A path that cannot be resolved into this corpus is withheld. Released records carry the source title and path as they were recorded, which may name a location outside this corpus. Withheld records are reported as a partial view rather than an empty one. Docs: https://useminutes.app/docs/mcp/tools#tool-get_meeting_insights

Input parameters:

- `actionable_only` (boolean): Only return actionable insights (Strong or Explicit confidence)
- `confidence` (string): Minimum confidence level
- `include_restricted` (boolean): Include insights whose source meeting is designated sensitivity: restricted. Requires the server to have been launched with MINUTES_MCP_RESTRICTED_POLICY=logged-override; the request is durably audit…
- `kind` (string): Filter by insight type
- `limit` (integer): Maximum number of results to return (1-500). Every read examines the newest 500 records regardless; this caps the answer, not the search.
- `participant` (string): Filter by participant name (partial match)
- `since` (string): Only insights on or after this calendar date (YYYY-MM-DD)

### `start_copilot` (~129 tokens)

Start the independent Minutes real-time copilot for a goal. This launches `minutes copilot start`; MCP does not run model inference, own capture, or need to stay connected for the engine to produce nudges. The stdout surface is recommended for complete structured nudge observation. Docs: https://useminutes.app/docs/mcp/tools#tool-start_copilot

Input parameters:

- `goal` (string, required): Outcome the copilot should help achieve, for example 'land owners and deadlines'.
- `surface` (string): CLI presentation surface. Use stdout for complete structured nudge reads; tui is compact text.

### `stop_copilot` (~68 tokens)

Request that the active Minutes copilot stop. This invokes `minutes copilot stop` and never stops recording or live transcription. Calling it while no copilot is active returns a calm not-active status. Docs: https://useminutes.app/docs/mcp/tools#tool-stop_copilot

### `copilot_status` (~65 tokens)

Read the current operational copilot state from the strict `minutes copilot status --json` contract. This is observation only and returns a clear Off/not-active payload when no engine is running. Docs: https://useminutes.app/docs/mcp/tools#tool-copilot_status

### `read_copilot_nudges` (~151 tokens)

Read nudges observed from the active real CLI copilot stream. Use cursor (or a numeric since value) for lossless delta reads; since also accepts durations such as '5m'/'30s' and ISO timestamps. MCP never generates nudges itself. Docs: https://useminutes.app/docs/mcp/tools#tool-read_copilot_nudges

Input parameters:

- `cursor` (integer): Return nudge lines after this zero-based observation cursor.
- `limit` (integer): Maximum nudges to return (1-200).
- `since` (string): Cursor string, duration such as '5m' or '30s', or ISO timestamp. Do not combine with cursor.

### `start_live_transcript` (~94 tokens)

Start real-time transcription. If a recording is already running, it already includes a live transcript — use read_live_transcript to read it. Runs until stop is called. Docs: https://useminutes.app/docs/mcp/tools#tool-start_live_transcript

Input parameters:

- `language` (string): Transcription language code (e.g. 'en', 'ur', 'es', 'zh'). Overrides config.toml setting.

### `read_live_transcript` (~214 tokens)

Read the live transcript — works during both recordings and live transcript sessions. Use 'since' to get new finalized lines after a cursor (line number) or time window (e.g., '5m', '30s'). Set include_current for one fresh, clearly provisional current-speech draft. Use 'status' mode to check if a session is active. Docs: https://useminutes.app/docs/mcp/tools#tool-read_live_transcript

Input parameters:

- `include_current` (boolean): If true, return finalized lines plus at most one fresh provisional current-speech draft and its replacement identity
- `relay_cursor` (object): Transient relay cursor returned by a previous read. Reconnects without replaying already-seen transcript or nudge frames.
- `since` (string): Line number (e.g., '42') or duration (e.g., '5m', '30s'). Omit to get all lines.
- `status_only` (boolean): If true, return session status instead of transcript lines

### `ingest_meeting` (~145 tokens)

Extract facts from a meeting and update the knowledge base (person profiles, log, index). Requires [knowledge] to be configured in config.toml. Uses structured frontmatter data only by default (zero hallucination risk). Set engine to 'agent' for richer LLM-based extraction. Docs: https://useminutes.app/docs/mcp/tools#tool-ingest_meeting

Input parameters:

- `all` (boolean): Process all policy-authorized normal meetings in the output directory
- `dry_run` (boolean): Show what would be extracted without writing anything
- `path` (string): Path to a specific policy-authorized normal meeting .md file. Omit to process all normal meetings.

### `resummarize_meeting` (~307 tokens)

Re-run the AI pass (summary, action items, decisions) on an edited meeting or memo. Preview by default: returns the regenerated content WITHOUT writing — note the summarization model IS still invoked (cost applies even in preview). Set apply=true to write the file (a timestamped backup is created and derived views — graph, search index, vault, QMD — refresh automatically). User edits outside AI-owned sections are never touched; checked action items and decision notes are carried forward by the merge. Docs: https://useminutes.app/docs/mcp/tools#tool-resummarize_meeting

Input parameters:

- `apply` (boolean): Write the regenerated content (default: preview only; the model is invoked either way).
- `engine` (string): Override the summarization engine for this run (e.g. 'ollama', 'apple', 'agent'). Default: the engine from config.toml.
- `include_restricted` (boolean): Resummarize a meeting designated `sensitivity: restricted` (refused by default; the override is logged).
- `ingest` (boolean): With apply=true, also re-ingest the artifact into the knowledge base. Off by default because the knowledge log is append-only — every ingest adds a new log entry.
- `path` (string, required): Path to the meeting/memo .md file to resummarize.
- `template` (string): Template slug to apply for this run. Default: the template recorded in the file's frontmatter.

### `knowledge_status` (~51 tokens)

Reconcile persistent meeting derivatives and show the privacy-safe knowledge-base status. This cleanup/status tool cannot create or register an external index. Docs: https://useminutes.app/docs/mcp/tools#tool-knowledge_status

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/silverstein-minutes/minutes-mcp#diagnostics

## Score history

- 2026-09-21: 91
- 2026-09-20: 90
- 2026-09-19: 90
- 2026-09-18: 89
- 2026-09-17: 89
- 2026-09-16: 88
- 2026-09-15: 73
- 2026-09-14: 87
- 2026-09-13: 87
- 2026-09-12: 86
- 2026-09-11: 86
- 2026-09-10: 86
- 2026-09-09: 85
- 2026-09-08: 85
- 2026-09-07: 69
- 2026-09-06: 83
- 2026-09-05: 68

## Common questions

### What is the io.github.silverstein/minutes MCP server?

io.github.silverstein/minutes is an MCP server listed in the public MCP registry as io.github.silverstein/minutes. The private, owned conversation-memory layer for AI. Record, transcribe, and search every meeting. This page covers its npm package (minutes-mcp).

### Is the io.github.silverstein/minutes MCP server safe to use?

io.github.silverstein/minutes scores 91 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. 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 io.github.silverstein/minutes MCP server expose?

io.github.silverstein/minutes exposes 34 tools: start_recording, stop_recording, get_status, list_processing_jobs, list_meetings, and 29 more. Their descriptions and schemas cost roughly 4,051 tokens of context every time the server is loaded.

### Is the io.github.silverstein/minutes MCP server still maintained?

io.github.silverstein/minutes is still listed as active in the MCP registry. We last reached this channel on 21 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 io.github.silverstein/minutes MCP server under?

io.github.silverstein/minutes declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/minutes-mcp
- Socket report: https://socket.dev/npm/package/minutes-mcp
- Repository: https://github.com/silverstein/minutes
- Changelog RSS feed: https://verifymcp.io/servers/silverstein-minutes/minutes-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/silverstein-minutes/minutes-mcp.json
- HTML version of this page: https://verifymcp.io/servers/silverstein-minutes/minutes-mcp
