Scholar MCP for Cursor
io.github.pvliesdonk/scholar-mcp
FastMCP server for scholarly papers, patents, books and standards with docling PDF conversion
client:Cursor
transport:stdio
runtime:pypi
Install Scholar MCP in Cursor
~/.cursor/mcp.json · windows: %USERPROFILE%\.cursor\mcp.json
{
"mcpServers": {
"scholar-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"pvliesdonk-scholar-mcp"
],
"env": {
"SCHOLAR_MCP_KV_STORE_URL": "<SCHOLAR_MCP_KV_STORE_URL>",
"SCHOLAR_MCP_TOOLS_ALLOW": "<SCHOLAR_MCP_TOOLS_ALLOW>",
"SCHOLAR_MCP_TOOLS_DENY": "<SCHOLAR_MCP_TOOLS_DENY>",
"SCHOLAR_MCP_SERVER_NAME": "<SCHOLAR_MCP_SERVER_NAME>",
"SCHOLAR_MCP_INSTANCE_DESCRIPTION": "<SCHOLAR_MCP_INSTANCE_DESCRIPTION>",
"SCHOLAR_MCP_INSTRUCTIONS_EXTRA": "<SCHOLAR_MCP_INSTRUCTIONS_EXTRA>",
"SCHOLAR_MCP_INSTRUCTIONS": "<SCHOLAR_MCP_INSTRUCTIONS>",
"FASTMCP_LOG_LEVEL": "<FASTMCP_LOG_LEVEL>",
"FASTMCP_ENABLE_RICH_LOGGING": "<FASTMCP_ENABLE_RICH_LOGGING>",
"SCHOLAR_GITHUB_TOKEN": "<SCHOLAR_GITHUB_TOKEN>",
"SCHOLAR_MCP_READ_ONLY": "<SCHOLAR_MCP_READ_ONLY>",
"SCHOLAR_MCP_S2_API_KEY": "<SCHOLAR_MCP_S2_API_KEY>",
"SCHOLAR_MCP_DOCLING_URL": "<SCHOLAR_MCP_DOCLING_URL>",
"SCHOLAR_MCP_VLM_API_URL": "<SCHOLAR_MCP_VLM_API_URL>",
"SCHOLAR_MCP_VLM_API_KEY": "<SCHOLAR_MCP_VLM_API_KEY>",
"SCHOLAR_MCP_VLM_MODEL": "<SCHOLAR_MCP_VLM_MODEL>",
"SCHOLAR_MCP_CACHE_DIR": "<SCHOLAR_MCP_CACHE_DIR>",
"SCHOLAR_MCP_CONTACT_EMAIL": "<SCHOLAR_MCP_CONTACT_EMAIL>",
"SCHOLAR_MCP_EPO_CONSUMER_KEY": "<SCHOLAR_MCP_EPO_CONSUMER_KEY>",
"SCHOLAR_MCP_EPO_CONSUMER_SECRET": "<SCHOLAR_MCP_EPO_CONSUMER_SECRET>",
"SCHOLAR_MCP_GOOGLE_BOOKS_API_KEY": "<SCHOLAR_MCP_GOOGLE_BOOKS_API_KEY>",
"SCHOLAR_MCP_JOBS_SOFT_DEADLINE_S": "<SCHOLAR_MCP_JOBS_SOFT_DEADLINE_S>",
"SCHOLAR_MCP_JOBS_RESULT_TTL_S": "<SCHOLAR_MCP_JOBS_RESULT_TTL_S>",
"SCHOLAR_MCP_JOBS_MAX_PER_SUBJECT": "<SCHOLAR_MCP_JOBS_MAX_PER_SUBJECT>"
}
}
}
}
Use .cursor/mcp.json in a project root instead to scope it to that project. Cursor merges both. Cursor docs