Skip to main content
Glama
search.handlers.ts3.97 kB
import { NaverSearchClient } from "../clients/naver-search.client.js"; import { NaverLocalSearchParams } from "../schemas/search.schemas.js"; import { SearchArgs } from "../schemas/search.schemas.js"; import { SearchArgsSchema } from "../schemas/search.schemas.js"; // 클라이언트 인스턴스 const client = NaverSearchClient.getInstance(); export const searchToolHandlers: Record<string, (args: any) => Promise<any>> = { search_webkr: (args) => { console.error("search_webkr called with args:", JSON.stringify(args, null, 2)); return handleWebKrSearch(SearchArgsSchema.parse(args)); }, search_news: (args) => { console.error("search_news called with args:", JSON.stringify(args, null, 2)); return handleNewsSearch(SearchArgsSchema.parse(args)); }, search_blog: (args) => { console.error("search_blog called with args:", JSON.stringify(args, null, 2)); return handleBlogSearch(SearchArgsSchema.parse(args)); }, search_shop: (args) => { console.error("search_shop called with args:", JSON.stringify(args, null, 2)); return handleShopSearch(SearchArgsSchema.parse(args)); }, search_image: (args) => { console.error("search_image called with args:", JSON.stringify(args, null, 2)); return handleImageSearch(SearchArgsSchema.parse(args)); }, search_kin: (args) => { console.error("search_kin called with args:", JSON.stringify(args, null, 2)); return handleKinSearch(SearchArgsSchema.parse(args)); }, search_book: (args) => { console.error("search_book called with args:", JSON.stringify(args, null, 2)); return handleBookSearch(SearchArgsSchema.parse(args)); }, search_encyc: (args) => { console.error("search_encyc called with args:", JSON.stringify(args, null, 2)); return handleEncycSearch(SearchArgsSchema.parse(args)); }, search_academic: (args) => { console.error("search_academic called with args:", JSON.stringify(args, null, 2)); return handleAcademicSearch(SearchArgsSchema.parse(args)); }, search_local: (args) => { console.error("search_local called with args:", JSON.stringify(args, null, 2)); return handleLocalSearch(args); }, search_cafearticle: (args) => { console.error("search_cafearticle called with args:", JSON.stringify(args, null, 2)); return handleCafeArticleSearch(SearchArgsSchema.parse(args)); }, }; /** * 전문자료 검색 핸들러 */ export async function handleAcademicSearch(params: SearchArgs) { return client.searchAcademic(params); } /** * 도서 검색 핸들러 */ export async function handleBookSearch(params: SearchArgs) { return client.search("book", params); } /** * 지식백과 검색 핸들러 */ export async function handleEncycSearch(params: SearchArgs) { return client.search("encyc", params); } /** * 이미지 검색 핸들러 */ export async function handleImageSearch(params: SearchArgs) { return client.search("image", params); } /** * 지식iN 검색 핸들러 */ export async function handleKinSearch(params: SearchArgs) { return client.search("kin", params); } /** * 지역 검색 핸들러 */ export async function handleLocalSearch(params: NaverLocalSearchParams) { return client.searchLocal(params); } /** * 뉴스 검색 핸들러 */ export async function handleNewsSearch(params: SearchArgs) { return client.search("news", params); } /** * 블로그 검색 핸들러 */ export async function handleBlogSearch(params: SearchArgs) { return client.search("blog", params); } /** * 쇼핑 검색 핸들러 */ export async function handleShopSearch(params: SearchArgs) { return client.search("shop", params); } /** * 카페글 검색 핸들러 */ export async function handleCafeArticleSearch(params: SearchArgs) { return client.search("cafearticle", params); } export async function handleWebKrSearch(args: SearchArgs) { const client = NaverSearchClient.getInstance(); return await client.search("webkr", args); }

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/isnow890/naver-search-mcp'

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