cosense-mcp-worker
cosense-mcp-worker
Ein zustandsloser Remote-MCP-Server zur Bedienung eines einzelnen Cosense-Projekts (ehemals Scrapbox). Er läuft auf Cloudflare Workers, nutzt Hono für HTTP-Routing und für MCP die createMcpHandler()-Funktion von Cloudflare Agents sowie das MCP SDK v2. Die OAuth-Implementierung liegt nicht im Worker, sondern wird an Cloudflare Access Managed OAuth delegiert.
Ein Worker ist an ein einzelnes Cosense-Projekt und eine einzelne connect.sid gebunden. Über die Argumente der MCP-Tools können kein anderes Projekt oder andere Anmeldedaten angegeben oder geändert werden.
Verwendung über verschiedene MCP-Tools
Name Cosense
MCP-Endpunkt
https://<worker-host>/mcpAuthentifizierung OAuth
Related MCP server: Remote MCP Server with Bearer Auth
Ein-Klick-Deployment auf Cloudflare
Über diesen Button können Sie einen Worker in Ihrem eigenen Cloudflare-Konto erstellen, bauen und bereitstellen. Im Einrichtungsbildschirm geben Sie den Worker-Namen sowie COSENSE_PROJECT_NAME, CF_ACCESS_TEAM_DOMAIN, CF_ACCESS_AUD und das Secret COSENSE_SID ein.
Das Erstellen der Cloudflare Access Application, das Aktivieren von Managed OAuth und das Einrichten der Access Policy müssen Sie nach dem Deployment selbst durchführen.
Bereitgestellte Endpunkte
Endpunkt | Beschreibung |
| Gibt eine Dienstübersicht zurück. Projektname und Geheimnisse werden nicht zurückgegeben. |
| Authentifizierungsfreier Health-Check. |
| Durch Cloudflare Access geschützter Streamable-HTTP-MCP-Endpunkt. |
MCP-Tools
Tool | Eingabe | Beschreibung |
|
| Ruft den Seiteninhalt, direkte Links, verwandte Seiten mit 1-Hop- und 2-Hop-Verbindungen sowie externe und projektfremde Links ab. |
| keine | Ruft bis zu 100 Seiten nach Aktualisierungsdatum sortiert mit Beschreibung und Aktualisierungszeit ab. |
|
| Führt eine Cosense-Volltextsuche im konfigurierten Projekt durch. |
|
| Fügt nach der ersten Zeile mit exakter Übereinstimmung ein. Wenn keine Übereinstimmung gefunden wird, wird am Ende angehängt. |
Lokale Einrichtung
Erforderlich sind Node.js 20 oder höher, Corepack, ein Cloudflare-Konto mit Zugriff auf Cloudflare Zero Trust sowie eine Sitzungs-ID mit Berechtigungen für das Ziel-Cosense-Projekt.
git clone <リポジトリURL> cosense-mcp-worker
cd cosense-mcp-worker
corepack enable
pnpm installNicht geheime Werte werden in wrangler.jsonc festgelegt.
"vars": {
"COSENSE_PROJECT_NAME": "your-project",
"CF_ACCESS_TEAM_DOMAIN": "https://your-team.cloudflareaccess.com",
"CF_ACCESS_AUD": "YOUR_ACCESS_APPLICATION_AUDIENCE_TAG"
}Die Sitzungs-ID muss unbedingt als Worker-Secret festgelegt werden. Sie darf nicht in wrangler.jsonc, im Quellcode oder in Git gespeichert werden.
pnpm wrangler secret put COSENSE_SIDNur für die lokale Entwicklung wird sie in die nicht eingecheckte Datei .dev.vars eingetragen.
COSENSE_SID=your-connect.sid-valuePrüfung und lokale Ausführung erfolgen wie folgt. pnpm check führt Lint, Typprüfung, Unit-Tests, die Synchronisationsprüfung der Worker-Binding-Typen und die Bundle-Prüfung vor dem Deployment zusammen aus.
pnpm check
pnpm wrangler dev --localEinrichtung von Cloudflare Access Managed OAuth
Führen Sie den folgenden Befehl erst aus, wenn Sie bereit für das Deployment sind.
pnpm run deployErstellen Sie anschließend im Cloudflare Zero Trust Dashboard eine Access Application für den Hostnamen des Workers.
Erstellen Sie eine MCP server application für die Domain des Workers und den Pfad
/mcp.Richten Sie eine Access Policy für Benutzer oder ID-Gruppen ein, die die Nutzung des Ziel-Cosense-Projekts erlauben.
Kopieren Sie das Application Audience (AUD) Tag und setzen Sie es in
CF_ACCESS_AUD.Stellen Sie sicher, dass die Team Domain von Zero Trust mit
CF_ACCESS_TEAM_DOMAINübereinstimmt.Aktivieren Sie in den Advanced settings der Application Managed OAuth.
Registrieren Sie
https://<worker-host>/mcpbeim MCP-Client.
Authorization Code Flow, PKCE, Login, Refresh-Token, OAuth-Discovery und Access Policy werden alle von Cloudflare Access übernommen. Der Worker selbst implementiert keinen OAuth-Server.
Der Worker empfängt die Cf-Access-Jwt-Assertion und leitet Anfragen an /mcp nur dann an den MCP-Handler weiter, nachdem er die RS256-Signatur, den Issuer und die AUD über den JWKS-Endpunkt des Teams verifiziert hat.
Die OAuth-Discovery-Informationen bei Verwendung von Managed OAuth werden von der Access-Ebene an den Client zurückgegeben. Fügen Sie im Worker keine OAuth-Endpunkte oder einen eigenen Autorisierungsserver hinzu.
Sicherheitseigenschaften
COSENSE_SIDwird als Secret-Binding behandelt und nicht in JSON-Antworten oder Logs aufgenommen./mcplehnt Anfragen ohne oder mit ungültiger Access-Assertion mit401ab.Die Signatur des Access-JWT wird über
https://<team-domain>/cdn-cgi/access/certsverifiziert; auch Issuer und AUD werden geprüft.Der Origin von
/mcpist vollständig offen. Die Kompatibilität mit Remote-MCP-Clients hat Priorität; die Zugriffskontrolle erfolgt über das OAuth-Token von Cloudflare Access und die JWT-Verifizierung im Worker.Die Schemata der MCP-Tools lehnen undefinierte Eingaben ab, sodass der Aufrufer Projekt oder Anmeldedaten nicht überschreiben kann.
Beliebige Fehlerinhalte von Cosense werden nicht direkt zurückgegeben, sondern auf fehlerhafte Operationen beschränkt.
Um unbeabsichtigt große Antworten zu vermeiden, ist die Tool-Ausgabe auf 100.000 Zeichen begrenzt.
Verzeichnisstruktur
src/
config.ts Worker bindingの検証
index.ts Honoルートとstateless MCP HTTP transport
middleware/access-auth.ts Access JWTの検証
mcp/server.ts MCP SDK v2 server factory
mcp/tools/ ツールごとのスキーマと登録処理
cosense/client.ts Cosense adapter
cosense/formatter.ts LLM向けページ整形
cosense/insert-lines.ts 純粋な挿入位置計算
test/ 外部Cosense APIを呼ばないユニットテストReferenzen
Inspiriert von yosider/cosense-mcp-server. Dieses Projekt kopiert keinen Code aus diesem Repository, sondern ist eine Neuimplementierung für Cloudflare Workers.
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 Servers
- -licenseNot gradedqualityNot gradedmaintenanceA Model Context Protocol server implementation that runs on Cloudflare Workers with OAuth authentication support, allowing users to connect MCP clients like Claude Desktop or the MCP Inspector to utilize remote AI tools.
- FlicenseNot gradedqualityCmaintenanceA Cloudflare Workers-based MCP server implementation that supports OAuth/bearer token authentication, enabling secure remote interaction with Model Context Protocol tools.
- FlicenseNot gradedqualityCmaintenanceA Model Context Protocol server implementation designed to run on Cloudflare Workers with integrated OAuth authentication. It enables hosting and securely accessing MCP tools remotely via SSE transport from clients like Claude Desktop.
- FlicenseNot gradedqualityCmaintenanceA remote MCP server deployed on Cloudflare Workers with OAuth login, enabling tools like math operations to be called via natural language.
Related MCP Connectors
Hosted remote MCP server for YNAB on Cloudflare Workers with OAuth
Cloudflare Workers MCP server: crypto-signal
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
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/ogatomo21/cosense-remote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server