Skip to main content
Glama
CONFIGURED_SERVERS.md10.4 kB
# Configured MCP Servers **Last Updated**: 2025-11-17 **Total Servers**: 5 **Status**: ✅ Ready to Use --- ## Connected MCP Servers ### 1. Context7 (Upstash) **Package**: `@upstash/context7-mcp` **Purpose**: Context management and storage **Authentication**: None required **Server Name**: `context7` **Example Usage**: ```typescript // Store context await __mcp_call('context7__store', { key: 'user-preference', value: { theme: 'dark', language: 'en' } }); // Retrieve context const data = await __mcp_call('context7__retrieve', { key: 'user-preference' }); console.log('User preference:', data); ``` --- ### 2. Playwright **Package**: `@playwright/mcp@latest` **Purpose**: Browser automation and web scraping **Authentication**: None required **Server Name**: `playwright` **Example Usage**: ```typescript // Navigate to a page and extract data const result = await __mcp_call('playwright__navigate', { url: 'https://example.com' }); // Take screenshot await __mcp_call('playwright__screenshot', { path: 'screenshot.png' }); // Extract text const content = await __mcp_call('playwright__get_text', { selector: 'h1' }); console.log('Page title:', content); ``` --- ### 3. Bright Data SERP **Package**: `@brightdata/mcp` **Purpose**: SERP (Search Engine Results Page) scraping - Google, Bing, Yandex **Authentication**: API Token required **Server Name**: `bright-data` **Environment Variable**: `BRIGHT_DATA_API_TOKEN` **Available Tools**: 1. `searchEngine` - Single search query 2. `searchEngineBatch` - Multiple queries (up to 10) 3. `scrapeAsMarkdown` - Scrape single webpage to Markdown 4. `scrapeBatch` - Scrape multiple webpages (up to 10) **Example Usage**: ```typescript // Search Google for information const results = await searchEngine({ query: "best restaurants in New York", engine: "google" }); // Batch search multiple queries const batch = await searchEngineBatch({ queries: [ { query: "AI trends 2025", engine: "google" }, { query: "TypeScript best practices", engine: "bing" }, { query: "React updates", engine: "google" } ] }); // Extract content from search results const urls = results.content?.[0]?.links?.slice(0, 3).map(l => l.href) || []; const articles = await scrapeBatch({ urls }); console.log('SERP data:', { results, batch, articles }); ``` **Features**: - Real-time SERP data from Google, Bing, Yandex - Results in under 1 second - No charges for failed requests - Bypass bot detection and CAPTCHA - Support for 195+ countries - Batch processing capabilities --- ### 4. Chrome DevTools **Package**: `chrome-devtools-mcp@latest` **Purpose**: Chrome DevTools Protocol integration **Authentication**: None required **Server Name**: `chrome-devtools` **Example Usage**: ```typescript // Connect to Chrome instance await __mcp_call('chrome-devtools__connect', { port: 9222 }); // Execute JavaScript in browser context const result = await __mcp_call('chrome-devtools__evaluate', { expression: 'document.title' }); console.log('Page title:', result); // Get performance metrics const metrics = await __mcp_call('chrome-devtools__get_metrics', {}); console.log('Performance:', metrics); ``` --- ### 5. Firecrawl **Package**: `firecrawl-mcp` **Purpose**: Advanced web crawling and content extraction **Authentication**: API Key required **Server Name**: `firecrawl-mcp` **Environment Variable**: `FIRECRAWL_API_KEY` **Example Usage**: ```typescript // Crawl a website const pages = await __mcp_call('firecrawl-mcp__crawl', { url: 'https://example.com', maxDepth: 2 }); // Extract structured data const data = await __mcp_call('firecrawl-mcp__scrape', { url: 'https://example.com/article', schema: { title: 'string', author: 'string', content: 'string' } }); console.log('Extracted:', data); ``` --- ## Multi-Tool Workflow Example Here's a powerful example using multiple MCP servers together: ```typescript // 1. Use Firecrawl to extract article content const article = await __mcp_call('firecrawl-mcp__scrape', { url: 'https://blog.example.com/latest-post', schema: { title: 'string', content: 'string', publishDate: 'string' } }); console.log(`Processing article: ${article.title}`); // 2. Store it in Context7 for later reference await __mcp_call('context7__store', { key: `article-${Date.now()}`, value: article }); // 3. Use Playwright to verify the page renders correctly const screenshot = await __mcp_call('playwright__navigate', { url: article.url }); await __mcp_call('playwright__screenshot', { path: 'article-screenshot.png' }); // 4. Use Bright Data to check if content is accessible from different regions const usAccess = await __mcp_call('bright-data__scrape', { url: article.url, country: 'US' }); const euAccess = await __mcp_call('bright-data__scrape', { url: article.url, country: 'DE' }); console.log('Article accessible from US:', usAccess.success); console.log('Article accessible from EU:', euAccess.success); // Final summary console.log('Multi-tool workflow complete!'); console.log(`- Article scraped: ${article.title}`); console.log(`- Stored in context`); console.log(`- Screenshot taken`); console.log(`- Regional access verified`); ``` **Token Savings**: This workflow processes potentially hundreds of KB of data (article content, screenshots, regional checks) but only ~3,000 tokens enter Claude's context! The rest stays in the sandbox. --- ## Server Connection Details ### Transport Type All servers use **stdio** transport (spawned as child processes via `npx`) ### Startup Behavior - Servers are spawned on-demand when `code2mcp` starts - Each server runs as a separate Node.js process - `npx` automatically downloads packages if not cached - First run may be slower as packages are downloaded ### Error Handling If a server fails to connect: - Error is logged to stderr - `code2mcp` continues with other servers - Failed server's tools won't be available - No impact on other connected servers --- ## API Keys Management ### Current Configuration **Bright Data**: - Configured in `src/index.ts` - Can override via `BRIGHT_DATA_API_TOKEN` env variable - Default: Hardcoded token (for your convenience) **Firecrawl**: - Configured in `src/index.ts` - Can override via `FIRECRAWL_API_KEY` env variable - Default: Hardcoded key (for your convenience) ### Best Practice (Production) For production deployments, use environment variables: ```bash # Create .env file cp .env.example .env # Edit .env with your keys BRIGHT_DATA_API_TOKEN=your_production_token FIRECRAWL_API_KEY=your_production_key ``` Then update `src/index.ts` to remove hardcoded values: ```typescript env: { API_TOKEN: process.env.BRIGHT_DATA_API_TOKEN, // Remove || 'default' } ``` --- ## Generated TypeScript APIs When `code2mcp` starts, it will automatically: 1. Connect to all 5 MCP servers 2. Fetch tool schemas from each 3. Generate TypeScript APIs in `generated/servers/`: - `generated/servers/context7/` - `generated/servers/playwright/` - `generated/servers/bright-data/` - `generated/servers/chrome-devtools/` - `generated/servers/firecrawl-mcp/` Each tool will have: - Type-safe input interface - Type-safe output interface - Wrapper function that calls `__mcp_call()` --- ## Testing Individual Servers ### Test Context7 ```typescript await __mcp_call('context7__store', { key: 'test', value: 'hello' }); const result = await __mcp_call('context7__retrieve', { key: 'test' }); console.log('Context7 test:', result); ``` ### Test Playwright ```typescript const page = await __mcp_call('playwright__navigate', { url: 'https://example.com' }); console.log('Playwright test: Page loaded'); ``` ### Test Bright Data SERP ```typescript // Test search engine const results = await searchEngine({ query: "test query", engine: "google" }); console.log('Bright Data SERP test:', results); // Test batch search const batch = await searchEngineBatch({ queries: [ { query: "test 1", engine: "google" }, { query: "test 2", engine: "bing" } ] }); console.log('Batch test:', batch); ``` ### Test Chrome DevTools ```typescript await __mcp_call('chrome-devtools__connect', { port: 9222 }); console.log('Chrome DevTools test: Connected'); ``` ### Test Firecrawl ```typescript const result = await __mcp_call('firecrawl-mcp__scrape', { url: 'https://example.com' }); console.log('Firecrawl test:', result); ``` --- ## Troubleshooting ### Server Won't Connect **Check logs**: ```bash # Run with debug logging LOG_LEVEL=debug node build/index.js ``` **Common issues**: 1. **npx package not found**: First run downloads package, may take time 2. **API key invalid**: Check environment variables 3. **Port already in use**: Another instance may be running ### Tools Not Showing Up **Verify connection**: ```bash # Check generated APIs ls -la generated/servers/ ``` **Should see**: - `context7/` - `playwright/` - `bright-data/` - `chrome-devtools/` - `firecrawl-mcp/` If missing, server failed to connect. Check logs for errors. ### Slow Startup **First run**: `npx` downloads packages (~30-60 seconds) **Subsequent runs**: Much faster (packages cached) **Speed up**: ```bash # Pre-install packages npx -y @upstash/context7-mcp --help npx @playwright/mcp@latest --help npx @brightdata/mcp --help npx chrome-devtools-mcp@latest --help npx -y firecrawl-mcp --help ``` --- ## Next Steps 1. **Start the server**: `npm run build && node build/index.js` 2. **Register with Claude**: Add to `~/.claude.json` 3. **Test basic execution**: Try simple console.log 4. **Test MCP tools**: Call individual servers 5. **Build workflows**: Combine multiple tools --- ## Server Capabilities Summary | Server | Web Scraping | SERP Search | Browser Control | Data Storage | Automation | Proxy Support | |--------|-------------|------------|----------------|--------------|------------|---------------| | Context7 | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | | Playwright | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ | | Bright Data | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | | Chrome DevTools | ✅ | ❌ | ✅ | ❌ | ✅ | ❌ | | Firecrawl | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | --- **Status**: ✅ All servers configured and ready to use! **Build Status**: ✅ Passing **Total Tools Available**: TBD (will be determined on first connection) Ready to start using your 5 powerful MCP servers through Code Mode! 🚀

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/blas0/code2mcp'

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