Skip to main content
Glama

MCP Documentation Server

by mahawi1992
searchHandler.ts2.17 kB
import { SearchParams, SearchResult } from '../types'; import axios from 'axios'; export async function searchDocumentation(params: SearchParams): Promise<SearchResult[]> { const { query, framework, version } = params; try { // Build search query let searchQuery = query; if (framework) { searchQuery += ` ${framework}`; if (version) { searchQuery += ` version ${version}`; } } // Make API request to Brave Search const response = await axios.get('https://api.search.brave.com/res/v1/web/search', { headers: { 'X-Subscription-Token': process.env.BRAVE_API_KEY || '' }, params: { q: searchQuery, format: 'json' } }); // Process results return response.data.results.map((result: any) => ({ title: result.title, url: result.url, description: result.description, type: determineResultType(result), relevance: calculateRelevance(result, params) })); } catch (error) { console.error('Error searching documentation:', error); throw error; } } function determineResultType(result: any): string { const url = result.url.toLowerCase(); if (url.includes('github.com')) return 'github'; if (url.includes('docs.')) return 'documentation'; if (url.includes('blog')) return 'blog'; return 'general'; } function calculateRelevance(result: any, params: SearchParams): number { let score = 0; // URL relevance if (result.url.includes('github.com')) score += 10; if (result.url.includes('docs.')) score += 8; if (result.url.includes('official')) score += 5; // Framework relevance if (params.framework && result.url.toLowerCase().includes(params.framework.toLowerCase())) { score += 10; } // Version relevance if (params.version && result.description.toLowerCase().includes(params.version.toLowerCase())) { score += 5; } return Math.min(score, 100); }

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/mahawi1992/mcp-documentation-server'

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