altcheck について
altcheckは、製品のオープンソース代替候補を探し、GitHubの状態やライセンス、保守状況を確認するコマンドラインツール兼MCPサーバーです。候補にVIABLE、RISKY、AVOIDの判定と理由を示し、個人やエージェントによる選定を支援します。
主な機能
- 01ツール名から代替候補を検索
- 02個別のGitHubリポジトリを評価
- 03VIABLE、RISKY、AVOIDの判定
- 04最新のリポジトリ情報に基づく理由の提示
- 05スクリプト向けJSON出力
活用シーン
- 01ツール選定前にオープンソース代替候補を評価
- 02リポジトリのライセンスと保守状況を確認
- 03商用製品の代替候補を比較
- 04MCPクライアントから候補とリポジトリ判定を照会
MCP 対応
altcheckはMCPサーバーとして動作し、MCPクライアントにfind_alternativesとvet_repoのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
altcheck
放置されたソフトウェアではなく、オープンソースの代替ツールを。
ディレクトリを見れば、どんな代替ツールが 存在するか はわかります。altcheck なら、どれが今も 安心して選べるか をGitHubでリアルタイムに確認し、判定の横に理由を表示します。

npx altcheck notion
Alternatives to notion: 3 VIABLE, 6 RISKY, 1 AVOID
VIABLE AppFlowy-IO/AppFlowy ★ 79k AGPL-3.0 pushed 8d ago bus 2
VIABLE docmost/docmost ★ 22k AGPL-3.0 pushed today bus 1
↳ bus factor 1: one person wrote most of it
RISKY outline/outline ★ 41k BUSL-1.1 pushed today bus 1
↳ source-available license (BUSL-1.1), not OSI open source
RISKY hcengineering/platform ★ 28k EPL-2.0 pushed 1d ago bus 3
↳ README says "no longer actively maintained"
RISKY mattermost-community/focalboard ★ 27k multi:AGPL-3.0 pushed 6mo ago bus 3
↳ no commits on the default branch in the last 12 weeks
...
(2026-11-11の実際の出力から抜粋。)
Outlineは41kのスターを獲得しており、オープンソースのNotion代替ツールとしてよく紹介されていますが、ライセンスはBUSLです。Huly(28k★)には今もコミットがありますが、READMEにはリポジトリが凍結されており、ホスティングサービスも終了したと記載されています。スター数や「最終コミット」だけでは、どちらの状況もわかりません。
使い方
npx altcheck intercom # alternatives + verdicts
npx altcheck vet hashicorp/terraform # vet any single repo
npx altcheck zapier --json --limit 5 # for scripts
MCP サーバーとして使う場合(Claude Code、Cursor、…)
claude mcp add altcheck -- npx -y altcheck --mcp
ツール:find_alternatives { tool } と vet_repo { repo }。たとえば、次のように尋ねます:「Intercomを購入しようとしています。実用的なオープンソースの代替ツールはありますか?」
チェック項目
| シグナル | 判定への影響 |
|---|---|
| アーカイブ済み、または365日以上プッシュなし | 回避 |
| デフォルトブランチへのコミットが12週間ない、または180日以上プッシュなし | リスクあり |
ソース公開型ライセンス(BUSL、SSPL、Elastic、FSL、Commons Clause、PolyForm、Sustainable Use)。GitHubがNOASSERTIONと表示する場合は、ライセンスのテキストから検出 | リスクあり |
| ライセンスがない、またはGitHubが認識できない | リスクあり |
| 古いリポジトリで、過去2年以内にLICENSEファイルが変更されている(ライセンス変更の可能性) | OSI非準拠ならリスクあり、それ以外は注記 |
| 6か月未満(実績不足)、または若いリポジトリでバスファクターが1 | リスクあり |
| OSI準拠の選択肢を含む複数ライセンス(例:Redis 8、Elasticsearch:「AGPLまたはSSPLまたは…」) | 注記 |
オープンコア(OSSコアに加え、独自のenterprise/またはee/ディレクトリがある) | 注記 |
| 実績のあるリポジトリでバスファクターが1 | 注記 |
候補は次の2か所から取得します。
- シード: RunaCapital/awesome-oss-alternatives(MIT)。213のプロジェクトを134のプロプライエタリなツールに対応付けています。
- ライブ: 説明に対象ツールの代替と記載されている、スター数100以上のGitHubリポジトリ。リストにまだ追加されていない、新しいAI時代のプロジェクトも見つけられます。
ルール: すべての判定は公開データをもとにリアルタイムで算出されます。スポンサーによる順位付けも、手書きの意見もありません。
認証と制限
利用可能な場合は、GITHUB_TOKEN、GH_TOKEN、またはgh auth tokenを使用します。リポジトリのチェックには約5件のリクエストが必要です。トークンがあれば(1時間あたり5,000件)、デフォルトで候補を10件チェックします。トークンがない場合、GitHubの制限は1時間あたり60件のため、altcheckは候補を5件チェックでき、1時間あたり約2回の検索が可能です。制限がリセットされる時刻も通知します。
OpenSSF Scorecardやdeps.devとはどう違いますか?
それらは、すでに選んだリポジトリを主にセキュリティの観点から評価します。またdeps.devではTerraform(BUSL)、Redis(AGPLまたはSSPL)、Chatwoot(オープンコア)がすべてnon-standardと報告されます。altcheckは置き換えたいツールを起点に、ライセンスのテキストを読み取ってそれぞれのケースを区別し、人やエージェントが行動に移せる理由付きの判定を提示します。
結果が間違っていた場合
「結果が間違っている」イシューを作成。所要時間は2分で、報告はすべてテストケースになります。
正直な制限事項
- バスファクターは、コミット数上位100名のコントリビューターから算出しています。あくまで大まかな指標です。
- 「LICENSE changed」は、単に著作権の年号を更新しただけの場合がよくあります。確認を促すものであり、証拠ではありません。
- ライブ検索は、リポジトリが自身をどう説明しているかに左右されます。「オープンソースのNotion代替」と名乗るプロジェクトは、実際には別のものであっても検索結果に含まれます。
- 候補の採用順はランキングではありません。ライブ検索の結果(スター数順)とシードリストを交互に並べています。有力な代替ツールが
--limitの範囲外になることもあるため、確信が持てない場合は値を大きくしてください。 - 安定して完成しているソフトウェア(変更の必要がないためコミット数が少ないもの)は、古いものとして判定されます。ラベルだけでなく、判定理由を確認してください。
- ライセンステキストの検出では、LICENSEファイルの先頭4 KBを読み取ります。READMEやファイルごとのヘッダーでしか説明されていないライセンスは、見逃されることがあります。
- 2つのブラインドベンチマークで測定しています(リポジトリ60件、ツール40件、合計100件。いずれも調整には使用せず、各1回のみ採点。詳細は
bench/を参照):- ステータス:59/60
- ライセンス分類の完全一致:48/60。誤判定はすべて慎重なもので、非オープンソースまたは放棄されたリポジトリをVIABLEと判定したケースは0件
- 検索精度:約84%。1回の修正後は約89%
- 曖昧なブランド名はノイズの原因になります。「github」はCopilotや
github.comのURLにも一致し、「framer」はFramer Motionにも一致します。 - 「Xの代替」と名乗らない大規模プロジェクト(Immich、Bitwarden、Mattermost)は、シードリストに含まれている場合にのみ表示されます。
- GitHubでホストされていないプロジェクト(GIMP、Krita、Inkscape)は表示されません。
- MCPサーバーは、公式のMCP TypeScript SDKクライアントを使用してstdio経由でテストしていますが、Claude CodeまたはCursorのアプリ内ではまだテストしていません。
開発
npm test # node:test, no network
npm run build:seed # regenerate data/seed.json from scripts/runa-README.snapshot.md
実行時の依存関係はありません。Node 18以降が必要です。MITライセンスです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。