scientific-skills-hub
科学計算 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.md と docs/OPERATIONS.md を参照してください。
Related MCP server: skillet
ランタイムデータベース
runtime/catalog.sqlite:42件の正式 Skill、42件の固定コミットバージョン、296件のキャッシュファイル記録、構造化タグ、依存関係、リスク、ステータスカード、FTS5。runtime/objects/sha256/:289個の重複排除済みコンテンツオブジェクト、合計約 1.95 MB の本文。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件
小红书初回候補:15件
一件ずつ人手で再確認した初回候補:15件
関連エコシステムプロジェクト別表:38件
GitHub/パス取得エラー:0件
マスターカタログには、GitHub の現在のコミットで SKILL.md を特定できる Agent Skills のみが収録されます。一般の科学ソフトウェア、ソルバー、ワークフロープラットフォーム、MCP Server、研究 Agent プロジェクトはエコシステム別表にのみ記載され、上記の149件、100件、42件、15件の Skill 統計には含まれません。
クイックアクセス
snapshots/2026-08-25-v6/skills_catalog.xlsx:手動スクリーニングに適しています。マスターカタログ、候補100、全発見、小红书初回公開、メソッド、ドメイン、ソフトウェア、ステージ、エコシステムプロジェクトのワークシートが含まれます。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、ワークフロー、研究 Agent のエコシステム別表。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 key/アカウントが必要、制限付きバックエンドの必要性が未証明、など。
由来系譜:リポジトリ、コミット SHA、Skill パス、コンテンツ SHA-256、同名衝突、完全一致コンテンツ重複フィールド。
検索セマンティクス
電池関連のクエリは
NCM、NCA、三元正極、三元材料、層状酸化物、リチウムイオン正極、lithium-ion cathode、layered oxideなどの同義表現を認識します。クエリが VASP、Quantum ESPRESSO、CP2K などのソフトウェアを明示的に指定する場合、ソフトウェアタグはハード制約となり、完全一致マッチに重み付けが行われます。例えば、VASP を指定しても Quantum ESPRESSO のみがタグ付けされたエントリは返されません。
汎用材料科学の VASP Skill は、クエリ時に「電池と電気化学」「触媒と表面・界面」「金属と合金」へ継承されます。マッチ理由はドメイン継承と明示され、データベース内の元のドメインタグは書き換えられません。
構造化フィルタ条件は依然として自然言語の意図より優先されます。クエリテキストとソフトウェアフィルタが互いに矛盾する場合はゼロ件を返し、他のバックエンドへ暗黙に拡張することはありません。
SQLite クエリ例
マスターカタログの DFT Skills を一覧表示:
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%');小红书で初回公開され、人手による再確認が済んだエントリを表示:
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/観察は科学結果の品質評価ではなく、公開エビデンスに基づく初回コンテンツ選定の優先順位です:
A:通常、構造エビデンスが強く、リポジトリ Star が 100 以上、または単一 Skill のインストール数が突出しています。
B:機能の完全性とメンテナンスの基準に達しており、リポジトリ Star が 20 以上、またはインストール数に一定程度のエビデンスがあります。
観察:技術テーマには関連しますが、人気、ライセンス、メンテナンス、構造エビデンスが不十分です。
除外:アーカイブ済み、取得失敗、科学テーマの関連性不足、またはマスターカタログのエビデンス基準を満たしていません。
Star はリポジトリレベルの指標であり、リポジトリ内の特定 Skill の独立した Star として扱うことはできません。skills.sh のインストール数は動的プラットフォーム指標であり、空値は 0 と等価ではありません。自動分類は一次スクリーニングのみに使用されます。正式なコンテンツ公開前には、対応する SKILL.md、ライセンス、スクリプトを読み、デモ結果の人手による受け入れ確認を行う必要があります。
小红书利用の提案
初回コンテンツでは、SHORTLIST_XIAOHONGSHU.md で「初回公開」とマークされたエントリを優先的に使用してください。各コンテンツでは以下を明確に区別することを推奨します:
Skill が何をガイド、生成、チェック、またはオーケストレーションできるか。
実際に依存するオープンソースソフトウェア、商用ソルバー、API、アカウント、GPU/HPC、データソース。
今回のデモが実際にどこまで完了したか。
どの結論に実行ログ、収束エビデンス、専門家による人手の再確認が依然として必要か。
「SKILL.md が存在する」「入力を生成できる」「リポジトリの Star が高い」を「ソルバーをすでに備えている」「商用ソフトウェアを無料で実行できる」「結果が必ず正しい」「全自動の科学研究を実現した」と書かないでください。
ライセンス
Scientific Skills Hub プラットフォームのソースコードは MIT License です。キャッシュとインデックス内のサードパーティ Skill
は、それぞれ個別に上流ライセンスの拘束を受けます。具体的な出典、ライセンス、再配布ステータスは Bundle Manifest と
THIRD_PARTY_NOTICES.md に従います。プラットフォームの MIT License は、サードパーティコンテンツのライセンスを上書きしたり変更したりしません。
再現可能な更新
更新は新しいスナップショットを作成し、スクリプトは既存ディレクトリへの上書きを拒否します:
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 toolscheck_compatibilityC
根据操作系统、MCP 客户端、软件、GPU/HPC、许可证和 API 判断兼容性。
| Name | Required | Description | Default |
|---|---|---|---|
| has_gpu | No | ||
| has_hpc | No | ||
| skill_id | Yes | ||
| api_access | No | ||
| mcp_client | No | ||
| operating_system | No | unknown | |
| available_licenses | No | ||
| installed_software | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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 的两个已登记版本;当前无历史版本时明确返回未变化。
| Name | Required | Description | Default |
|---|---|---|---|
| skill_id | Yes | ||
| to_version | No | ||
| from_version | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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、本地对象和哈希状态。
| Name | Required | Description | Default |
|---|---|---|---|
| check_github | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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 获取并校验;失败时回退到本地缓存,返回短期签名链接。
| Name | Required | Description | Default |
|---|---|---|---|
| skill_id | Yes | ||
| prefer_github | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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
获取统一状态卡:用途、依赖、风险、许可证、来源、版本与建议操作。
| Name | Required | Description | Default |
|---|---|---|---|
| skill_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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 目录中的一个文本文件;二进制资产只通过内容包提供。
| Name | Required | Description | Default |
|---|---|---|---|
| skill_id | Yes | ||
| relative_path | No | SKILL.md |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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
向本地审核队列提交失效链接、错误标签、许可证或使用问题。
| Name | Required | Description | Default |
|---|---|---|---|
| contact | No | ||
| message | Yes | ||
| category | Yes | ||
| skill_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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,并解释匹配原因。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| offset | No | ||
| stages | No | ||
| domains | No | ||
| methods | No | ||
| software | No | ||
| statuses | No | ||
| launch_only | No | ||
| external_skill_url | No | ||
| github_unreachable | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
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.
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.
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.
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.
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.
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
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.
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.
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.
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
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
Search and discover Agent Skills from the skills.sh registry. Powered by HAPI MCP server.
Hosted MCP server for live public-data APIs and Skills for AI agents.
Manage portable AI agent playbooks, Agent Skills, MCP configurations, personas, and memory.
Governed AI agent skills — one library, distributed to devs and exposed to remote agents over MCP.
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP (Model Context Protocol) Server for skill4agent - Search, view, and install AI skills in AI conversations.3244MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to discover, install, and manage SKILL.md skills from a Git-backed registry via MCP tools for search, install, and list operations.171MIT
- AlicenseNot gradedqualityBmaintenanceDiscovers and manages portable agent capabilities (skills and MCP servers) from configurable collections, providing search, inspection, and local installation via CLI and MCP tools.1MIT
- AlicenseAqualityCmaintenanceMCP 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.313ISC
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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