personal-meeting
Mein eigenes MCP auf Basis eines Meetingprotokoll-Projekts
Ein pädagogisches lokales MCP-Paket, das unstrukturierte Meeting-Notizen abruft, Aufforderungen zum Verfassen von Meetingprotokollen erstellt, Entwürfe validiert und nach Benutzerfreigabe speichert.
Firmenname, Personennamen, Termine, Störungen, Zahlen und Aussagen in diesem Paket sind ausschließlich zu Bildungszwecken erstellte synthetische Daten.
Bildungsziele
Nach Abschluss der Übung können die Teilnehmenden Folgendes:
Die Rollen von Host, Server und Tool in MCP erläutern.
Einen lokalen STDIO-MCP-Server mit Python ausführen.
Tools zum Lesen unstrukturierter Daten implementieren und modifizieren.
Schreib-Tools mit Validierungs- und Freigabegrenzen entwerfen.
MCP an das eigene Meetingprotokollformat anpassen.
Den Server mit Codex oder Claude Desktop verbinden und die Funktionsweise nachweisen.
Aus der Perspektive des Harness-Engineerings Tool-Beschreibungen, Schemata, Antworten und Fehler entwerfen.
Related MCP server: Local Knowledge Desk
Enthaltene Inhalte
3 synthetische unstrukturierte Meeting-Notizen mit unterschiedlichen Schwierigkeitsgraden
Ein funktionierender
FastMCP-Server: 11 Tools, 3 Ressourcen, 1 PromptStandard-Meetingprotokollvorlage
Speicherung auf Basis von Freigabe-Tokens und Überschreib-Erkennung
Prüfer für den Quelltext-Abgleich (Grounding)
5 Übungshefte für Teilnehmende
1 Musterlösung für Kursleitende
Unit-Tests für Domänen-, Grounding- und Harness-Konventionen sowie STDIO-Smoke-Tests
Schnellstart
Erforderliche Umgebung: Python 3.11 oder höher, uv
uv sync --extra dev
uv run pytest -q
uv run python scripts/smoke_stdio.pyUm den MCP Inspector zu verwenden, führen Sie Folgendes aus:
uv run mcp dev src/meeting_mcp/server.pyBereitgestellte Tools
Der empfohlene Ablauf folgt der untenstehenden Reihenfolge, und das Feld next_actions jeder Antwort gibt den nächsten Schritt an.
DISCOVER → READ → GROUND → DRAFT → CHECK → PREVIEW → [사용자 승인] → SAVEDSchritt | Tool | Lesen/Schreiben | Rolle |
DISCOVER |
| Lesen | 3 synthetische Notizen abrufen |
READ |
| Lesen | Originaltext abrufen. Unterstützt Zeilenbereichsangabe und |
GROUND |
| Lesen | Entscheidungskandidaten, Daten und nicht bestätigte Ausdrücke mit Zeilennummern extrahieren |
DRAFT |
| Lesen | Vorlage und Originaltext kombinieren |
CHECK |
| Lesen | Strukturvalidierung. Bietet |
CHECK |
| Lesen | Prüft, ob Personen, Daten und Zahlen im Originaltext vorhanden sind (beratend, blockiert das Speichern nicht) |
PREVIEW |
| Lesen | Unterschiede zur gespeicherten Version prüfen |
PREVIEW |
| Lesen | Validierung, Grounding und Diff gebündelt anzeigen und Freigabe-Token ausstellen |
SAVED |
| Schreiben | Speichert nur bei übereinstimmendem Freigabe-Token (einziges Schreib-Tool) |
OBSERVE |
| Lesen | Liste gespeicherter Meetingprotokolle |
OBSERVE |
| Lesen | Gespeichertes Audit-Protokoll abrufen |
Ressourcen und Prompts
Typ | URI oder Name | Rolle |
Resource |
| Originaltext der Meeting-Notiz |
Resource |
| Standard-Meetingprotokollvorlage |
Resource |
| Gespeichertes Meetingprotokoll |
Prompt |
| Meetingprotokoll-Workflow einschließlich Freigabegrenze |
Harness-Design
Dieser Server behandelt nicht nur die Funktionalität, sondern auch die Art und Weise, wie das Modell Tools verwendet, als Designgegenstand. Weitere Details finden Sie in Übung 5.
Alle Antworten enthalten
stageundnext_actions, sodass das Modell allein anhand der Antwort das nächste Tool auswählt.Fehler liefern Ursachencode, Wiederherstellungsmethode und auswählbare Werte zusammen zurück.
Die Argumentschemata bleiben flach (
{"note_id": "..."}). Wenn Pydantic-Modelle als Argumenttyp verwendet werden, werden sie als{"params": {...}}verschachtelt, wodurch sich die Aufrufstruktur ändert.Da Rückgabewerte Pydantic-Modelle sind, wird
outputSchemaautomatisch generiert.Nur sichere Prüfungen (Struktur) blockieren das Speichern; heuristische Prüfungen (Grounding) werden nur als Warnung gemeldet.
Alle Tools tragen
readOnlyHint/destructiveHint, um Schreib-Tools zu unterscheiden.
Codex-Verbindung
Führen Sie im Paketstammverzeichnis den folgenden Befehl aus:
codex mcp add personal-meeting -- uv --directory "$PWD" run python src/meeting_mcp/server.py
codex mcp listIn der Codex-App können Sie unter Settings → MCP servers → Add server den Server auch als STDIO-Server hinzufügen. Gemäß der offiziellen OpenAI-Dokumentation teilen sich die Codex-App, die CLI und die IDE-Erweiterung die MCP-Konfiguration desselben Hosts.
Claude-Desktop-Verbindung
Ersetzen Sie ABSOLUTE_PROJECT_PATH in config/claude_desktop_config.example.json durch den absoluten Pfad dieses Ordners und übernehmen Sie ihn dann in die Claude-Desktop-Einstellungen. Die App muss vollständig beendet und anschließend neu gestartet werden.
Empfohlene Übungs-Prompts
personal-meeting MCP에서 사용 가능한 더미 회의 메모를 보여주세요.training_design 메모를 읽고, 제공된 회의록 템플릿에 맞춰 초안을 작성하세요.
원문에 없는 담당자와 기한은 추정하지 마세요.incident_review 메모에서 extract_note_facts로 ambiguity_flags를 먼저 확인하고,
확정되지 않은 항목은 전부 '미정'으로 남긴 회의록을 작성하세요.작성한 회의록을 validate_minutes_draft와 check_minutes_grounding으로 검증하고,
통과하면 preview_save_minutes까지만 실행하세요. 저장은 아직 하지 마세요.Ablauf der Schulung
Validierungsbefehle
uv run pytest -q
uv run python scripts/smoke_stdio.py
uv run python scripts/validate_package.pyDesignprinzipien
MCP ruft keine separate LLM-API auf.
Codex oder Claude fasst zusammen; MCP übernimmt Daten, Validierung und Speicherung.
Informationen, die nicht im Originaltext bestätigt wurden, werden nicht erzeugt; der Grounding-Prüfer gleicht dies maschinell ab.
Für die endgültige Speicherung sind sowohl das im Vorschaumodus ausgestellte Freigabe-Token als auch die ausdrückliche Freigabe des Benutzers erforderlich.
Das Freigabe-Token ist ein Hash aus (note_id, Inhalt), sodass der freigegebene Inhalt und der gespeicherte Inhalt nicht voneinander abweichen können.
Domänenlogik (
core,grounding) und Tool-Konventionen (server,harness) werden getrennt.In der tatsächlichen Schulung werden keine kunden-, mitarbeiter- oder vertragsbezogenen Daten verwendet.
Referenzen
Referenz-Repository: https://github.com/kyopark2014/mcp
Offizielle Codex-MCP-Dokumentation: https://developers.openai.com/codex/mcp
MCP-Python-SDK: https://github.com/modelcontextprotocol/python-sdk
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityAmaintenanceAn MCP server for reading, editing, and validating Microsoft Word documents with specialized support for track changes, comments, and footnotes. It enables structural auditing, heading extraction, and precise OOXML-level document manipulation through natural language tools.10042MIT
- FlicenseAqualityBmaintenanceA local MCP server for managing Markdown notes, enabling create, list, read, search, summarize, and delete operations through natural language.61
- FlicenseNot gradedqualityCmaintenanceProvides lightweight documentation review tools including issue detection, readability scoring, style checking, and document summarization for integration with MCP-compatible clients.
- AlicenseNot gradedqualityCmaintenanceRead-only MCP server for searching and retrieving LogicNotes meeting notes, including summaries, transcripts, and action items.MIT
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
MCP-native collaborative markdown editor with real-time AI document editing
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/minsik102/fileanalyzer_mcp_testmode'
If you have feedback or need assistance with the MCP directory API, please join our Discord server