BriefMe

Meeting agenda timer for AI assistants: build agendas in chat, share a live synced countdown.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
100%
Qualität der Benennung
95%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~4,262Tokens (Tool-Definitionen)
~5.3 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (3.33% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "agenda-timer": {
      "url": "https://briefme.us/mcp"
    }
  }
}

Remote-Endpunkte

https://briefme.us/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (8)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟡create_agenda(title, blocks, language)

Creates a timed meeting agenda — a shareable countdown timer that walks attendees through timeboxed topics in sync. Use when the user wants a meeting timer, timeboxes, a run of show, a workshop or standup schedule, or to keep a meeting on time. Not for calendar scheduling or note-taking, and a two-item chat needs no timer. Returns edit_url (the private control page: start, pause, advance and finish the meeting, and edit blocks by hand), share_url (the read-only live timer for attendees, safe to post anywhere) and edit_token (needed by every other BriefMe tool, and the only way back into this agenda). The user needs both links. When the blocks depart from BriefMe's standard shape — an opening, a wrap-up, planned breaks — the result also carries structure_suggestions, each naming the block to add and its length; add_block and reorder_blocks apply them. Block durations add up to the meeting length; when none is given, a standup is about 15 minutes, a 1:1 about 30, sprint planning 60 to 90. Most agendas are three to eight blocks. Titles are read off a wall-sized countdown, so six words or fewer read best; a description is useful only when the title alone is ambiguous. Agendas expire after 7 days and cannot be recovered afterwards.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "description": "Short name for the meeting, e.g. \"Weekly engineering sync\".",
      "maxLength": 120,
      "type": "string"
    },
    "blocks": {
      "description": "The agenda blocks, in the order they will run.",
      "minItems": 1,
      "maxItems": 40,
      "items": {
        "properties": {
          "title": {
            "description": "Short, active, scannable on a countdown screen.",
            "maxLength": 80,
            "type": "string"
          },
          "duration_seconds": {
            "description": "How long this block runs, in seconds.",
            "minimum": 30,
            "maximum": 14400,
            "type": "integer"
          },
          "block_type": {
            "description": "Internal classification for aggregate analysis, inferred from the content; shown on no BriefMe page.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other"
            ],
            "type": "string"
          },
          "description": {
            "description": "Optional one-line note, only when the title is ambiguous.",
            "maxLength": 280,
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "title",
          "duration_seconds",
          "block_type"
        ]
      },
      "type": "array"
    },
    "language": {
      "description": "The user's conversation language as a two-letter ISO 639-1 code (e.g. 'de'). Localizes the standard block titles quoted in structure_suggestions. Unsupported values fall back to English.",
      "type": "string"
    }
  },
  "required": [
    "title",
    "blocks"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "instructions": {
      "description": "Read this first: how to reply to the user.",
      "type": "string"
    },
    "upgrade_hint": {
      "description": "Present only on a free-tier agenda.",
      "type": "string"
    },
    "structure_suggestions": {
      "description": "Present only when the agenda lacks an opening, a closing or a required break. Apply with add_block and reorder_blocks before replying.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "edit_url": {
      "description": "The user's private control page. Give it to the user; never post it anywhere shared.",
      "format": "uri",
      "type": "string"
    },
    "edit_token": {
      "description": "What every other tool takes. Keep it for the rest of the conversation.",
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "instructions",
    "edit_url",
    "edit_token",
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🟢get_agenda(edit_token)

Reads back the current state of an agenda, including the id of every block. Needed when block ids are unknown — typically at the start of a new conversation where the user has pasted an edit token; after any BriefMe mutation the current state is already in hand. Takes edit_token only. A share link or share URL does not open an agenda here: one known only by its share link cannot be read or edited through this connector, only re-created.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    }
  },
  "required": [
    "edit_token"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🔴update_agenda(edit_token, title)

Renames the agenda. Blocks are untouched — the block tools change those. Returns the full updated agenda.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    },
    "title": {
      "description": "The new meeting title.",
      "maxLength": 120,
      "type": "string"
    }
  },
  "required": [
    "edit_token",
    "title"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🟡add_block(edit_token, title, duration_seconds, block_type, description, ...)

Adds one block to an existing agenda: at the end, above a final wrap-up, or directly after after_block_id. Adds only — it does not reorder or change any existing block. Returns the full updated agenda, so no get_agenda call is needed afterwards.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    },
    "title": {
      "description": "Short, active, scannable on a countdown screen.",
      "maxLength": 80,
      "type": "string"
    },
    "duration_seconds": {
      "description": "How long this block runs, in seconds.",
      "minimum": 30,
      "maximum": 14400,
      "type": "integer"
    },
    "block_type": {
      "description": "Internal classification for aggregate analysis, inferred from the content; shown on no BriefMe page.",
      "enum": [
        "standup",
        "discussion",
        "decision",
        "q_and_a",
        "break",
        "opening",
        "closing",
        "other"
      ],
      "type": "string"
    },
    "description": {
      "description": "Optional one-line note, only when the title is ambiguous.",
      "maxLength": 280,
      "type": "string"
    },
    "after_block_id": {
      "description": "Insert directly after this block id. Omit to add at the end.",
      "type": "string"
    }
  },
  "required": [
    "edit_token",
    "title",
    "duration_seconds",
    "block_type"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🔴update_block(edit_token, block_id, title, duration_seconds, block_type, ...)

Changes one block, identified by block_id. Only the supplied fields change; anything omitted keeps its current value exactly, so a one-field edit is a one-field call. Changes one block only: it does not reorder, add or remove anything, and there is no whole-agenda replace. get_agenda returns the current block ids. Returns the full updated agenda.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    },
    "block_id": {
      "description": "The id of the block to change, from create_agenda or get_agenda.",
      "type": "string"
    },
    "title": {
      "description": "New title. Omit to leave unchanged.",
      "maxLength": 80,
      "type": "string"
    },
    "duration_seconds": {
      "description": "New duration in seconds. Omit to leave unchanged.",
      "minimum": 30,
      "maximum": 14400,
      "type": "integer"
    },
    "block_type": {
      "description": "New internal classification (aggregate analysis only; shown on no BriefMe page). Omit to leave unchanged.",
      "enum": [
        "standup",
        "discussion",
        "decision",
        "q_and_a",
        "break",
        "opening",
        "closing",
        "other"
      ],
      "type": "string"
    },
    "description": {
      "description": "New note. Send null to clear it. Omit to leave unchanged.",
      "maxLength": 280,
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "edit_token",
    "block_id"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🔴remove_block(edit_token, block_id)

Removes one block from an agenda. The remaining blocks keep their ids and their order. An agenda must keep at least one block, so this fails on the last one. Removing a block shortens the meeting — it does not redistribute that time to the other blocks. Returns the full updated agenda.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    },
    "block_id": {
      "description": "The id of the block to remove.",
      "type": "string"
    }
  },
  "required": [
    "edit_token",
    "block_id"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🔴reorder_blocks(edit_token, block_ids)

Puts the agenda's blocks into the order given. block_ids must contain every current block id exactly once — none missing, none extra, none repeated. This only reorders: it cannot add, remove or edit a block. get_agenda returns the current ids. Returns the full updated agenda.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The edit_token returned by create_agenda.",
      "type": "string"
    },
    "block_ids": {
      "description": "Every current block id, exactly once, in the order you want them to run.",
      "minItems": 1,
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "edit_token",
    "block_ids"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}
🔴rotate_edit_token(edit_token)

Replaces an agenda's edit token and edit link with new ones. The previous edit_token and edit_url stop working the moment this returns, for every assistant, browser and bookmark that held them — the remedy when an edit link was shared by mistake. Returns the full agenda with the new edit_url and edit_token. The previous ones cannot be restored. Agendas expire after 7 days and cannot be recovered afterwards.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "edit_token": {
      "description": "The current edit_token — the one being replaced.",
      "type": "string"
    }
  },
  "required": [
    "edit_token"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "instructions": {
      "description": "Read this first: how to reply to the user.",
      "type": "string"
    },
    "edit_url": {
      "description": "The user's new private control page; the previous link is dead.",
      "format": "uri",
      "type": "string"
    },
    "edit_token": {
      "description": "What every later tool call takes from now on; the previous token is dead.",
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "total_seconds": {
      "description": "Sum of every block's duration_seconds.",
      "type": "integer"
    },
    "expires_at": {
      "description": "ISO 8601. null when the agenda is saved to an account and does not expire.",
      "format": "date-time",
      "type": [
        "string",
        "null"
      ]
    },
    "share_url": {
      "description": "The read-only agenda with the live timer; safe to give to attendees.",
      "format": "uri",
      "type": "string"
    },
    "blocks": {
      "description": "The blocks in the order they run.",
      "items": {
        "properties": {
          "id": {
            "description": "Stable 8-letter id: what update_block, remove_block, reorder_blocks and after_block_id take.",
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "duration_seconds": {
            "type": [
              "integer",
              "null"
            ]
          },
          "block_type": {
            "description": "Internal classification; never mention it to the user.",
            "enum": [
              "standup",
              "discussion",
              "decision",
              "q_and_a",
              "break",
              "opening",
              "closing",
              "other",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "type": "object",
        "required": [
          "id",
          "title",
          "duration_seconds",
          "block_type",
          "description"
        ]
      },
      "type": "array"
    }
  },
  "required": [
    "instructions",
    "edit_url",
    "edit_token",
    "title",
    "total_seconds",
    "expires_at",
    "share_url",
    "blocks"
  ]
}

Empfohlene Prompts

retrieve_data
Get details about [item] from BriefMe
Erwartete Tools: get_agenda
fetch_info
Fetch [information type] using BriefMe
Erwartete Tools: get_agenda

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet8 Tools
verifiziertVersion nicht aufgezeichnet8 Tools