Skip to content

Commit 667507e

Browse files
committed
feat: CORS support
1 parent 6f3650b commit 667507e

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/mcp-router-factory.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,19 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
1212
export function createMCPRouter (mcpServer: McpServer): Router {
1313
const router = Router()
1414

15+
// CORS support for browser-based MCP clients
16+
router.use((req: Request, res: Response, next) => {
17+
res.setHeader('Access-Control-Allow-Origin', '*')
18+
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS')
19+
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Accept')
20+
res.setHeader('Access-Control-Expose-Headers', 'Content-Type')
21+
if (req.method === 'OPTIONS') {
22+
res.status(204).end()
23+
return
24+
}
25+
next()
26+
})
27+
1528
// Store transports for legacy SSE clients
1629
const sseTransports: Record<string, SSEServerTransport> = {}
1730

0 commit comments

Comments
 (0)