Skip to main content
Glama
ClawyPro

Clawy MCP Server

by ClawyPro

semantic_scholar_search

Search academic papers on Semantic Scholar to find research by topic, author, or keyword, returning titles, abstracts, citations, and PDF links.

Instructions

Search academic papers on Semantic Scholar. Find research papers by topic, author, or keyword. Returns titles, abstracts, citation counts, and PDF links.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query for academic papers
limitNoNumber of results (default 10, max 100)
yearNoPublication year filter (e.g., '2024', '2023-2025')
fields_of_studyNoField filter (e.g., ['Computer Science', 'Medicine'])
open_access_onlyNoOnly return open access papers

Implementation Reference

  • Generic MCP tool handler registration that executes the tool logic via `gatewayRequest`.
    server.tool(
      tool.name,
      tool.description,
      tool.inputSchema.shape,
      async (params) => {
        const method = tool.method || "POST";
        const result = await gatewayRequest(method, tool.endpoint, params as Record<string, unknown>);
    
        if (result.error) {
          return {
            content: [{ type: "text" as const, text: `Error (${result.status}): ${result.error}` }],
            isError: true,
          };
        }
    
        const text = typeof result.data === "string"
          ? result.data
          : JSON.stringify(result.data, null, 2);
    
        return {
          content: [{ type: "text" as const, text }],
        };
      },
    );
  • Input schema definition for the `semantic_scholar_search` tool.
    inputSchema: z.object({
      query: z.string().describe("Search query for academic papers"),
      limit: z.number().optional().describe("Number of results (default 10, max 100)"),
      year: z.string().optional().describe("Publication year filter (e.g., '2024', '2023-2025')"),
      fields_of_study: z.array(z.string()).optional()
        .describe("Field filter (e.g., ['Computer Science', 'Medicine'])"),
      open_access_only: z.boolean().optional().describe("Only return open access papers"),
    }),
  • Registration of the `semantic_scholar_search` tool definition.
    export const semanticScholarTools: ToolDef[] = [
      {
        name: "semantic_scholar_search",
        description: "Search academic papers on Semantic Scholar. Find research papers by topic, author, or keyword. Returns titles, abstracts, citation counts, and PDF links.",
        inputSchema: z.object({
          query: z.string().describe("Search query for academic papers"),
          limit: z.number().optional().describe("Number of results (default 10, max 100)"),
          year: z.string().optional().describe("Publication year filter (e.g., '2024', '2023-2025')"),
          fields_of_study: z.array(z.string()).optional()
            .describe("Field filter (e.g., ['Computer Science', 'Medicine'])"),
          open_access_only: z.boolean().optional().describe("Only return open access papers"),
        }),
        endpoint: "/v1/semantic-scholar/search",
      },
    ];

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/ClawyPro/clawy-mcp-server'

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