Business Card MCP
Business Card MCP
AI-native, selbst hostbare private Visitenkarten-Bibliothek. Benutzer laden Visitenkarten in ChatGPT hoch, die von einem vorhandenen multimodalen Modell erkannt und bestätigt werden; das Remote MCP übernimmt Validierung, privaten Speicher, Suche, Änderung, Archivierung und Export, ohne zusätzliche Modell-APIs aufzurufen.
Funktionen
ChatGPT Remote MCP: Visitenkarten erstellen, suchen, lesen, aktualisieren, archivieren und exportieren
Private Verwaltungswebsite: Login mit selbst festgelegtem Passwort, Kartenwand/Listenansicht, geschützte Thumbnails
D1 FTS5: Suche nach Name, Firma, Position, Telefon, E-Mail, Adresse, Tags, Anlass und Notizen
R2: Private Markdown- und 480px-WebP-Thumbnails
KV: Pro Benutzer unabhängiger
bc_-Connector-KeyNach dem Schreiben wird eine klickbare Visitenkarten-Bestätigungsseite zurückgegeben
Thumbnail ist ein Pflichtfeld beim Erstellen von Visitenkarten, um Datensätze ohne Bild zu vermeiden
Derzeit handelt es sich um eine Stichwort-Volltextsuche, nicht um Embedding-/Vektor-Semantiksuche.
Related MCP server: DuckPond MCP Server
Architektur
ChatGPT / Claude
│ Remote MCP
▼
Cloudflare Worker ── WEB_PASSWORD 或可選 Cloudflare Access JWT 驗證
├── D1:聯絡人與 FTS5
├── R2:Markdown、WebP 縮圖
├── KV:MCP Key
└── Static Assets:私人管理網站Originale Visitenkartenbilder werden standardmäßig nicht gespeichert. Das GitHub-Repository enthält nur Code, Migrationen und synthetische Testdaten, keine Benutzerkontakte.
MCP Tools
Tool | Zweck |
| Schreibt vom Benutzer bestätigte Daten, Markdown und erforderliche Thumbnails |
| Durchsucht die eigenen Visitenkarten |
| Ruft vollständige Visitenkarte und Bestätigungsseiten-Link ab |
| Aktualisiert Felder, Tags und Notizen |
| Archiviert Visitenkarten, löscht nicht dauerhaft |
| Exportiert als Markdown oder vCard |
Bereitstellungsanforderungen
Node.js 20+
Cloudflare-Konto
Wrangler CLI, angemeldet beim richtigen Cloudflare-Konto
Bereitstellung
1. Installation und lokale Einrichtung
npm install
cp public/config.example.js public/config.jswrangler.jsonc wird mit dem Repository als Nullwert-Platzhalterversion geliefert (der SmallGreen-Standard erfordert statisch bestimmbare Ressourcendeklarationen); im nächsten Schritt werden die echten IDs eingetragen. Nach dem Ausfüllen wird git update-index --skip-worktree wrangler.jsonc empfohlen, um zu vermeiden, dass echte IDs committet werden. public/config.js wird von Git ignoriert; die Web-Authentifizierung benötigt keine Frontend-Konfiguration.
2. Cloudflare-Ressourcen erstellen
npx wrangler d1 create business-card-mcp
npx wrangler r2 bucket create business-card-mcp-assets
npx wrangler kv namespace create CARD_KEYSTrage die von Cloudflare zurückgegebenen Account-, D1- und KV-IDs in wrangler.jsonc ein und konfiguriere:
PUBLIC_BASE_URLR2-Bucket-Name
Lege anschließend das selbst festgelegte Passwort für den Web-Login fest. Das Passwort läuft nur über Wrangler-Secrets und wird nicht in wrangler.jsonc geschrieben:
npx wrangler secret put WEB_PASSWORDCF_ACCESS_TEAM_DOMAIN und CF_ACCESS_AUD können standardmäßig leer bleiben; leer bedeutet, dass die Website Passwort-Login verwendet, ohne Kartenbindung.
3. Optionale Erweiterung: Cloudflare Access E-Mail-OTP
Konfiguriere diesen Abschnitt nur, wenn Cloudflare am Edge zuerst eine E-Mail-One-Time-PIN-Prüfung durchführen soll. Das Zero-Trust-Onboarding kann eine Kreditkartenbindung verlangen; der kostenlose Plan selbst kostet $0.
Erstelle in Cloudflare Zero Trust eine self-hosted Access-Anwendung, die die Domain dieses Workers schützt.
Aktiviere One-Time PIN als Anmeldemethode und beschränke die Anmeldeberechtigten per E-Mail- oder E-Mail-Domain-Policy.
Stelle sicher, dass die Browser-UI und
/api/*im Access-Schutzbereich liegen.Befreie den Pfad
/mcpvon der Access-Anmeldeanforderung, z. B. per path-based Bypass-Policy oder durch Aufteilung in Pfadregeln ohne Access./mcpwird weiterhin über denbc_-MCP-Key authentifiziert; ChatGPT/Claude senden keine Cloudflare-Access-Cookies.Trage das Audience-Tag der Access-Anwendung in
CF_ACCESS_AUDund die Zero-Trust-Team-Domain inCF_ACCESS_TEAM_DOMAINein und stelle erneut bereit. Danach werden Web-Anfragen, die Access passieren, automatisch durchgelassen, ohne nach dem selbst festgelegten Passwort zu fragen.
4. Migration, Tests und Bereitstellung
npx wrangler types
npm run typecheck
npm test
npx wrangler d1 migrations apply business-card-mcp --remote
npx wrangler deploy5. ChatGPT verbinden
Öffne die bereitgestellte Website und gib das mit
WEB_PASSWORDfestgelegte Passwort ein; bei Cloudflare-Access-Upgrade erfolgt die Verifizierung per E-Mail-One-Time-PIN.Generiere den Visitenkarten-MCP-Key.
Kopiere die vollständige Connector-URL; die URL enthält den Key und gilt als Passwort.
Füge im ChatGPT-Entwicklermodus ein Remote-MCP hinzu.
Teste nach dem Scannen der Tools mit „Suche mit dem Visitenkarten-MCP nach jemandem“.
Lokale Entwicklung
npm run migrate:local
npm run devHealth-Check: GET /healthz
Remote MCP: POST /mcp
Sicherheit und Datenschutz
Alle Visitenkartenabfragen sind auf den per Passwort angemeldeten
owner, die Cloudflare-Access-suboder den MCP-Key-Inhaber beschränkt.Der R2-Bucket bleibt privat; Thumbnails werden über eine login-geschützte API bereitgestellt.
Das MCP akzeptiert sowohl Bearer-Tokens als auch Connector-URL-Query-Tokens.
Der vollständige Key wird nur beim Erstellen angezeigt; einzelne Widerrufe werden unterstützt.
Commite nicht
.env,.dev.vars,wrangler.jsoncoderpublic/config.js.
Sicherheitsprobleme bitte gemäß SECURITY.md privat melden, keine öffentlichen Issues erstellen.
Verifizierung
npm test
npm run typecheck
npm audit --omit=devDas Projekt verfügt derzeit über Unit-, MCP-Protokoll-, Web-API-, Berechtigungs-, Speicher- und UI-Vertragstests; die Coverage-Schwellenwerte liegen bei 80 % für Lines/Functions/Statements und 75 % für Branches.
Bekannte Einschränkungen
Vektor-Semantiksuche ist noch nicht verfügbar.
Für bestehende Visitenkarten ohne Bild gibt es noch keine Schnittstelle zum Nachreichen von Bildern; für neue Daten ist das Thumbnail bereits Pflicht.
Dauerhaftes Löschen ist standardmäßig nicht verfügbar; Archivierung wird verwendet, um versehentliches Löschen zu vermeiden.
Lizenz
Apache-2.0. Siehe LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
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 Connectors
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
API-first CRM for LLMs - contacts, companies, deals and activities over a native MCP server.
Persistent memory and vector search for AI agents. Hosted, OAuth-protected via Google sign-in.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceSelf-hosted semantic memory layer for Claude and MCP-compatible AI clients. Store notes, search by meaning not keywords, and recall relevant context automatically across sessions. Runs free on Cloudflare Workers, D1, Vectorize, and Workers AI2750MIT
- AlicenseAqualityFmaintenanceMCP server for multi-tenant DuckDB management with R2/S3 cloud storage, enabling AI agents to manage per-user databases with automatic cloud persistence.6876MIT
- FlicenseNot gradedqualityDmaintenanceSelf-hosted personal knowledge graph running on Cloudflare, connecting to Claude as an MCP server for capturing atomic concepts and cross-domain analogies.21-
- AlicenseNot gradedqualityBmaintenanceSelf-hosted MCP server connecting AI assistants like Claude to Anki for AI-assisted flashcard generation and sync. It supports multi-tenant, authenticated operations to add, search, and analyze cards in real Anki collections.AGPL 3.0
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/ai-cooperation/business-card-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server