Skip to main content
Glama

과학 컴퓨팅 Agent Skills 데이터베이스

이것은 모델링, 계산화학, 밀도범함수이론, 분자동역학 및 과학 시각화를 위한 GitHub 오픈소스 Agent Skills 초기 스크리닝 데이터베이스입니다.

현재 저장소에는 실행 가능한 Scientific Skills Hub 0.1.0이 포함되어 있습니다: 42개 메인 라이브러리 전체 카탈로그 캐시, SQLite FTS5 검색, 중국어 상태 카드, FastAPI/Jinja/HTMX 웹 페이지, HTTP/stdio MCP, GitHub 우선 및 로컬 폴백, API Key, 외부 격리 후보 및 관리자 CLI. 라이선스 게이트를 통과한 Skill 콘텐츠만 배포하며, 어떤 Skill, 솔버 또는 과학 작업도 설치하거나 실행하지 않습니다.

현재 공개 베이스라인은 snapshots/2026-08-25-v6입니다. 동적 지표의 수집 시각은 2026-08-25T15:19:40Z입니다. 이후 Star, 설치 수, 유지보수 상태 또는 라이선스를 인용할 때는 해당 날짜를 명시하고 공식 발표 전에 갱신해야 합니다.

MCP 및 웹 실행

전체 오프라인 버전 다운로드

git clone https://github.com/liangj5413-cyber/scientific-skills-hub.git
cd scientific-skills-hub
uv sync --extra dev

저장소에는 42개 메인 라이브러리 Skill의 라이선스 캐시, 인덱스 및 출처 검증 정보가 포함되어 있습니다. 대형 모델, 과학 솔버, 바이너리 또는 외부 데이터셋은 포함하지 않습니다.

시작 및 검증

uv sync --extra dev
uv run scientific-skills-hub verify
uv run scientific-skills-hub doctor
uv run scientific-skills-hub serve

로컬 웹은 http://127.0.0.1:8765/이고, 원격 MCP 경로는 /mcp/입니다. 로컬 stdio MCP:

uv run scientific-skills-mcp

일반적인 stdio MCP 클라이언트 구성(경로를 사용자의 절대 경로로 바꾸세요):

{
  "mcpServers": {
    "scientific-skills-hub": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/scientific-skills-hub",
        "run",
        "scientific-skills-mcp"
      ]
    }
  }
}

로컬 stdio 모드는 API Key가 필요 없습니다. HTTP MCP를 외부에 직접 배포하는 경우 기본이 아닌 키, 권한이 0600인 환경 파일 및 신뢰할 수 있는 HTTPS를 사용하세요. 실제 .env를 커밋하거나 TLS 검증을 건너뛰지 마세요.

공개 웹과 기본 검색은 익명 접근을 허용합니다. HTTP MCP, 본문, 호환성 및 콘텐츠 번들은 Bearer API Key가 필요합니다. 관리자가 수동으로 발급합니다:

uv run scientific-skills-hub init-secrets
uv run scientific-skills-hub create-key --label xhs-user-001

전체 아키텍처 및 운영 설명은 docs/ARCHITECTURE.mddocs/OPERATIONS.md에 있습니다.

Related MCP server: skillet

런타임 데이터베이스

  • runtime/catalog.sqlite: 42개 공식 Skill, 42개 고정 커밋 버전, 296개 캐시 파일 레코드, 구조화된 태그, 의존성, 리스크, 상태 카드 및 FTS5.

  • runtime/objects/sha256/: 289개 중복 제거 콘텐츠 객체, 총 약 1.95MB 본문.

  • runtime/bundles/*/manifest.json: 42개 콘텐츠 번들 Manifest.

  • runtime/service.sqlite: 로컬 쓰기 가능 상태로 .gitignore에 포함되어 있으며, API Key 해시, 피드백 또는 레이트리밋 카운트를 커밋하지 않습니다.

  • runtime/quarantine/: 외부 unreviewed_external 후보로, 7일 후 휴지통을 통해 정리됩니다.

통합 가용성 상태 우선순위는: 메타데이터 전용, 전체 저장소 권장, 경로 변경 필요, 제한적 백엔드 필요, 직접 참조 가능입니다. 현재 42개 분포는 26개 직접 참조 가능, 10개 전체 저장소 권장, 3개 경로 변경 필요, 3개 제한적 백엔드 필요입니다.

MCP 도구

모델 선택 혼동을 피하기 위해 첫 버전은 8개 도구로 고정되었습니다: search_skills, get_skill_card, check_compatibility, get_skill_content, get_skill_bundle, diff_skill_versions, doctor, report_skill_issue. 또한 카탈로그/상태 카드/본문 Resources, 5개 빠른 Prompt 및 Skill ID/방법/도메인/소프트웨어/단계 매개변수 자동완성을 제공합니다.

현재 규모

  • 실제 SKILL.md 발견 및 검증: 149건

  • 엄격 후보 풀: 100건

  • 메인 라이브러리 선별: 42건

  • Xiaohongshu 첫 배치 후보: 15건

  • 건별 수동 재검토 완료 첫 배치 후보: 15건

  • 관련 생태계 프로젝트 부록: 38건

  • GitHub/경로 수집 오류: 0건

메인 라이브러리는 GitHub 현재 커밋에서 SKILL.md를 찾을 수 있는 Agent Skills만 수록합니다. 일반 과학 소프트웨어, 솔버, 워크플로 플랫폼, MCP Server 및 연구 에이전트 프로젝트는 생태계 부록에만 포함되며 위의 149, 100, 42 및 15개 Skill 통계에는 포함되지 않습니다.

빠른 진입점

  • snapshots/2026-08-25-v6/skills_catalog.xlsx: 수동 스크리닝에 적합하며 메인 라이브러리, 후보 100, 전체 발견, Xiaohongshu 첫 발행, 방법, 도메인, 소프트웨어, 단계 및 생태계 프로젝트 워크시트를 포함합니다.

  • snapshots/2026-08-25-v6/skills_catalog.sqlite: 정규화된 데이터베이스로, 복합 쿼리 및 향후 웹사이트/API 사용에 적합합니다.

  • snapshots/2026-08-25-v6/INDEX.md: 방법, 도메인, 소프트웨어, 프로세스 단계, 등급 및 백엔드 접근 조건별 탐색.

  • snapshots/2026-08-25-v6/SHORTLIST_XIAOHONGSHU.md: 15개 첫 발행 후보, 주제 각도, 수동 재검토 결론, 의존성 및 홍보 경계.

  • snapshots/2026-08-25-v6/ECOSYSTEM.md: 일반 소프트웨어, MCP Server, 워크플로 및 연구 에이전트 생태계 부록.

  • snapshots/2026-08-25-v6/REVIEW_SUMMARY.md: 스크리닝 수량, 방법/도메인 커버리지 및 증거 경계.

  • snapshots/2026-08-25-v6/MANIFEST.json: 입력 출처, 수량, 수집 시각, 모든 산출물 파일 SHA-256 및 바이트 수.

다차원 인덱스

방법

  • 모델링 및 구조 생성

  • 계산화학

  • 밀도범함수이론

  • 분자동역학

  • 시각화 소프트웨어

응용 도메인

  • 생물 및 의약

  • 배터리 및 전기화학

  • 촉매 및 표면/계면

  • 페로브스카이트 및 반도체

  • 금속 및 합금

  • 고분자 및 연성 물질

  • 다공성 재료

  • 일반 재료과학

  • 일반 과학 컴퓨팅

기타 인덱스

  • 소프트웨어 또는 백엔드: VASP, Gaussian, ORCA, CP2K, GROMACS, LAMMPS, pymatgen, ASE, RDKit, PyMOL 등.

  • 워크플로 단계: 시스템 준비, 입력 생성, 실행 오케스트레이션, 결과 파싱, 분석 및 후처리, 검증 및 품질 관리, 보고 및 시각화 등.

  • 인기도 및 품질: A, B, 관찰, 제외.

  • 접근 조건: 완전 오픈소스 로컬 도구, 상용 라이선스 필요, API 키/계정 필요, 제한적 백엔드 필요성이 입증되지 않음 등.

  • 출처 계보: 저장소, 커밋 SHA, Skill 경로, 콘텐츠 SHA-256, 동명 충돌 및 정확한 콘텐츠 중복 필드.

검색 의미론

  • 배터리 쿼리는 NCM, NCA, 삼원 양극재, 삼원 재료, 층상 산화물, 리튬이온 양극재, lithium-ion cathodelayered oxide 등의 동의어 표현을 인식합니다.

  • 쿼리가 VASP, Quantum ESPRESSO, CP2K 등 소프트웨어를 명시하면 소프트웨어 태그가 하드 제약이 되고 정확 일치 가중치를 받습니다. 예를 들어 VASP를 지정하면 Quantum ESPRESSO로만 태그된 항목은 반환되지 않습니다.

  • 일반 재료과학의 VASP Skill은 쿼리 시 '배터리 및 전기화학', '촉매 및 표면/계면', '금속 및 합금'으로 상속될 수 있으며, 일치 사유는 도메인 상속으로 명확히 표시됩니다. 데이터베이스의 원래 도메인 태그는 다시 쓰이지 않습니다.

  • 구조화된 필터 조건이 자연어 의도보다 우선합니다. 쿼리 텍스트와 소프트웨어 필터가 충돌하면 다른 백엔드로 암묵적으로 완화하지 않고 0건을 반환합니다.

SQLite 쿼리 예시

메인 라이브러리의 DFT Skill 나열:

SELECT s.skill_name, s.repo, s.repo_stars, s.screening_tier, s.skill_github_url
FROM main_skills AS s
JOIN skill_methods AS m USING (skill_id)
WHERE m.value = '密度泛函理论'
ORDER BY CAST(s.repo_stars AS INTEGER) DESC;

배터리 도메인에서 상용 라이선스 또는 외부 계정을 확인해야 하는 메인 라이브러리 항목 찾기:

SELECT DISTINCT s.skill_name, s.backend_access, s.manual_dependency_note
FROM main_skills AS s
JOIN skill_domains AS d USING (skill_id)
WHERE d.value = '电池与电化学'
  AND (s.backend_access LIKE '%许可证%' OR s.backend_access LIKE '%API%');

Xiaohongshu 첫 발행이면서 이미 수동 재검토된 항목 보기:

SELECT skill_name, primary_method, manual_review_status,
       manual_capability_level, xhs_recommendation
FROM xiaohongshu_shortlist
ORDER BY CAST(repo_stars AS INTEGER) DESC;

스크리닝 기준

종합 점수는 Skill 구조 완전성, 증거 및 보안, 저장소/설치 인기도, 유지보수 및 라이선스, 과학 주제 관련성으로 구성됩니다. A/B/관찰은 과학 결과 품질 등급이 아니라 공개 증거 기반의 1차 콘텐츠 주제 선정 우선순위입니다:

  • A: 일반적으로 강한 구조적 증거가 있고 저장소 Star가 100 이상이거나 단일 Skill 설치 수가 두드러집니다.

  • B: 기능 완전성과 유지보수 기준을 충족하고 저장소 Star가 20 이상이거나 설치 수에 일부 증거가 있습니다.

  • 관찰: 기술 주제와 관련이 있지만 인기도, 라이선스, 유지보수 또는 구조적 증거가 부족합니다.

  • 제외: 보관됨, 수집 실패, 과학 주제 관련성 부족, 또는 메인 라이브러리 증거 기준 미충족.

Star는 저장소 수준 지표이므로 저장소 내 특정 Skill의 독립적인 Star로 간주할 수 없습니다. skills.sh 설치 수는 동적 플랫폼 지표이며, null 값이 0을 의미하지는 않습니다. 자동 분류는 초기 스크리닝에만 사용됩니다. 공식 콘텐츠 발행 전에 해당 SKILL.md, 라이선스 및 스크립트를 읽고 데모 결과에 대한 수동 검수를 수행해야 합니다.

Xiaohongshu 사용 권장사항

첫 배치 콘텐츠는 SHORTLIST_XIAOHONGSHU.md에서 '첫 발행'으로 표시된 항목을 우선 사용합니다. 각 콘텐츠는 다음을 명확히 구분할 것을 권장합니다:

  1. Skill이 무엇을 안내, 생성, 검사 또는 오케스트레이션할 수 있는지.

  2. 실제로 의존하는 오픈소스 소프트웨어, 상용 솔버, API, 계정, GPU/HPC 또는 데이터 소스.

  3. 이번 데모가 실제로 어느 단계까지 수행되었는지.

  4. 어떤 결론이 여전히 실행 로그, 수렴 증거 및 전문가 수동 재검토를 필요로 하는지.

'SKILL.md가 존재한다', '입력을 생성할 수 있다', '저장소 Star가 높다'는 것을 '이미 솔버를 보유했다', '상용 소프트웨어를 무료로 실행할 수 있다', '결과가 반드시 정확하다' 또는 '완전 자동 연구를 구현했다'로 작성하지 마세요.

라이선스

Scientific Skills Hub 플랫폼 소스 코드는 MIT License를 사용합니다. 캐시와 인덱스의 제3자 Skill은 각각 해당 업스트림 라이선스의 적용을 받습니다. 구체적인 출처, 라이선스 및 재배포 상태는 Bundle Manifest와 THIRD_PARTY_NOTICES.md를 기준으로 합니다. 플랫폼의 MIT License는 제3자 콘텐츠의 라이선스를 대체하거나 변경하지 않습니다.

재현 가능한 갱신

갱신은 새 스냅샷을 생성하며, 스크립트는 기존 디렉터리 덮어쓰기를 거부합니다:

python3 scripts/build_catalog.py \
  --seed data/candidates.csv \
  --repo-overrides data/repository_overrides.csv \
  --ecosystem-seed data/ecosystem_projects.csv \
  --manual-reviews data/manual_reviews.csv \
  --output snapshots/YYYY-MM-DD-vN \
  --candidate-limit 100 \
  --main-limit 50 \
  --workers 12

로컬 검사 실행:

python3 -m py_compile scripts/build_catalog.py
python3 -m unittest discover -s tests -v
python3 scripts/build_catalog.py --help

업데이터는 공개 메타데이터와 텍스트만 읽고 로컬 파생 파일을 생성합니다. 후보 Skill을 설치하거나 실행하지 않으며, 과학 솔버를 실행하거나 계산 작업을 제출하지 않습니다.

버전 정보

  • v1: 첫 구조화 스냅샷, 의미 태그가 너무 넓어 추적용으로만 유지.

  • v2: 부정 경계 오분류 수정, 그러나 메인 라이브러리 기준이 너무 엄격.

  • v3–v4: 점수 산정, 중복 제거 및 도메인/방법 커버리지 보정.

  • v5: 38개 생태계 프로젝트 부록 추가.

  • v6: 15개 첫 발행 후보 수동 재검토, 의존성 설명, 출처 계보 설명 및 발행 우선순위 추가. 현재 권장 베이스라인.

Available Tools

8 tools
check_compatibilityC

根据操作系统、MCP 客户端、软件、GPU/HPC、许可证和 API 判断兼容性。

ParametersJSON Schema
NameRequiredDescriptionDefault
has_gpuNo
has_hpcNo
skill_idYes
api_accessNo
mcp_clientNo
operating_systemNounknown
available_licensesNo
installed_softwareNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the core function but reveals no behavioral traits — no read-only guarantee, no side-effect information, no indication of what the verdict looks like, and no mention of whether all factors must be supplied. It is not misleading, but it is thin for a tool with zero annotation coverage.

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?

A single front-loaded sentence states the purpose and enumerates the factors with zero filler. While it is thin relative to the tool's complexity, as pure conciseness the structure is efficient and every word earns its place.

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

Completeness2/5

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

For an 8-parameter tool with no annotations and 0% schema coverage, one sentence under-specifies. The output schema covers return values, but the required skill_id is unexplained, usage context is absent, and the agent gets no sense of which parameters to provide in which scenario.

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 does enumerate the dimension parameters (operating_system, mcp_client, installed_software, has_gpu/has_hpc, available_licenses, api_access), which adds some conceptual meaning, but it never mentions the required skill_id and gives no format or value semantics for the array parameters.

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 uses a specific verb (判断/determine) and identifies the resource (compatibility) along with the factors considered: OS, MCP client, software, GPU/HPC, licenses, and API. It is inherently distinct from the sibling tools, which are all search/get/diff/report operations, though it never explicitly names the skill being checked — the required skill_id parameter must carry that implication.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as search_skills, doctor, or get_skill_card. The only usage signal is the implied scenario of checking a skill against an environment, which an agent must infer from the single purpose sentence rather than from explicit direction.

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

diff_skill_versionsB

比较一个 Skill 的两个已登记版本;当前无历史版本时明确返回未变化。

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYes
to_versionNo
from_versionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral disclosure burden. It usefully reveals that when no historical version exists, the tool explicitly returns 'unchanged'. But it does not disclose whether the operation is read-only, how null versions are handled, or what 'unchanged' looks like in the response.

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 compact sentence that front-loads the main purpose and adds a relevant edge-case behavior in the second clause. There is no filler or redundant wording.

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 relatively simple and has an output schema, so return-value documentation is already covered. However, given zero annotations and zero parameter documentation, the description leaves important invocation details unexplained, such as default version behavior, null handling, and how versions are identified. It is adequate but not fully complete.

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 by explaining parameter meaning. It only hints at 'two registered versions', which loosely maps to to_version and from_version, but it does not explain skill_id, the meaning of null/default values, or how versions are selected. This is insufficient compensation for the missing schema descriptions.

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 action ('compare') and the resource ('two registered versions of a Skill'), so the core purpose is unambiguous. It does not explicitly distinguish itself from siblings, but the diff-specific purpose is evident from the name and description.

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?

The description implies that this tool is for comparing versions of a Skill, and it adds one conditional behavior about the no-history case. However, it does not provide explicit guidance on when to use this over alternatives like get_skill_content or check_compatibility, nor does it mention prerequisites for invoking the comparison.

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

doctorC

诊断 MCP、双数据库、FTS、GitHub HTTPS、本地对象和哈希状态。

ParametersJSON Schema
NameRequiredDescriptionDefault
check_githubNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of explaining behavior. It names the areas checked but does not disclose whether the tool makes network requests, modifies state, is read-only, or how it reports failures. A vague 'diagnose' leaves important behavioral traits unspecified.

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

Conciseness3/5

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

The description is brief and front-loaded with the verb, but it is more under-specified than intentionally concise. The semicolon-separated list covers many topics without prioritizing or explaining them, so the brevity saves space at the cost of clarity.

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

Completeness2/5

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

An output schema exists, so return-value details are not required, but the description still lacks essential context: what diagnostics are performed, side effects, and the meaning of the check_github parameter. For a tool with one optional parameter, the description is incomplete for confident invocation.

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

Parameters1/5

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

The sole parameter check_github is completely ignored by the description, and the schema provides only its type and default with no description. With 0% schema description coverage, the description needed to explain this parameter but did not.

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

Purpose3/5

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

The description uses the verb '诊断' (diagnose) and lists specific systems (MCP, dual database, FTS, GitHub HTTPS, local objects, hash state), so it conveys a diagnostic purpose. However, it is vague about what diagnosing actually entails and does not explicitly differentiate itself from the sibling skill-related tools beyond the broad domain.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives, no conditions for calling it, and no mention of prerequisites or expected context. The sibling names suggest a different domain, so an agent could infer it is a diagnostic tool, but the description itself provides no direct routing information.

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

get_skill_bundleA

按固定提交从 GitHub 获取并校验;失败时回退到本地缓存,返回短期签名链接。

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYes
prefer_githubNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does a good job: it discloses the source (GitHub), the validation step, the fallback behavior on failure (local cache), and the return form (short-term signed link). It does not mention auth, rate limits, or side effects, but these are not strongly implied by the operation.

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 compact sentence with no filler. It front-loads the core fetch-and-validate behavior, then states the fallback and return value. Every clause adds meaningful information.

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 core behavior and return shape are covered, and the presence of an output schema reduces the need to explain return details. However, with no annotations and no parameter-level documentation, the description leaves important gaps around skill_id semantics, prefer_github's effect, and when this tool should be selected over its siblings.

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 needed to compensate for documenting skill_id and prefer_github. It does not explicitly define either parameter; prefer_github is only indirectly implied by GitHub-first behavior, and skill_id is left entirely to the schema's name. 'Fixed commit' is also not clearly mapped to any parameter.

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 names a specific verb and resource: it fetches and validates a skill bundle from GitHub by a fixed commit, falls back to local cache, and returns a short-term signed link. This clearly separates it from sibling tools like get_skill_card or get_skill_content, which target different resources or operations.

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

Usage Guidelines2/5

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

The description explains what the tool does but gives no explicit guidance on when to use it versus siblings such as get_skill_content, check_compatibility, or diff_skill_versions. There are no conditions, exclusions, or alternative recommendations; the intended use case is only vaguely implied by the GitHub/cache fetch behavior.

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

get_skill_cardB

获取统一状态卡:用途、依赖、风险、许可证、来源、版本与建议操作。

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are present, so the description carries the behavioral burden. '获取' conveys a read/retrieval operation, but the description does not disclose whether any checks or side effects occur, whether authentication is needed, or how errors are surfaced.

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?

One compact sentence with a colon-delimited list covers the full purpose without wasted words. The main verb and resource appear first, making the definition easy to scan.

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?

For a single-parameter getter, the description plus the provided output schema is near-sufficient, and the listed content covers what the card contains. However, it lacks usage context, behavior notes, and parameter guidance, so an agent may still need to infer when to call it.

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?

The single required parameter skill_id is not explained in the description beyond the schema's title 'Skill Id' and the tool name. With 0% schema description coverage, the description should compensate by specifying the expected format or source of skill_id, but it does not.

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 names a specific action ('获取' / get) and a distinct resource ('统一状态卡' / unified status card), then enumerates its contents: purpose, dependencies, risks, license, source, version, and suggested actions. This clearly separates it from sibling getters like get_skill_content and get_skill_bundle.

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

Usage Guidelines2/5

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

No sentence indicates when to use this tool instead of search_skills, get_skill_content, check_compatibility, or diff_skill_versions. The context is implied only by the resource name; there is no explicit guidance or exclusion.

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

get_skill_contentA

读取 Skill 目录中的一个文本文件;二进制资产只通过内容包提供。

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYes
relative_pathNoSKILL.md

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral disclosure burden. 'Read' conveys a non-mutating operation, and the text/binary distinction sets useful expectations. However, it does not mention what happens if the file is missing, path restrictions, or encoding, leaving some behavioral gaps.

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 with no filler. It front-loads the primary action and then states a key limitation, making it easy to parse quickly.

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 simple two-parameter read tool with an output schema, the description is mostly complete: it defines scope, file type, and the binary-asset limitation. It could be slightly stronger with an explicit pointer to get_skill_bundle for binary assets, but the context signals already suggest that path.

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

Parameters3/5

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

Schema description coverage is 0%, so the description should compensate. It adds that the file is inside the Skill directory and that only text files are supported, which helps interpret relative_path. It does not elaborate on skill_id, but the parameter name and the default relative_path provide reasonable context.

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 uses a specific verb ('read') and resource ('a text file in the Skill directory'), which clearly states the tool's function. It also draws a boundary by noting binary assets are only available via content packages, distinguishing it from sibling tools like get_skill_bundle.

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 explicitly says binary assets are only provided through content packages, which implies this tool should be used for text files and not for binary assets. It does not name an alternative tool directly, but the sibling list and wording make the intended split clear.

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

report_skill_issueB

向本地审核队列提交失效链接、错误标签、许可证或使用问题。

ParametersJSON Schema
NameRequiredDescriptionDefault
contactNo
messageYes
categoryYes
skill_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It says submissions go to a 'local review queue,' which hints at persistence, but it does not explain whether the action is irreversible, whether authorization is required, whether duplicates are handled, or what side effects occur. The description is too sparse for a write/report tool.

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, focused sentence that front-loads the tool's purpose and includes concrete examples of accepted issues. It is concise and free of filler, though it is somewhat minimal and does not use the available space to add parameter or behavior details.

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

Completeness2/5

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

The tool has 4 parameters, 2 required, no annotations, and no schema-level descriptions. The description covers the tool's general purpose but not the required inputs, the optional inputs, or the expected behavior after submission. An agent asked to call this tool would have to infer the roles of message, contact, and skill_id from names alone. The output schema may cover return values, but other context needed for correct invocation is missing.

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 for undocumented parameters. It does mention categories that map to the enum values (broken_link, wrong_tag, license, usage_problem), but it does not explain the meaning or usage of 'message,' 'contact,' or 'skill_id.' The category list largely duplicates what is already visible in the schema enum.

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 states a specific action ('submit'), a target resource ('local review queue'), and enumerates the issue types (broken links, wrong tags, licenses, usage problems). This clearly distinguishes it from sibling tools like get_skill_card, check_compatibility, and doctor, which perform reads or diagnostics rather than issue reporting.

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?

The description implies that this tool should be used when a user wants to report skill issues such as broken links or incorrect tags. However, it gives no explicit when-not-to-use guidance, does not mention alternatives, and does not address whether certain issues should go to doctor instead. The usage context is implied rather than stated.

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

search_skillsA

自然语言和结构化条件检索科学计算 Skills,并解释匹配原因。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNo
offsetNo
stagesNo
domainsNo
methodsNo
softwareNo
statusesNo
launch_onlyNo
external_skill_urlNo
github_unreachableNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the behavioral transparency burden. It makes clear this is a retrieval operation and that it returns match explanations, but it does not disclose pagination behavior, ordering, how structured filters combine, or any caveats around fields like external_skill_url or github_unreachable.

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?

A single Chinese sentence conveys the action, resource, input modes, and output behavior with no wasted words. It is front-loaded around the core purpose and efficiently scannable.

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

Completeness2/5

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

With 11 input parameters, no annotations, and no per-parameter schema descriptions, the description is too sparse for an agent to call the tool confidently. It doesn't explain filter value formats, defaults, pagination, or special flag semantics, leaving too much to infer despite the existence of an output schema.

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, but it only gestures at 'structured conditions' without explaining any of the 11 parameters. The natural-language role of 'query' is implied, while limit, offset, stages, domains, methods, software, statuses, launch_only, external_skill_url, and github_unreachable are left entirely to 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 names the specific verb '检索' (search), the resource '科学计算 Skills', the input modes (natural language + structured conditions), and the expected output (explain matching reasons). This clearly differentiates it from sibling tools like get_skill_card or get_skill_content, which retrieve specific skills.

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?

The search-oriented phrasing implies it should be used for discovery when you don't have a specific skill, while siblings fetch individual skill details. However, there is no explicit when-to-use / when-not-to-use guidance or mention of alternatives, leaving routing mostly to inference.

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

TDQS

B3.2/5.0
Disambiguation4/5

Each tool targets a clearly distinct operation: search, card metadata, file content, bundle fetch, compatibility, diff, diagnostics, and issue reporting. The three get_skill_* tools have similar prefixes but their descriptions clearly separate card metadata, directory file content, and packaged bundle downloads.

Naming Consistency4/5

Tool names mostly follow a consistent verb_noun snake_case pattern such as search_skills, check_compatibility, and report_skill_issue. The one-word command 'doctor' deviates slightly, but it is a recognizable conventional diagnostic command and does not create confusion.

Tool Count5/5

Eight tools is well within the ideal 3-15 range and each tool fills a distinct role in the scientific-skills hub workflow: discovery, inspection, retrieval, compatibility, version comparison, health checking, and issue feedback. No tool feels redundant or extraneous.

Completeness4/5

The set covers the main consumption workflow: search, view card, read content, fetch bundle, check compatibility, diff versions, diagnose issues, and report problems. Minor gaps exist around explicit listing or publishing new skills, but those appear outside the hub's stated consumption-focused scope.

Maintenance

ActivityMaintained
ResponsivenessSyncing

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
    C
    maintenance
    Enables AI agents to discover, install, and manage SKILL.md skills from a Git-backed registry via MCP tools for search, install, and list operations.
    17
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Discovers and manages portable agent capabilities (skills and MCP servers) from configurable collections, providing search, inspection, and local installation via CLI and MCP tools.
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    MCP server that serves agent skills (SKILL.md bundles) to any MCP client, exposing them via tools and resources for tool-oriented and resource-aware clients.
    3
    13
    ISC

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/liangj5413-cyber/scientific-skills-hub'

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