Skip to main content
Glama
rubatoyd

scienceon-mcp

by rubatoyd

scienceON-mcp

CI Release Downloads

📈 사용량 — 최근 14일 조회 6회(고유 3) · 클론 144회(고유 78) · 릴리스 자산 누적 다운로드 113

일별 클론·조회 추이

2026-09-06 자동 갱신 · 전체 이력은 docs/usage.csv. GitHub 트래픽 통계는 14일 창만 제공하므로 이 저장소가 매일 찍어 누적한다.

KISTI ScienceON OpenAPI 문헌 검색·메타데이터 수집기 — MCP 서버 + CLI. 자기 ScienceON API 키만 발급받으면 Claude(또는 CLI)에서 국내외 논문·보고서 서지 메타데이터를 검색·수집할 수 있다.

An MCP server + CLI for KISTI ScienceON OpenAPI. Bring your own API key and let Claude search & collect academic literature metadata in any project.

기능

  • 검색 — 논문(ARTI)·보고서(REPORT) 등 서지 메타데이터. 다중쿼리 합집합 · 와일드카드(*) · 연도범위 · contains/lang 후처리 필터

  • 상세 — 제어번호(CN)로 초록·서지 전체

  • 다중그룹 수집 — 그룹마다 다른 검색 전략을 걸어 한 코퍼스로 합침

  • 내보내기 — xlsx · csv · json · sqlite

  • 두 가지 사용법 — Claude 에서 도구 호출(MCP) · 터미널 배치(CLI), 같은 코어 공유

지원 티켓: ARTI 논문 · REPORT 보고서 · ATT 동향 · RESEARCHER 연구자 · ORGAN 연구기관 (계정 구독 범위에 따름)

Related MCP server: KISTI-MCP

API 키 발급

  1. ScienceON 회원가입·로그인

  2. API Gateway → 인증키 발급 신청 → 승인 후 인증키·Client ID 발급

  3. 인증키관리에서 신청 MAC 주소 등록, IP관리에서 호출 PC 의 공인 IP 등록

  4. 사용할 서비스 콘텐츠(티켓) 체크

자격증명은 MCP 설정의 env 블록 또는 .env(.env.example 복사)로 전달한다. 코드·커밋·로그에는 넣지 않는다.

설치

Claude Desktop

.mcpb 원클릭릴리스에서 받아 더블클릭/드래그 → 설치 창에서 인증키·Client ID·MAC 입력.

자산

특징

scienceon-mcp-win-x64.mcpb / …-macos-arm64.mcpb / …-linux-x64.mcpb

자체완결 — Python·uv 불필요

scienceon-mcp.mcpb

경량. 실행에 uv 필요

수동 configclaude_desktop_config.json:

{
  "mcpServers": {
    "scienceon": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/rubatoyd/scienceON-mcp", "scienceon-mcp"],
      "env": {
        "SCIENCEON_AUTH_KEY": "발급_32자리_인증키",
        "SCIENCEON_CLIENT_ID": "발급_client_id",
        "SCIENCEON_MAC_ADDRESS": "AA-BB-CC-DD-EE-FF"
      }
    }
  }
}

Claude Code

claude mcp add scienceon -- uvx --from "git+https://github.com/rubatoyd/scienceON-mcp" scienceon-mcp

첫 실행 시 빌드(수 초), 이후 캐시. 최신 반영은 uvx --refresh ….

다른 MCP 클라이언트

표준 stdio MCP 서버이므로 MCP 를 지원하는 에이전트면 그대로 붙는다 — Cursor · Windsurf · Cline · Zed · VS Code Copilot(agent mode) · OpenAI Agents SDK · 자체 클라이언트 등. 위 command/args/env 3요소를 각 클라이언트 설정에 옮기면 된다.

전송 방식

scienceon-mcp                                # stdio (기본)
scienceon-mcp --transport streamable-http    # http://127.0.0.1:8000/mcp
scienceon-mcp --transport sse --port 9000    # http://127.0.0.1:9000/sse

환경변수: SCIENCEON_MCP_TRANSPORT · SCIENCEON_MCP_HOST · SCIENCEON_MCP_PORT.

MCP 도구

도구

하는 일

scienceON_status

연결/토큰 점검 (+공인 IP — E4006 진단용)

scienceON_search

문헌 검색 — 다중쿼리 · 와일드카드 · 연도범위 · contains · lang

scienceON_detail

제어번호(CN)로 초록·서지 전체

scienceON_export

대량 수집 → xlsx/csv/json/sqlite 저장

scienceON_collect_groups

다중 검색그룹을 한 코퍼스로 합쳐 수집

다중그룹 수집

단일 검색어로는 만들 수 없는 코퍼스가 있다. 변별력 있는 단어는 전체(BI)로 그대로 검색하고, 색인이 안 되는 토큰은 제목(TI) 와일드카드 + contains 후처리로 정밀화하는 식으로 그룹마다 다른 전략을 걸어 합집합을 만든다.

[
  { "field": "BI", "terms": ["경계선지능", "경계선 지능"] },
  { "field": "TI", "terms": ["느린*"], "contains": ["느린학습자", "느린 학습자"] }
]

그룹 키: field(BI/TI/AB/AU/KW) · terms · contains · lang · max. save: false 로 부르면 저장 없이 결과를 미리 볼 수 있다(응답에는 앞 100건만).

알아둘 제한

수집량이 max_records 와 정확히 일치하면 거의 항상 절단된 것이다. 수집 도구는 total 과 플래그를 함께 반환하므로 절단 여부를 확인할 수 있다. 절단된 결과를 완전한 코퍼스로 오인하면 후속 분석이 통째로 무효가 된다.

ScienceON 이 보고하는 total 은 실제로 받을 수 있는 건수보다 클 수 있다. 그래서 두 상황을 다른 플래그로 구분한다.

플래그

대처

truncated

max_records 상한에 걸렸다

상한을 올려 재수집하면 늘어난다

total_mismatch

끝까지 페이징했는데 total 에 못 미쳤다

상한을 올려도 늘지 않는다. 회수량을 확정 수치로 쓴다

meta.union_upper_bound 는 실행한 검색축들의 total 합, 즉 합집합의 상한이다(중복 미보정).

다중 페이지 질의는 호출마다 결과가 미세하게 달라진다. 단일 페이지 질의는 안정적이다. total 에 못 미치고 상한도 아니면 한 번 더 훑어 합집합을 취한다(meta.sweeps 가 1보다 크면 보정된 것).

보정이 걸린 축은 전체를 재페이징하므로 그만큼 요청이 늘어난다. 대규모 수집에서 부담되면 scienceON_search · scienceON_export · scienceON_collect_groupsretry_incomplete=0 으로 끈다 — 대신 결손이 남고 total_mismatch 로만 표시된다.

출력 파일명은 정규화된다. name 을 지정하지 않으면 검색어가 그대로 파일명이 되므로, 경로 구분자·..·윈도 금지문자는 제거되고 결과는 항상 out_dir 안에만 저장된다. 한글 파일명은 그대로 보존된다.

서버측 파이프 OR(|)는 쓰지 않는다. 공백이 든 용어에서 토큰이 분리돼 과대매칭되므로, 용어별 개별 검색 후 CN 합집합을 취한다.

Claude 앱 안에서 검색해 설치할 수는 없다. 공식 MCP 레지스트리 등재와 Claude Desktop 인앱 커넥터 디렉터리는 별개이고 자동 동기화되지 않는다.

도구 설명이 한국어다. 한국어를 다루는 모델이어야 도구 선택이 정확하다.

mcp SDK 는 1.x 로 고정된다(mcp>=1.2.0,<2). 2.0 에서 mcp.server.fastmcp 가 제거되어 상한이 없으면 기동에 실패한다.

CLI

uv run scienceon status
uv run scienceon search --target ARTI --query "인공지능" --year 2015~2024 --rows 100
uv run scienceon collect --config config/search.example.yaml

로컬 개발은 clone 후 uv sync. 클라우드 동기화 폴더(OneDrive 등)라면 venv 를 폴더 밖에 두기를 권한다(UV_PROJECT_ENVIRONMENT).

문서

보안 / 네트워크

  • 자격증명은 .env 또는 MCP env 블록으로만 전달한다. .env 와 토큰 캐시는 gitignore 대상이다.

  • 교육망·사내망 SSL 인터셉션 환경에서는 truststore 로 OS 신뢰저장소를 사용해 통과한다 (TLS 검증을 끄지 않는다). 정식 의존성이라 .mcpb 설치본에도 적용된다. 비활성은 SCIENCEON_OS_TRUST=0.

  • 자격증명 오류·타임아웃 등 어떤 예외도 도구 밖으로 새지 않는다(항상 {"error": …} 형태로 반환).

  • HTTP 전송에는 인증이 없다. 기본 바인드는 루프백(127.0.0.1)이다. --host 0.0.0.0 으로 외부에 열면 자격증명을 가진 서버가 그대로 노출되므로 신뢰된 망에서만 쓴다.

  • 호출은 throttle(기본 0.5s)·지수 백오프를 건다. 429 가 나면 throttle 을 올린다.

관련 프로젝트

  • ansua79/scienceon-mcp — KISTI 개발자의 ScienceON MCP. ScienceON 전 API(논문·특허·보고서·동향·연구자·기관·기술트렌드·뉴스 등 17개 도구)를 폭넓게 노출하고 GUI 설치기도 제공한다. 폭넓은 탐색이 목적이면 이 도구를 권한다.

  • rubatoyd/KCI_openAPI — 한국연구재단 KCI 수집기(자매 프로젝트).

본 프로젝트는 연구용 자료수집·코퍼스 구축에 특화되어 있다 — 다중쿼리 합집합 · 와일드카드 · 후처리 필터 · 다중그룹 수집 · 대량 내보내기 · config 재현 수집.

라이선스

MIT © Yeondong Yang. 본 프로젝트는 KISTI 의 비공식 클라이언트이며 제휴 관계가 없다. ScienceON 데이터 이용은 KISTI 약관·트래픽 정책을 따른다.

Available Tools

5 tools
scienceON_collect_groupsA

여러 검색 그룹을 한 코퍼스로 합쳐 수집(CN 중복제거). config 파일 없이 대화형으로.

그룹마다 다른 필드·후처리 필터를 걸 수 있어, 단일 검색어로는 못 만드는 코퍼스를 만든다. 각 group = {"field": "BI", "terms": [...], "contains": [...], "lang": [...], "max": N} field : BI(전체)·TI(제목)·AB(초록)·AU(저자)·KW(키워드) terms : 그 필드로 개별 검색할 용어들(와일드카드 * 가능) contains: 원본 전체필드 substring 후처리 필터(노이즈 제거, 대소문자 무시) lang : 허용 언어(예: ["한국어"]) — 국문 논문 한정 등 max : 그 그룹만의 상한(미지정 시 max_records)

예) 변별력 있는 단어는 BI 로 그대로, 색인 안 되는 토큰은 TI 와일드카드 + contains 로 정밀화: [{"field":"BI","terms":["경계선지능","경계선 지능"]}, {"field":"TI","terms":["느린*"],"contains":["느린학습자","느린 학습자"]}]

save=true(기본) 면 파일로 저장하고 경로를 반환한다. save=false 면 레코드를 직접 반환하되 응답 폭주를 막기 위해 앞 100건만 싣는다(meta 는 전량 기준).

⚠️ meta.truncated=true 면 상한에 걸려 잘린 것이다 — meta.union_upper_bound(그룹별 total 합) 위로 max_records 를 올려 재수집해야 코퍼스가 완결된다.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
saveNo
groupsYes
targetNoARTI
formatsNo
out_dirNo
year_toNo
year_fromNo
max_recordsNo
retry_incompleteNo

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the annotations by explaining key behavioral details: save=true writes a file and returns a path, while save=false returns records directly but only the first 100 ('앞 100건만 싣는다'). It also warns about meta.truncated and explains how to resolve truncation by raising max_records above meta.union_upper_bound. This provides actionable insight into side effects and output limits not present in the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized and front-loaded with the core purpose. It uses bullet-like explanations for the group structure, a concrete example, and a clearly marked warning. Every sentence adds value; no filler. Despite being longer than average, it remains scannable and information-dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (10 parameters, nested groups) and the absence of an output schema, the description does a solid job of explaining the main flow, output modes, and truncation semantics. It falls slightly short on fully documenting every parameter, but the core behavior is well covered and the example clarifies the most complex part.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description must compensate. It thoroughly explains the 'groups' parameter with its nested fields (field, terms, contains, lang, max) and provides a JSON example. It also clarifies 'save' behavior. However, other parameters like target, formats, out_dir, year_from, year_to, and retry_incomplete are left unexplained, though some are self-explanatory from their names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: merging multiple search groups into a single corpus with deduplication ('여러 **검색 그룹**을 한 코퍼스로 합쳐 수집(CN 중복제거)'). It uses a specific verb (collect/merge) and resource (search groups into corpus), and this clearly distinguishes it from siblings like scienceON_search, scienceON_export, and scienceON_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the intended use case: building corpora that cannot be created with a single query ('단일 검색어로는 못 만드는 코퍼스를 만든다'). It provides a concrete example with different fields and filters. It does not explicitly mention alternative tools or when not to use it, but the use case is clear from the contrast with single-query search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scienceON_detailB
Read-only

제어번호(CN)로 상세 서지·초록 조회.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetNoARTI
control_noYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, signaling a safe read operation. The description adds no additional behavioral context such as return format, scoping constraints, or side effects; with the annotation coverage, this meets the minimum but does not go further.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise Korean sentence with no redundant wording. It is appropriately sized for the tool's simplicity, though it lacks structure and would benefit from a brief usage note.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, and the description covers the core purpose and primary parameter. However, it omits any explanation of the target parameter, return behavior, and does not position the tool against its siblings, leaving noticeable gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It provides meaning for control_no as the lookup key, but says nothing about the target parameter (default 'ARTI'), leaving a significant gap in parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves detailed bibliographic/abstract information by control number (CN). It uses a specific verb and resource, and the CN-based lookup distinguishes it from the sibling search tool, though it does not explicitly name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: this is the tool to use when you have a control number and need detailed record data. However, there is no explicit guidance on when to use this versus scienceON_search or other siblings, nor any stated prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scienceON_exportA

검색 결과를 대량 수집해 파일로 저장(xlsx/csv/json/sqlite). 저장 경로 반환.

queries=[...] 여러 용어 개별검색 후 CN 합집합. contains=[...] 후처리 필터, lang=["한국어"] 국내한정. out_dir 미지정 시 사용자 홈의 scienceon-output/ 에 저장(MCP는 임의 cwd에서 기동).

⚠️ max_records(기본 500)는 조용히 자르지 않는다 — 상한에 걸리면 meta.truncated=true 와 warning 이 붙는다. meta.union_upper_bound 는 실행한 검색축들의 total 합(합집합 상한)이므로, 절단됐다면 max_records 를 그 위로 올려 재수집해야 코퍼스가 완결된다. 수집량이 max_records 와 정확히 일치하면 거의 항상 절단이다.

ParametersJSON Schema
NameRequiredDescriptionDefault
langNo
nameNo
fieldNoBI
queryNo
targetNoARTI
formatsNo
out_dirNo
queriesNo
year_toNo
containsNo
year_fromNo
max_recordsNo
retry_incompleteNo

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint=false, openWorldHint=true), the description discloses crucial traits: max_records does not silently truncate but sets meta.truncated=true with a warning, meta.union_upper_bound is described, and out_dir defaults to user home scienceon-output/ due to arbitrary cwd. This is high-value behavioral context not visible in structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and uses line breaks and a warning block to organize details. The warning about max_records is detailed but earns its place because it prevents user misunderstanding. It is slightly dense but remains scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 13 parameters and no output schema, the description covers important behavioral warnings (truncation, return meta fields, out_dir default) but omits explanations for many parameters and does not fully specify the return structure beyond the path and meta fields. It is helpful but incomplete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It explains queries, contains, lang, out_dir, and max_records, but leaves many parameters unexplained: name, field, target, formats (though formats are inferred from file extensions), year_from, year_to, retry_incomplete, and query (singular). This is a significant gap for a 13-parameter tool with no schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '검색 결과를 대량 수집해 파일로 저장(xlsx/csv/json/sqlite). 저장 경로 반환.' This specifies the verb (collect, save), resource (search results), and output (file formats and path), which distinguishes it from siblings like search, status, detail, and collect_groups.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives concrete usage context: queries for multiple terms with union, contains as post-filter, lang for domestic-only, and out_dir behavior. While alternatives are not explicitly named, the description makes it evident this is for bulk export versus the sibling search tool. It lacks explicit 'when not to use' but provides sufficient context to select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scienceON_statusA
Read-only

ScienceON 연결/토큰 상태 점검. 실패 시 원인 힌트와 현재 공인 IP 를 반환.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes beyond the readOnlyHint and openWorldHint annotations by explaining that on failure it returns cause hints and the current public IP. This adds valuable behavioral context without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that immediately states the tool's purpose and failure behavior. No redundant or extraneous information is included.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only status check, the description covers the essential purpose and failure behavior. However, it does not specify what success returns (e.g., success status or token validity), which is a minor gap for a health-check tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so parameter semantics are trivially satisfied. The empty schema and lack of parameters mean the description does not need to explain parameter meaning; baseline 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies a clear action ('check ScienceON connection/token status') and resource, distinguishing it from sibling tools like scienceON_search or scienceON_detail. It also mentions the failure response, adding purpose specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied (checking status before or during interactions with ScienceON), but there is no explicit guidance on when to use this tool versus alternatives, nor any exclusions. The name and description make the primary use case evident, but no direct guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 3 tool updatesv0.5.1
    • AddedscienceON_collect_groups
    • ChangedscienceON_export1 field changed
      • addedInput schema / properties / retry_incomplete
        Added value: +{
        +  "default": 1,
        +  "title": "Retry Incomplete",
        +  "type": "integer"
        +}
    • ChangedscienceON_search1 field changed
      • addedInput schema / properties / retry_incomplete
        Added value: +{
        +  "default": 1,
        +  "title": "Retry Incomplete",
        +  "type": "integer"
        +}
  2. 8 tool updatesv0.2.0
    • Removedscienceon_detail
    • AddedscienceON_detail
    • Removedscienceon_export
    • AddedscienceON_export
    • Removedscienceon_search
    • AddedscienceON_search
    • Removedscienceon_status
    • AddedscienceON_status
  3. 4 tool updatesv0.1.0
    • First observedscienceon_detail
    • First observedscienceon_export
    • First observedscienceon_search
    • First observedscienceon_status

TDQS

A3.9/5.0
Disambiguation5/5

Each tool serves a distinct purpose: status check, single-record detail, regular search, bulk export, and grouped corpus collection. The descriptions are sufficiently detailed to prevent confusion, even where search and export overlap.

Naming Consistency4/5

All tools share the consistent 'scienceON_' prefix with snake_case names. The second part mixes nouns (status, detail) and verbs (search, export, collect_groups), but the pattern is predictable and readable.

Tool Count5/5

Five tools form a well-scoped set for a research literature search and retrieval server. Each tool addresses a distinct aspect of the workflow without unnecessary bloat.

Completeness4/5

The surface covers core operations: searching, retrieving details, bulk export, and grouped collection. Minor gaps exist (e.g., no direct DOI-based lookup), but agents can typically achieve full retrieval with the provided tools.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Integrates with KISTI's ScienceON, NTIS, and DataON APIs to search and retrieve scientific papers, patents, reports, national R\&D projects, and research data.
    15
    Creative Commons Attribution Non Commercial 4.0 International
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables academic literature collection and full-text downloading from multiple sources (CNKI, Elsevier, OpenAlex, etc.) via natural language commands.
    3
    MIT

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/rubatoyd/scienceon-mcp'

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