Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Search peer-reviewed papers and research methodology guidance from your AI agent.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
LUNE_API_KEY, Authorization비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
이 주소는 요청 header에 키가 필요한데, 커넥터 추가 메뉴에서는 넣을 수 없어요. 대신 Claude Code, Cursor, VS Code를 쓰세요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"lune": {
"command": "npx",
"args": [
"-y",
"@retrograde-labs/lune-mcp-server"
],
"env": {
"LUNE_API_KEY": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add --transport http lune https://mcp.luneresearch.com --header 'Authorization: Bearer {api_key}'claude mcp add lune --env LUNE_API_KEY=your-value -- npx -y @retrograde-labs/lune-mcp-server실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"lune": {
"url": "https://mcp.luneresearch.com",
"headers": {
"Authorization": "Bearer {api_key}"
}
}
}
}프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"lune": {
"command": "npx",
"args": [
"-y",
"@retrograde-labs/lune-mcp-server"
],
"env": {
"LUNE_API_KEY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"lune": {
"type": "http",
"url": "https://mcp.luneresearch.com",
"headers": {
"Authorization": "Bearer {api_key}"
}
}
}
}프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"lune": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@retrograde-labs/lune-mcp-server"
],
"env": {
"LUNE_API_KEY": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 주소는 요청 header에 키가 필요한데, 커넥터 추가 메뉴에서는 넣을 수 없어요. 대신 Claude Code, Cursor, VS Code를 쓰세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
Authorization 비밀 HTTP header이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
도구 이름과 설명은 서버가 2026년 11월 6일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.
search_papers AI에게 내리는 지시처럼 보여요Searches full-text, peer-reviewed papers from top-tier venues. Use for questions about academic papers, research topics, literature reviews, surveys, “what's been published on X”, named methods, or any claim that should be backed by a peer-reviewed citation. Returns each paper's
search_papers_manyUse for a LITERATURE SWEEP or survey: a research question broad enough to need several angles, e.g. "what's been done on X", a related-work section, or a state-of-the-field summary. One call returns one merged, ranked list of the papers the angles found, with the passages that ma
get_paper_fulltextUse this when the user asks “what does the methods/results section say”, wants to quote a specific section, or when the abstract isn't enough to verify a claim. Heavy: only call once a paper looks relevant from `search_papers`, `search_related_papers`, or `get_paper_citations`. `
get_paper_citationsUse this when the user asks “what does this paper build on”, “what built on this”, traces influence chains, asks for follow-up work, or wants the lineage of an idea. `direction=cited_by` returns indexed papers that cite this one; `direction=cites` returns this paper's parsed refe
list_conferencesUse this when the user asks “what conferences does Lune track”, “is venue X covered”, or wants a category-level browse (e.g. AI/ML, security, databases, software/systems). Pass `category` as a keyword (`ai`, `security`, ...) to narrow; it matches the conference's research area.
get_conference_papersUse this when the user asks for papers from a specific conference (optionally a year), e.g. “most-cited NeurIPS 2024 papers”, “show me CCS 2025 accepted papers”, or “what's new in security at IEEE S&P this year”. `sort` is `recency` (newest first, default) or `citations` (most-ci
search_related_papersGiven a paper_id, return the most semantically similar papers by embedding distance, NOT by citation links. Use for “more papers like this one” / “adjacent work on the same topic”. For papers this one cites or that cite it, use `get_paper_citations` instead. Each hit carries meta
extract_from_papersPull a structured table out of up to 50 papers in ONE call: you define the columns (`fields`: each a snake_case `name`, a `type`, and an optional `description`) and an `instruction`, and the server reads each paper's full text and returns one typed row per paper. Use this when yo
verify_claimsFact-check 1 to 25 natural-language claims against Lune's peer-reviewed corpus in ONE call. For each claim the server retrieves the most relevant passages and an LLM judges the claim ONLY against those passages (never outside knowledge), returning one verdict per claim: `supporte
gather_evidenceUse for a multi-part research task when you need to know whether your gathered evidence is SUFFICIENT, what is still MISSING, and what to search next, without the tool writing the answer. Pass the goal in `task` and your first search angles in `queries`; the server runs one corpu
search_research_guidanceUse before recommending experimental design, ablation strategy, evaluation metrics, baselines, reproducibility, paper structure, related-work organisation, venue choice, response-to-reviewers, scientific writing, or methodology in general. Searches the Lune guidance corpus, curat
get_research_guidance_docUse this AFTER `search_research_guidance` when you need the full text of a guidance document (not just the matched excerpt), for example to quote a passage or follow a checklist end-to-end. Pass the `doc_id` from a search hit.
send_feedbackSends the user's feedback about Lune to the Lune team. Use it when the user says something about Lune itself (papers it missed, results that did not fit, an error, something that helped, an idea): offer to pass it on, show the user the message you would send, and call this only a
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
게시자(luneresearch.com)가 저장소 소유자(RetrogradeLabs)가 아니에요. 다른 사람이 등록했을 수 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
717ms 만에 응답(HTTP 200)
로그인 필요 없음
도구 설명 1개에 AI에게 지시하는 것처럼 보이는 글이 있어요. 설치하기 전에 아래 내용을 읽어 보세요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 3개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: LUNE_API_KEY, Authorization
둘 다 가능해요. 내 컴퓨터에 설치해도 되고, 클라우드 버전에 연결해도 돼요.
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(3.0.1)은 그저께 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되기 때문에, 원격 MCP 서버를 지원하는 앱(예: 개발자 모드의 ChatGPT)에서도 쓸 수 있어요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
The official Lune Research MCP server. It lets an AI agent search the full text of papers from top-tier venues, follow citations, and look up curated research-methodology guidance, so its answers can cite each paper by title, authors and venue.
Hosted (recommended). Add this URL to any client that speaks Streamable HTTP:
https://mcp.luneresearch.com
A client that supports MCP authorization signs you in through the browser, so there is no token to paste or rotate. In Claude Code:
claude mcp add --transport http --scope user lune https://mcp.luneresearch.com
Then run /mcp inside Claude Code, choose lune, and sign in through the browser tab that opens.
A client without OAuth support sends a Lune access key in the Authorization header instead. Create one on the Credentials page: open API keys and click New key. This request lists the tools, which makes it a quick way to check a key. It reads the key from LUNE_API_KEY, set from your password manager or a file only you can read:
printf 'Authorization: Bearer %s\n' "$LUNE_API_KEY" |
curl https://mcp.luneresearch.com \ -H @- \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
The key reaches curl on its input, so it stays out of your shell history and the process list.
Setup notes for specific apps are in the docs: web AI apps such as ChatGPT, Claude and Perplexity, and local AI agents such as Cursor, VS Code and Codex.
Local stdio. For clients that only speak stdio, run the package directly and hand it an access key. It needs Node.js 22 or newer:
{
"mcpServers": { "lune": { "command": "npx", "args": ["-y", "@retrograde-labs/lune-mcp-server"], "env": { "LUNE_API_KEY": "lune_your_access_key" } } } }
The server reads LUNE_API_KEY from the environment and writes diagnostics to stderr, never stdout, so JSON-RPC framing stays intact.
Thirteen tools. Most follow a prefix: search_* finds candidates, get_* retrieves something you already have a handle on, and list_* browses. The hosted endpoint also offers request_capability, once Lune has confirmed the user has not opted out of its analytics: an agent calls it to tell Lune about a capability it needed and could not find, and its reply says whether Lune accepted the request. The stdio package does not include it.
Finding papers
| Tool | What it does |
|---|---|
search_papers | Hybrid vector + BM25 search over the corpus |
search_papers_many | Many query variants in one call, merged by reciprocal rank fusion |
search_related_papers | The nearest neighbors of a paper you already have |
list_conferences | Indexed venues, optionally filtered by category |
get_conference_papers | One venue's papers, paginated |
Reading them
| Tool | What it does |
|---|---|
get_paper_fulltext | Parsed full text, as markdown or JSON |
get_paper_citations | The citation graph, in either direction |
Working across many at once
| Tool | What it does |
|---|---|
extract_from_papers | Pull the same structured fields out of a set of papers |
verify_claims | Check each claim against the corpus, with a verbatim quote when one exists |
gather_evidence | Judge whether the evidence is sufficient yet, and name what is missing |
Research methodology
| Tool | What it does |
|---|---|
search_research_guidance | The curated methodology and reproducibility corpus |
get_research_guidance_doc | The full text of one guidance document |
Feedback
| Tool | What it does |
|---|---|
send_feedback | Passes the user's feedback about Lune to the team, once the user agrees |
Six prompts, which many MCP clients list as slash commands. Each one hands the agent a brief for a common research task and names the tools to call, so the task takes one command instead of a plan you have to spell out.
| Prompt | What it does | Arguments |
|---|---|---|
/literature_review | Survey a topic: the main themes, foundational and recent work, and open gaps | topic (+ venues, since_year) |
/find_related_work | Read your abstract, then find the prior work to cite and distinguish yourself from | abstract (+ venues) |
/compare_papers | Build a comparison table across papers, read out of their full text | topic (+ columns) |
/verify_draft | Check each claim in a draft, with a verbatim quote when one exists | draft |
/trace_citations | Trace a paper's lineage: what it stands on, what stands on it | paper |
/research_methodology | Grounded advice on experiment design, ablations, evaluation, rebuttals, venues | question |
The hosted endpoint answers discovery (initialize, tools/list, prompts/list and resources/list) without a credential, so an agent can see the tools before anyone signs in. Running a tool takes one credential, as Authorization: Bearer . The stdio package reads an access key from LUNE_API_KEY instead. The credential is one of these:
lune_...), created on the Credentials page under API keys. Works on both transports.An OAuth connection always bills the signed-in person's personal team, drawing on its plan, daily allowance and credits. An access key bills the team it was created in, so a key is how a shared team's plan pays for an agent. How requests are counted is in quotas and billing.
Most MCP clients run this flow on their own. If you are building a connector, the details follow. auth.md walks through each request with curl.
A tool call without a credential answers 401 with this challenge:
WWW-Authenticate: Bearer resource_metadata="https://mcp.luneresearch.com/.well-known/oauth-protected-resource", scope="papers:read guidance:read account:read"
The protected-resource document it points to names the authorization server in authorization_servers[0]. That server is https://api.luneresearch.com, the authorization server for MCP connectors. It publishes RFC 8414 metadata at https://api.luneresearch.com/.well-known/oauth-authorization-server and has no OpenID Connect discovery document.
| Endpoint | URL |
|---|---|
| Issuer | https://api.luneresearch.com |
| Authorization | https://api.luneresearch.com/oauth/authorize |
| Token | https://api.luneresearch.com/oauth/token |
| Client registration (RFC 7591) | https://api.luneresearch.com/oauth/register |
| Revocation (RFC 7009) | https://api.luneresearch.com/oauth/revoke |
| JWKS | https://api.luneresearch.com/.well-known/jwks.json |
| Authorization server metadata | https://api.luneresearch.com/.well-known/oauth-authorization-server |
| Protected resource metadata | https://mcp.luneresearch.com/.well-known/oauth-protected-resource |
The flow:
client_id; there are no pre-registered client IDs. Clients are public, so there is no secret and the token endpoint auth method is none. A platform that cannot register on the fly can do it once by hand and keep the client_id: curl -X POST https://api.luneresearch.com/oauth/register \
-H "Content-Type: application/json" \ -d '{"client_name": "My connector", "redirect_uris": ["https://example.com/oauth/callback"]}'
response_type=code, client_id, redirect_uri, scope, state, code_challenge, code_challenge_method=S256 and resource. PKCE with S256 is required, and so are state and scope.redirect_uri with code, state and iss=https://api.luneresearch.com (RFC 9207). Check that state is the one you sent and that iss equals the issuer. If the person declines, the redirect carries error=access_denied with the same state and iss.grant_type=authorization_code, code, redirect_uri, client_id, code_verifier and resource to the token endpoint as application/x-www-form-urlencoded.Authorization: Bearer . Once the token expires the server answers 401 with error="invalid_token". To refresh, POST grant_type=refresh_token and refresh_token to the token endpoint.Requirements and limits:
papers:read guidance:read account:read, the scopes the protected-resource document lists. Together they cover every tool.resource=https://mcp.luneresearch.com on both the authorization request and the token request. Without it the access token is bound to your client_id instead of the server, and requests on protocol version 2026-07-28 fail with 401 invalid_token, which the person sees as a sign-in loop. Older protocol versions still accept such a token, but only for a transition period.https, http on 127.0.0.1, [::1] or localhost, or a private-use scheme such as cursor://, and must not contain a fragment. The authorization request must repeat a registered URI exactly, port included.expires_in: 3600).앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요