Skip to main content
Glama
windsornguyen

Brave Search MCP Server

index.ts1.35 kB
#!/usr/bin/env node import { config as loadEnv } from 'dotenv'; // Load environment variables loadEnv(); import { loadConfig } from './config.js'; import { parseArgs } from './cli.js'; import { BraveServer } from './server.js'; import { runStdioTransport, startHttpTransport } from './transport/index.js'; /** * Main entry point for the Brave Search MCP Server * * Transport selection logic: * 1. --stdio flag forces STDIO transport * 2. --port flag or PORT env var triggers HTTP transport * 3. Default: STDIO for local development */ async function main() { try { const config = loadConfig(); const cliOptions = parseArgs(); // Determine transport mode const shouldUseHttp = cliOptions.port || (process.env.PORT && !cliOptions.stdio); const port = cliOptions.port || config.port; if (shouldUseHttp) { // HTTP transport for production/cloud deployment startHttpTransport({ ...config, port }); } else { // STDIO transport for local development const server = new BraveServer(config.apiKey); await runStdioTransport(server.getServer()); } } catch (error) { console.error("Fatal error running Brave Search server:", error); process.exit(1); } } // Run the server main();

Latest Blog Posts

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/windsornguyen/brave-search-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server