Skip to main content
Glama
SearchResults.tsx•2.24 kB
"use client"; import { useEffect, useState } from 'react'; import type { ReactElement } from 'react'; interface SearchResultsProps { query: string; visible: boolean; onResultClick?: () => void; } export function SearchResults({ query, visible, onResultClick }: SearchResultsProps): ReactElement | null { const [results, setResults] = useState<any[]>([]); useEffect(() => { if (query.trim()) { // This would normally be an API call const mockResults = [ { id: 1, title: 'Weather MCP Server', description: 'Connect to the weather MCP server' }, { id: 2, title: 'Local MCP Server', description: 'Start a local MCP server' }, { id: 3, title: 'Cloudflare Workers', description: 'Deploy an MCP server to Cloudflare Workers' }, { id: 4, title: 'Tool: Calculator', description: 'Basic calculator tool' }, { id: 5, title: 'Tool: Weather', description: 'Get current weather' }, ].filter(result => result.title.toLowerCase().includes(query.toLowerCase()) || result.description.toLowerCase().includes(query.toLowerCase()) ); setResults(mockResults); } else { setResults([]); } }, [query]); if (!visible || !query.trim() || results.length === 0) { return null; } const handleClick = () => { // Make sure we call the onResultClick function when a search result is clicked if (onResultClick) { onResultClick(); } }; return ( <div className="search-results"> <div className="search-results-header"> <span>Search Results</span> <span className="search-results-count">{results.length} items</span> </div> <div className="search-results-list"> {results.map(result => ( <div key={result.id} className="search-result-item" onClick={handleClick} > <div className="search-result-icon">🔍</div> <div className="search-result-content"> <div className="search-result-title">{result.title}</div> <div className="search-result-description">{result.description}</div> </div> </div> ))} </div> </div> ); }

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/thomasdavis/blah'

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