negirau について
Negirauは、日々の仕事を支える人や団体への感謝数を匿名で調べられる公開サービスです。APIは読み取り専用で、ランキングや一括データ取得を設けていません。
主な機能
- 01匿名の読み取り専用公開API
- 02クエリによる対象検索
- 03範囲を限定した近隣検索
- 04感謝数は100件超を「100+」表示
活用シーン
- 01公共サービスへの感謝数の確認
- 02名前やクエリによる対象検索
- 03近隣の対象と件数の確認
MCP 対応
ライブAPI仕様に基づいてツールを動的に登録するMCPサーバーが含まれています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Negirau
日頃の担い手に、ねぎらいを。 Negirau (negirau.com) では、誰でもワンタップで、ログインせずに、消防署、イベントスタッフ、オンラインサービス、オープンソースのメンテナーなど、日々の仕事を支える人々に感謝を伝えられます。
- アカウントは不要で、ユーザーが作成したテキストもなく、訪問者のデータも保存しません。
- カウントは100までは正確に表示し、それを超えると「100+」と表示します。これは、このサービスがランキングになることを防ぐための設計です。
- Cloudflare Workers + D1 上で、無料枠の範囲内ですべて稼働します。
開発
前提条件:bun(packages/client-ts と packages/mcp-server には pnpm、packages/client-py には uv も必要です)。
bun install
cp .dev.vars.example .dev.vars
bun run db:migrate && bun run db:seed
bun run dev
チェック項目、アーキテクチャ上の不変条件、注意事項の全一覧は AGENTS.md を参照してください。
リポジトリの構成
| パス | 内容 | ライセンス |
|---|---|---|
/ (サーバー + ウェブアプリ) | Cloudflare Workers 上の React Router 7 アプリ | AGPL-3.0-only |
packages/client-ts | TypeScript API クライアント(npm)、手書き + 仕様に基づくコントラクトテスト | Apache-2.0 |
packages/client-py | Python API クライアント(PyPI)、手書き + 仕様に基づくコントラクトテスト | Apache-2.0 |
packages/mcp-server | MCP サーバー(npm)、稼働中の仕様からツールを動的に登録 | Apache-2.0 |
skills/negirau | エージェントスキル(SKILL.md)、ルートマニフェストから生成 | Apache-2.0 |
packages/ 以下はすべて OpenAPI 仕様に準拠しています。両クライアントは仕様駆動のコントラクトテストを実行し、mcp-server は起動時に稼働中の仕様を読み込み、SKILL.md は CI の差分検出ゲート付きで生成されます。
パブリック API
読み取り専用、匿名利用可能、CORS 開放で、ベース URL は https://api.negirau.com/v1 です。
仕様は /v1/openapi.json で提供され、ビルド時に zod スキーマから生成されるため、実装とのずれは発生しません。
意図的に一括ダンプやランキング用エンドポイントは用意していません。検索にはサーバー側検索(/v1/subjects の q=)と、範囲を限定した近傍検索を使用します。
ライセンス
Copyright (C) 2026 Shinsuke Mori.
サーバーとウェブアプリは AGPL-3.0-only でライセンスされています。
packages/ 以下のクライアントパッケージは Apache-2.0 でライセンスされています(各パッケージの LICENSE を参照してください)。
「Negirau」という名前とハートピンのロゴは、これらのライセンスの対象ではありません。
クレジット
- マップタイル:OpenFreeMap © OpenStreetMap の貢献者
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。