mcpField
T
technews-port

technews-port

ローカル
github.com/CloudCorpRecordsソーシャルメディア02 週間前に更新

technews-port について

technews-portは、Hacker Newsを閲覧・検索するCLI兼stdio MCPサーバーです。公開Firebase APIによるランキングやアイテム・ユーザー照会と、Algoliaによるストーリー全文検索を組み合わせています。

主な機能

  1. 01top・new・bestのストーリー一覧
  2. 02数値IDによるアイテム取得
  3. 03公開ユーザープロフィールの取得
  4. 04Algoliaによるストーリー本文検索
  5. 05一覧に含まれる解析済みの詳細情報

活用シーン

  1. 01Hacker Newsのランキングを確認
  2. 02ストーリー、コメント、求人、投票を調査
  3. 03ユーザーの公開プロフィールを確認
  4. 04条件に合うストーリーを検索

MCP 対応

ランキング一覧、アイテム・ユーザー照会、ストーリー検索のMCPツールを提供します。Hacker Newsの公開Firebase APIとAlgolia HN Search APIを使用します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-technews-port": {
"command": "npx",
"args": [
"-y",
"@reneturcios/technews-port"
]
}
}
}
起動コマンドnpx -y @reneturcios/technews-port

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/technews-port0.1.0
ocighcr.io/cloudcorprecords/technews-port:0.1.0

ツール

6

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
limitintegerいいえ返すトップ記事の最大数です。デフォルトは 30 で、1~100 に制限されます。

詳細

technews-port

technews-port は Hacker News 用の小さなリーダーです。サイト独自の公開 API を利用するため、スクレイピングも登録も不要です。公式 Firebase API から、ランキング順のトップページ一覧(top、new、best)、数値 ID で指定した個別アイテム、ユーザーの公開プロフィールを取得し、Firebase API にはない機能として、Algolia HN Search API でストーリーの本文を検索します。

ストーリー一覧は、ID だけではなく、取得済みのアイテムをランキング順に返します。各項目には見出し、投稿者、スコア、コメント数が含まれます。

インストール

npx @reneturcios/technews-port top --limit 10

または、コンテナイメージを実行します。

docker run -i ghcr.io/cloudcorprecords/technews-port

コンテナはデフォルトで MCP サーバーとして動作します(以下を参照)。CLI として使用するには、CLI 引数を渡してください。

CLI

すべてのコマンドは JSON を出力します。

# The three ranked lists (default 30 stories, capped at 100)
technews-port top
technews-port new --limit 10
technews-port best --limit 5

# One item, one user
technews-port item 8863
technews-port user pg

# Full-text story search via Algolia (default 20 hits)
technews-port search "show hn" --limit 10

technews-port --version

終了コード:成功時は 0、検索に失敗した場合(不明なアイテムまたはユーザー、あるいはメッセージに記載された上流エラー)は 1、使用方法に誤りがある場合は 2 です。

MCP サーバー

1 つの実行ファイルで両方の使い方に対応しています。mcp サブコマンドを実行すると、stdio MCP サーバーが起動します。

npx -y @reneturcios/technews-port mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "technews-port": {
      "command": "npx",
      "args": ["-y", "@reneturcios/technews-port", "mcp"]
    }
  }
}
ツール
ツール入力返される内容
get_top_storieslimit(整数、任意)現在のトップストーリー:ランキング順のアイテム ID と、解析済みの各ストーリー(タイトル、投稿者、スコア、コメント数、URL、タイムスタンプ)。
get_new_storieslimit(整数、任意)最新のストーリー。形式は get_top_stories と同じです。
get_best_storieslimit(整数、任意)ベストストーリー。形式は get_top_stories と同じです。
get_itemitem_id(整数、必須)あらゆる種類のアイテム 1 件(ストーリー、コメント、求人、投票):種類、投稿者、本文またはタイトル、スコア、子コメント ID、削除済み/無効のフラグ。
get_userusername(文字列、必須)ユーザーの公開プロフィール:作成日時、カルマ、自己紹介文、投稿したアイテム ID。
search_storiesquery(文字列、必須)、limit(整数、任意)Algolia から取得した、クエリに一致するストーリー。検索結果ごとに、タイトル、URL、投稿者、ポイント、コメント数、投稿時刻が含まれます。

ランキング一覧の ID を読み取ってからアイテムを取得するまでの間に、その ID が消えることがあります(ライブサイトでは起こりえます)。その場合、ID は item_ids に残り、アイテムは items に含まれません。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network
npm run dev     # run the CLI from source via tsx

コアでは fetch 関数を差し替えられます。テストスイートでは、URL に応じて、本物の Firebase および Algolia のレスポンス形式を模した手書きのペイロードを返すフェイク fetch を使用するため、テストでネットワークにアクセスすることはありません。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。