Skip to main content
Glama

Server Details

Search and read your recorded meetings: notes, action items, participants, transcripts.

Ownership verified
Status
Healthy
Uptime
69.7% over 22 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
adamperlis/walkie-mcp
GitHub Stars
1
Server Listing
Walkie for MCP

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation2/5

Two pairs of tools are exact duplicates (fetch/get_meeting and search/search_meetings), so four of five tools expose only two distinct functions. The descriptions acknowledge the aliases and direct clients to the canonical names, but the functional overlap is still a real selection hazard.

Naming Consistency3/5

The canonical tools follow a consistent verb_noun snake_case pattern (get_meeting, list_meetings, search_meetings), but fetch and search are bare-verb aliases that break the pattern. The mixture is readable but not fully consistent.

Tool Count4/5

Five tools is a reasonable number for a meeting-archive server, but two are compatibility aliases, leaving only three distinct operations. This is slightly redundant yet acceptable given the stated ChatGPT connector requirement.

Completeness5/5

For a read-only meeting retrieval domain, the set covers the full surface: list the archive, search across content, and fetch one meeting's full details. No mutation is claimed or needed, and there are no obvious missing retrieval operations.

Available Tools

5 tools
fetchFetch one recorded meeting (ChatGPT name)A
Read-onlyIdempotent
Inspect

Same read as get_meeting: one meeting's notes, action items, participants, and speaker-labeled transcript. Exists because ChatGPT's connector surface requires a tool named fetch; other clients should call get_meeting.

Use with an id from search. Do not use to find a meeting by topic (search / search_meetings).

Does not create, edit, or delete meetings. Unknown ids return an error.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesMeeting id from search, e.g. "mtg-1786560198190".

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds behavior beyond annotations: it confirms the tool does not create/edit/delete meetings and explicitly states unknown ids return an error. This error-handling detail is genuinely useful context not present in the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence earns its place: the first defines the read payload and equivalence to get_meeting, the second explains the connector rationale, the third provides usage constraints and alternatives, and the fourth states safety and error behavior. No fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description specifies the return content (notes, action items, participants, speaker-labeled transcript), the input source, the error case, and the non-mutating behavior. Combined with rich annotations, this is enough for an agent to call the tool correctly and understand what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter already documented as 'Meeting id from search, e.g. "mtg-1786560198190".' The description reinforces using an id from search and mentions error behavior for unknown ids, but adds no substantive meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('read') and resource (one meeting's notes, action items, participants, and speaker-labeled transcript), and clearly differentiates this tool from get_meeting, search, and search_meetings. It explains that fetch is a connector-required alias, so there is no ambiguity about what it does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use fetch (only because ChatGPT's connector requires that name), when to prefer get_meeting ('other clients should call get_meeting'), and what not to use it for ('Do not use to find a meeting by topic'), naming the alternatives search and search_meetings. This gives an agent complete routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_meetingRead one recorded meeting in fullA
Read-onlyIdempotent
Inspect

Read one recorded meeting in full: AI notes, action items, participants, and the speaker-labeled transcript. Takes an id from search_meetings or list_meetings.

Use when you already have a meeting id and need the notes or quotes. Do not use to find a meeting by topic (search_meetings) or to page the archive (list_meetings). ChatGPT clients call the same read as fetch.

Does not create, edit, or delete meetings. Unknown ids return an error, not an empty meeting.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesMeeting id from search_meetings or list_meetings, e.g. "mtg-1786560198190".

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, and the description reinforces this with 'Does not create, edit, or delete meetings.' It adds useful behavior beyond annotations by specifying that unknown ids return an error rather than an empty meeting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, with the core purpose in the first sentence, usage guidance in the second, and behavioral disclaimers in the third. Every sentence earns its place and there is no redundant filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with no output schema, the description covers what is returned, where the id comes from, when to use it, when not to use it, and error behavior. Nothing an agent needs in order to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and already documents the id parameter with an example. The tool description adds context about where the id comes from and error behavior on unknown ids, but the essential semantic meaning of the parameter is already covered by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description begins with a specific verb and resource: 'Read one recorded meeting in full' and enumerates the contents (AI notes, action items, participants, speaker-labeled transcript). It also distinguishes itself from sibling tools by stating it takes an id from search_meetings or list_meetings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use the tool: 'Use when you already have a meeting id and need the notes or quotes.' It also gives clear exclusions: do not use to find by topic (search_meetings) or page the archive (list_meetings), and notes the fetch alias for ChatGPT clients.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_meetingsList recorded meetings as metadataA
Read-onlyIdempotent
Inspect

List the user's synced meetings, newest first, as metadata only — id, title, date, length, and participants, with no notes or transcript. Page with limit and offset using the returned total.

Use to build an index of the archive. Do not use when you already know what you are looking for (search_meetings) or when you need notes/transcript for one id (get_meeting).

Does not create, edit, or delete meetings. This is metadata only — it will not return what was said.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax rows to return. Default 50, cap 200.
offsetNoSkip this many meetings (use with returned total).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral context beyond annotations: it returns only metadata, will not return notes or transcript, and does not create/edit/delete meetings. This is meaningful but not excessive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: the core behavior appears in the first sentencechers, followed by usage guidance and exclusions. It is slightly repetitive with 'metadata only' appearing twice, but every sentence otherwise earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple paginated list tool with no output schema, the description fully specifies what is returned, how to paginate, and when not to use it. An agent has enough context to invoke it correctly without additional inference.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with limit and offset already documented in the schema. The description mentions pagination with limit and offset and using the returned total, slightly reinforcing schema semantics, but it does not add substantial new parameter meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'List the user's synced meetings, newest first, as metadata only'. It also enumerates the exact return fields, distinguishing it from any meeting-content tool. This clearly differentiates from siblings such as get_meeting and search_meetings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use guidance: 'Use to build an index of the archive.' It also names alternatives and exclusions: 'Do not use when you already know what you are looking for (search_meetings) or when you need notes/transcript for one id (get_meeting).' This leaves no ambiguity about tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_meetingsSearch recorded meetings by keywordA
Read-onlyIdempotent
Inspect

Search the user's recorded meetings by keyword or phrase. Matches titles, notes, action items, participant names, and the spoken transcript. Returns ids, titles, dates, participants, and note headings — call get_meeting for the full notes and transcript.

Use when the user asks what was said, decided, or assigned on a call, or names a person or project in the context of a meeting. Do not use to browse the whole archive (list_meetings) or to open a meeting whose id you already have (get_meeting). ChatGPT clients call the same search as search.

Does not create, edit, or delete meetings. query must be non-empty (a blank query is rejected, not treated as list-everything). Scans at most the 200 most recent synced meetings; truncated means older meetings were not searched, so total is matches in that window, not the lifetime corpus.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax matches to return. Default 10, cap 25.
queryYesKeyword or phrase to find. Matched as plain text (case-insensitive) against titles, notes, action items, participants, and transcript — not a boolean query language.

Output Schema

ParametersJSON Schema
NameRequiredDescription
totalNoMatches inside the scanned window.
matchesNo
resultsNo
scannedNoMeetings actually scanned (≤ 200).
truncatedNoTrue if older meetings were not scanned.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: it states the tool does not create/edit/delete meetings, that a blank query is rejected rather than treated as list-everything, and that it scans at most the 200 most recent synced meetings with `truncated` indicating an incomplete search window. This is rich, non-obvious behavior that an agent needs to interpret results correctly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded: the first sentence states the core function, the second covers return values, the third gives usage guidance, and the final paragraph covers behavioral caveats. Every sentence earns its place, and the length is appropriate for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for an agent to select and invoke the tool correctly. It covers what the tool searches, what it returns, when to use it, when not to use it, its safety profile (reinforced by annotations), and important edge-case behaviors (blank query rejection, 200-meeting scan window, truncated flag). The output schema exists, so return values need not be exhaustively described in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters well. The description adds meaning by clarifying that query is matched as plain text (case-insensitive) and is not a boolean query language, and that limit caps at 25 with a default of 10. This goes beyond the schema's field descriptions, though the schema already carries most of the weight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Search') and resource ('recorded meetings'), and specifies the exact fields matched (titles, notes, action items, participant names, spoken transcript). It also distinguishes itself from siblings by naming list_meetings and get_meeting as alternatives, making the tool's scope clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use this tool ('when the user asks what was said, decided, or assigned on a call, or names a person or project in the context of a meeting') and when not to use it ('Do not use to browse the whole archive (list_meetings) or to open a meeting whose id you already have (get_meeting)'). It also notes that ChatGPT clients call the same search as `search`, which helps disambiguate sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • First observedfetch
    • First observedget_meeting
    • First observedlist_meetings
    • First observedsearch
    • First observedsearch_meetings

Publisher details

Operator
Walkie · Publisher source
Vendor relationship
First-party
Restrictions
Not available

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Read-only access to your Gilbert meetings, transcripts and summaries over MCP — list, search, and fetch transcripts and summaries.
    5
    23 npm
    1
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    Enables searching and retrieving local Granola meeting notes, including transcripts, AI-generated summaries, and action items. It supports filtering by date or attendee and automatically reloads when the local Granola cache is updated.
    8
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Provides access to Granola notes, meeting transcripts, calendar events, and document panels through the Granola API, enabling search and retrieval of meeting-related content.
    7
    5
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.