search_academic
Search scholarly articles and academic resources on Naver using customizable parameters like query, sort method, and result display settings.
Instructions
Perform a search on Naver Academic. (네이버 전문자료 검색)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| display | No | Number of results to display (default: 10) | |
| query | Yes | Search query | |
| sort | No | Sort method (sim: similarity, date: date) | |
| start | No | Start position of search results (default: 1) |
Implementation Reference
- src/handlers/search.handlers.ts:57-62 (handler)Core handler function that executes the search_academic tool by parsing arguments and calling the Naver academic search client method./** * 전문자료 검색 핸들러 */ export async function handleAcademicSearch(params: SearchArgs) { return client.searchAcademic(params); }
- src/index.ts:222-235 (registration)MCP server registration of the search_academic tool, including description, input schema, and invocation of the handler.server.registerTool( "search_academic", { description: "🎓 Search academic papers, research documents, and scholarly content. Access Korean academic resources, research papers, theses, and professional publications. For recent publications or current research, use get_current_korean_time first. (네이버 전문자료 검색 - 학술 논문과 전문 자료, 최근 발표나 현재 연구를 찾을 때는 먼저 get_current_korean_time으로 현재 시간을 확인하세요)", inputSchema: SearchArgsSchema.shape, }, async (args) => { const result = await searchToolHandlers.search_academic(args); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }], }; } );
- src/schemas/search.schemas.ts:33-41 (schema)Zod input schema used for validating arguments to the search_academic tool.export const SearchArgsSchema = z.object({ query: z.string().describe("검색어"), display: z.number().optional().describe("한 번에 가져올 결과 수 (기본 10)"), start: z.number().optional().describe("검색 시작 위치 (기본 1)"), sort: z .enum(["sim", "date"]) .optional() .describe("정렬 방식 (sim: 유사도, date: 날짜순)"), });
- Client helper method that makes the HTTP GET request to Naver's academic document search API endpoint (/doc)./** * 전문자료 검색 메서드 */ async searchAcademic( params: NaverDocumentSearchParams ): Promise<NaverDocumentSearchResponse> { return this.get(`${this.searchBaseUrl}/doc`, params); }