mcp-tenant-pair-demo

MCPCommunity
v0.1.2Matthias MeyerMITAktualisiert vor 14 TnpmGitHub

Reference MCP server demonstrating mcp-tenant-pair (12 tools, stdio): pair lifecycle + bi-temporal shared state + DSGVO Art.17 erasure

Läuft in
ClaudeCursorCopilotGemini

Abgeleitet aus den Transporten, die dieser Eintrag deklariert (stdio). Ein Client, der hier nicht steht, ist damit nicht ausgeschlossen — Forge kann ihn nur nicht bestätigen.

Automatisch aus öffentlichen Quellen indexiert. Vom Entwickler auf Forge noch nicht verifiziert.Diesen Eintrag beanspruchen →
59Downloads/Wo.
vor 14 TLetzte Aktualisierung
Paket
AutorMatthias Meyer
LizenzMIT
Version0.1.2
Quellenpm+mcp-registry
Trust-Status
B
60/100Gut
Im Forge-Index gelistet+10/10
Publisher-Identität verifiziert+0/20
Publisher: führe `forge publish` im Repo des Pakets aus, um die Inhaberschaft zu beanspruchen
Ed25519-Publish-Signatur+0/5
Wird automatisch ergänzt, wenn der Publisher `forge publish` ausführt
Domain-Verifizierung+0/5
Publisher: hinterlege /.well-known/forge.json auf der Paket-Homepage mit { "publisher": "<github-login>" }
npm Trusted Publishing (Sigstore)+0/5
Veröffentliche aus GitHub Actions mit --provenance, damit die Attestation dieses Paket an dieses Repo bindet
npm-Maintainer-Übereinstimmung+0/5
Wird erreicht, sobald deine Identität oben verifiziert ist und dieser Login npm-Maintainer dieses Pakets ist
CVE-Scan · sauber+30/30
Statische Analyse · sauber+20/20
Füge das in Claude Code, Cursor oder einen beliebigen KI-Assistenten ein, um alle Lücken zu schließen
StatusVon der Community indexiert
PublisherNicht verifiziert
SignaturNicht signiert
Domain
Herkunft
Abhängigkeiten✓ 60 aufgelöst+ · keine verwundbar
Tool-Oberfläche12 Tools · keines privilegiert
Sicherheits-Scan✓ Sauberv0.1.2 · vor 3 TWie gut funktioniert dieser Scan?
EvaluierungenKeine
Indexiert20. Aug. 2026

Die Verifizierung bestätigt die Identität des Publishers (die Inhaberschaft am Repo), nicht die Sicherheit des Codes. Der Sicherheits-Scan deckt bekannte CVEs und verdächtige Installationsskripte ab.

Tools

12 Tools · keines privilegiert
Statisch aus dem veröffentlichten Paket extrahiertv0.1.2 · 3d ago

Aus dem Quellcode gelesen, den npm tatsächlich ausliefert, zum Zeitpunkt des Scans. Das Paket wurde nie ausgeführt. Tools, die zur Laufzeit dynamisch registriert werden oder in gebündeltem beziehungsweise minifiziertem Code stecken, können übersehen werden — das hier ist also eine Untergrenze der Tool-Oberfläche, keine vollständige Erhebung.

create_pairCreate a new pair. The creator becomes owner. Returns pairId and the first invite token.

Create a new pair. The creator becomes owner. Returns pairId and the first invite token.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

invite_memberGenerate an invite token. Only an active member of the pair may invite. Caps pending invites per pair.

Generate an invite token. Only an active member of the pair may invite. Caps pending invites per pair.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

accept_inviteRedeem an invite token to join a pair. Idempotent rejection on double-accept and expired tokens.

Redeem an invite token to join a pair. Idempotent rejection on double-accept and expired tokens.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

list_membersList all active members of a pair (excludes members who left or were kicked).

List all active members of a pair (excludes members who left or were kicked).

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

set_member_preferencesSet a per-user preference (e.g. allergy, taste). Only readable by the same member via get_member_constraints.

Set a per-user preference (e.g. allergy, taste). Only readable by the same member via get_member_constraints.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

get_member_constraintsRead per-user state. A member can only read their own state; cross-member reads are not exposed.

Read per-user state. A member can only read their own state; cross-member reads are not exposed.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

get_shared_stateRead shared state for the entire pair (default namespace). All members can read.

Read shared state for the entire pair (default namespace). All members can read.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

set_shared_stateWrite shared state. Bi-temporal: previous active row gets valid_to, new row appended.

Write shared state. Bi-temporal: previous active row gets valid_to, new row appended.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

resolve_conflictsResolve pending conflicts using LWW (default) or manual. Idempotent: re-running on a clean state is a no-op.

Resolve pending conflicts using LWW (default) or manual. Idempotent: re-running on a clean state is a no-op.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

kick_memberRemove a member from a pair. Only the owner may kick. Owner cannot kick themselves.

Remove a member from a pair. Only the owner may kick. Owner cannot kick themselves.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

leave_pairVoluntarily leave a pair. Sets left_at; shared state remains for other members.

Voluntarily leave a pair. Sets left_at; shared state remains for other members.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

forget_memberDSGVO Art. 17 right-to-erasure: hard-delete the member's per-user state (allergies, dietary preferences, etc.) and null their display name. The membership trace (left_at marker) is retained for audit. Idempotent.

DSGVO Art. 17 right-to-erasure: hard-delete the member's per-user state (allergies, dietary preferences, etc.) and null their display name. The membership trace (left_at marker) is retained for audit. Idempotent.

Für dieses Tool wurde kein Eingabeschema veröffentlicht.

12 von 12 Tools haben eine Beschreibung veröffentlicht.

Tool-Namen und -Beschreibungen stammen vom Publisher und werden wortgetreu als inerter Text angezeigt. Es sind die Zeichenketten, die ein MCP-Client an ein Modell übergibt, deshalb prüft Forge sie auf Prompt-Injection-Muster — jeder Befund erscheint oben beim Sicherheits-Scan. „Privilegiert“ ist ein Schlagwort-Treffer im Tool-Namen, keine Prüfung dessen, was das Tool tut: ein harmlos klingender Name kann trotzdem alles tun.

Über

Reference MCP server demonstrating mcp-tenant-pair (12 tools, stdio): pair lifecycle + bi-temporal shared state + DSGVO Art.17 erasure

Schlagwörter
mcpmodel-context-protocoltenantpairdemo
Alternativen
Tool-Oberflächen werden verglichen…

Abhängigkeitsbaum

Was ein Forge-Scan am 2026-08-30 aus den npm-Metadaten aufgelöst hat — beobachtete Auflösung, keine Angabe des Herausgebers.

60 Pakete aufgelöst · 3 direkt · keines mit Sicherheitshinweisen Die Auflösung endet bei Tiefe 4 und 60 Paketen.

Der Durchlauf endete an der Grenze von 60 Paketen. Der Rest des Baums wurde nie aufgelöst.

36 weitere aufgelöste Pakete werden hier nicht gezeichnet (Anzeigegrenze: 24). Jede Abhängigkeit mit einem Sicherheitshinweis wird unabhängig von der Grenze gezeichnet. Vollständiges Inventar (CycloneDX-SBOM)

Deklariert, aber nicht aufgelöst

71 deklarierte Abhängigkeiten sind nie im Baum gelandet. Sie fehlen in Forges Auflösung, nicht im Paket.

+59 weitere nicht aufgeführt. Die Zählungen nach Grund oben erfassen sie alle.

Nicht verfolgt: peerDependencies. Dieser Baum erfasst nur Laufzeitabhängigkeiten; was jene mitbringen, wurde nie aufgelöst.