Honeypot MCPサーバー
コミット 2026年10月21日JSON APIを通じて検索や閲覧が可能な、AIエージェント向けのSKILLの機械判読可能なインデックスを提供します。
別名 oidsdev/honeypot
- スター
- 0
- ツール
- —
- ダウンロード数(30日間)
- —
- 最新バージョン
- 1.0.0
- 最終コミット
- 2026年10月21日
- ライセンス
- MIT
Honeypot MCPとは
HoneypotはMCPサーバーです。 JSON APIを通じて検索や閲覧が可能な、AIエージェント向けのSKILLの機械判読可能なインデックスを提供します。.
プロジェクトのREADMEから生成された概要
Honeypot MCP server について
Honeypotは、AIエージェントが発見・利用できるように設計された、機械判読可能なSKILLインデックスを提供します。これは無料の検索可能なディレクトリとして機能し、開発者はアカウント登録なしでJSON API経由でアクセスできます。サービスはSKILLをtrading、data、identity、meta、toolingなどのカテゴリに分類しており、特定のAPIエンドポイントを通じて精密なフィルタリングが可能です。
ユーザーは、SKILLの全リストを取得するか、特定のカテゴリ内のSKILLといった特定のサブセットを取得することで、インデックスとやり取りできます。システムにはSKILLの鮮度を検証する機能が含まれており、180日以内に再検証されていないエントリは古いものとしてマークされます。また、開発者はエディターのおすすめを閲覧したり、RSSフィードを通じて更新を購読したりすることもできます。このツールは自動化向けに構築されており、直接実行可能なインストールコマンドや、名前、説明、タグ、検証日を含む構造化データを提供します。
できること
- 1SKILLの自動発見AIエージェントがJSON API経由でSKILLインデックス全体を取得し、新しい機能を探索できます。
- 2カテゴリ別のフィルタリング開発者がtradingなどの特定のドメインに関連するSKILLのみをリクエストすることで、帯域幅を節約できます。
プロジェクトの README から作成されています。すべてのユースケースは、その引用と照らし合わせて確認されています。
自動チェック
実行日 2026年11月14日完全なレポート →まだ検証されていません。サーバーには80点のスコア、重大な問題がないこと、および検証に必要な十分なデータが必要です。 チェックの仕組み · 点数を上げるための改善点
- ソースリポジトリがリンクされており、アクセス可能oidsdev/honeypot is public and reachablegithub.com/oidsdev/honeypot ↗合格
- パッケージがこのリポジトリをソースとして指定未チェック
- ビルドの来歴 (Sigstore 証明)未チェック
- オープンソースライセンス (OSI)MITspdx.org/licenses/MIT.html ↗合格
- 過去1年以内にコミットまたはリリースありLast commit or release 2026-10-21github.com/oidsdev/honeypot ↗合格
- OpenSSF Scorecard未チェック
- パッケージ名が有名なパッケージに酷似していない未チェック
- パッケージおよびその依存関係に重大な勧告なし未チェック
- モデルへの隠れた指示がない0 tool descriptions and the README read; no override phrases, credential paths or hidden characters合格
- 破壊的なツールがラベル付けされている未チェック
- リモートエンドポイントが MCP ハンドシェイクに応答未チェック
README
GitHubで見るHoneypot
A free index of skills for AI agents. Machine-readable. No sign-up.
Live: https://honeypot-e6c.pages.dev
Fetch it by machine
The index is one JSON file. schema_version is "1"; entries live under .skills.
# everything
curl -sL https://honeypot-e6c.pages.dev/api/skills.json | jq '.skills[] | .name'
# one category only (cheaper than filtering client-side)
curl -sL https://honeypot-e6c.pages.dev/api/by-category/trading.json | jq '.skills[] | .name'
# install one skill
curl -sL https://honeypot-e6c.pages.dev/api/skills.json \
| jq -r '.skills[] | select(.name=="kalshi") | .install'
# then run the command it prints
Linkable searches
The site takes the same filters as URL params, so any view can be shared or bookmarked:
?q=— ranked match on name, description, and tags (a one-character typo still matches; hits are highlighted)?tag=— exact tag?category=— exact category
Params combine: https://honeypot-e6c.pages.dev/?category=trading&tag=prediction-markets.
Filtering happens in the browser, so curl on that URL returns the unfiltered page.
The page ranks matches and tolerates a one-character typo. A script can apply the
same category and tag filters, plus a plain substring check, to the JSON:
# substring stand-in for ?q= (the page ranks; this check does not)
curl -sL https://honeypot-e6c.pages.dev/api/skills.json | jq '.skills[]
| select(.category=="data")
| select(.tags | index("sports-data"))
| select((.name+" "+.description+" "+(.tags|join(" "))) | ascii_downcase | contains("odds"))
| .name'
Each entry has name, description, category, tags, last_verified (date),
skill_md_url, and install. New additions: /api/changelog.json and /feed.xml (RSS).
Editor's picks live at /api/editors-picks.json. There's no score: a skill is a pick
when it passes every check in PICK_CRITERIA in scripts/gen.py (description length,
tags, verified recently, SKILL.md link). The file carries the checklist itself as
criteria and criteria_text, and the site prints that text as-is.
Every card on the site shows its last_verified date. Anything not re-verified in
STALE_AFTER_DAYS (180, set in scripts/gen.py and published as stale_after_days
in /api/editors-picks.json) gets a "stale" badge and drops out of the picks.
Freshness is date-based only; nothing pings the skills.
The same JSON is mirrored at
https://raw.githubusercontent.com/oidsdev/honeypot/main/api/skills.json.
Submit a skill
- Write your skill as a
SKILL.md. Start from skill-template.md. - Fork this repo.
- Add it at
skills/<your-skill>/SKILL.md. - Lint it from the repo root:
python3 scripts/lint_skill.py skills/<your-skill>
pass is clean. fail prints file:line: reason for each problem: missing name or description, a description outside 20-300 characters, a banned phrase (the list is in scripts/lint_skill.py), or a relative link that does not resolve to a file.
5. Open a pull request. We merge fast.
6. Add the badge to your repo:
[](https://honeypot-e6c.pages.dev)
Per-skill badges live at /badge/<skill>.svg. The image shows the skill name, a version, and a check when the skill passes the linter in scripts/gen.py.
[](https://honeypot-e6c.pages.dev/skills/cron/)
Version is the optional version field in the SKILL.md frontmatter. With no version, the badge shows last_verified. The check means the frontmatter has name and description, name matches the directory, and the index entry has a category, tags, and a last_verified date. The SVG is static and cached for a day.
Requirements (learned the hard way — PRs missing these get bounced):
- Frontmatter must include
nameanddescription. Directory CLIs (e.g. skills.sh) silently skip files without them. - Pick one
category(trading, data, identity, meta, tooling, or propose a new one in the PR) and addtagsplus a currentlast_verifieddate — these feed the JSON index. - MIT-compatible license only. We can't index what we can't redistribute.
- Spam, duplicates, and anything malicious get closed. Every listing is PR-gated and read before it merges.
Layout
index.html— the siteja/index.html— Japanese homepagesearch.js— ranked search used by the site (no dependencies)categories/<name>/— landing page for each of the largest categories (generated)api/skills.json— the machine-readable indexscripts/gen.py— rebuilds everything derived fromskills.json(run after any change)scripts/lint_skill.py— checks a submitted skill (frontmatter, description length, banned phrases, relative links)scripts/lint-fixtures/— five sample skills the linter is checked against (--fixtures)llms.txt— agent-readable descriptionskill-template.md— blank SKILL.md templateskills/<name>/SKILL.md— the indexed skillstests/test_search.js—node tests/test_search.jstests/test_gen.py—python3 -m pytest tests/test_gen.pytests/test_mcp_server.py—python3 tests/test_mcp_server.pybadge/<name>.svg— per-skill badge, written byscripts/gen.py_headers— cache header for/badge/*(one day)
License
MIT — Orbital Desk LLC.
Honeypot MCPのよくある質問
プログラムからSKILLインデックスを取得するにはどうすればよいですか?
提供されているAPIエンドポイントを使用して、インデックス全体を単一のJSONファイルとして取得するか、カテゴリ別にフィルタリングして取得できます。
新しいSKILLをインデックスに登録するにはどうすればよいですか?
SKILL.mdファイルを所定のテンプレートに従って作成し、リポジトリをフォークしてskillsディレクトリに追加、lintを実行した後、プルリクエストを作成してください。
インデックスの利用にサインアップは必要ですか?
いいえ、Honeypotインデックスは無料で、利用にあたってサインアップは必要ありません。