Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions apps/docs-vectorize/src/docs-vectorize.app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { createApiHandler } from '@repo/mcp-common/src/api-handler'
import { getEnv } from '@repo/mcp-common/src/env'
import { CloudflareMCPServer } from '@repo/mcp-common/src/server'

import { registerPrompts } from './prompts/docs-vectorize.prompts'
import { registerDocsTools } from './tools/docs-vectorize.tools'

import type { Env } from './docs-vectorize.context'
Expand Down Expand Up @@ -33,6 +34,7 @@ export class CloudflareDocumentationMCP extends McpAgent<Env, State, Props> {

async init() {
registerDocsTools(this)
registerPrompts(this)
}
}

Expand Down
27 changes: 27 additions & 0 deletions apps/docs-vectorize/src/prompts/docs-vectorize.prompts.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import type { CloudflareDocumentationMCP } from '../docs-vectorize.app'

/**
* Registers developer-platform-related prompts with the MCP server
* @param agent The MCP server instance
*/
export function registerPrompts(agent: CloudflareDocumentationMCP) {
agent.server.prompt(
'workers-prompt-full',
'Detailed prompt for generating Cloudflare Workers code (and other developer platform products) from https://developers.cloudflare.com/workers/prompt.txt',
async () => ({
messages: [
{
role: 'user',
content: {
type: 'text',
text: await (
await fetch('https://developers.cloudflare.com/workers/prompt.txt', {
cf: { cacheEverything: true, cacheTtl: 3600 },
})
).text(),
},
},
],
})
)
}
1 change: 0 additions & 1 deletion apps/docs-vectorize/src/tools/docs-vectorize.tools.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ const TOP_K = 10
* @param agent The MCP server instance
*/
export function registerDocsTools(agent: CloudflareDocumentationMCP) {
// Register the worker logs analysis tool by worker name
agent.server.tool(
'search_cloudflare_documentation',
`Search the Cloudflare documentation.
Expand Down