mcpField
O
Opportunity Mcp

Opportunity Mcp

ローカル
github.com/revolutionarybukhari検索125 週間前に更新

Opportunity Mcp について

Opportunity Mcpは、学生向けの機会検索サーバーです。奨学金、インターンシップ、フェローシップ、会議などの公開情報を集約し、ローカルのSQLite + FTS5インデックスで全文検索や締切検索を提供します。インデックスは定期的に更新されます。

主な機能

  1. 01複数ソースの全文検索
  2. 02種類と助成条件による絞り込み
  3. 03締切間近の機会を検索
  4. 04詳細と最新情報の取得
  5. 05ソースと更新時刻の確認
  6. 06インデックスの手動更新

活用シーン

  1. 01条件に合う奨学金を検索
  2. 02締切が近い募集を絞り込み
  3. 03新着のインターンシップや会議を確認
  4. 04インデックスのソースと更新時刻を確認

MCP 対応

機会の検索、詳細取得、新着一覧、締切検索、ソース確認、インデックス更新の6種類のツールをAIクライアントに提供します。ローカルでstdioを介して動作し、SQLite + FTS5のインデックスを検索します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"opportunity": {
"command": "uvx",
"args": [
"opportunity-mcp"
]
}
}
}
起動コマンドuvx opportunity-mcp

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

パッケージ
pypiopportunity-mcp0.1.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Opportunity MCP

あらゆる AI アシスタントが若者向けの機会(奨学金、フェローシップ、インターンシップ、カンファレンス、交換留学プログラム)を検索できる Model Context Protocol サーバーです。主要な機会検索サイトからリアルタイムに集約します。

PyPI version Python License: MIT Tests Refresh cron MCP Registry

ステータス: アルファ版(v0.1.x)。アダプターの成熟に伴い、スキーマ、ツールの内容、ソース一覧は変更される場合があります。本番環境ではマイナーバージョンを固定してください。


概要

第三者の奨学金集約サイトに頼る学生は、通常、10個以上のタブを開き、無関係な投稿を何十件も確認し、締め切りを個人用スプレッドシートにコピーしています。しかし、信頼できる締め切り管理を提供する集約サイトがないため、応募期間を逃してしまうことも少なくありません。Opportunity MCP は、このワークフローを会話でのひとつの検索クエリにまとめます。

あなた: パキスタン国民が応募できる、ヨーロッパの全額支給修士課程奨学金のうち、締め切りが今後60日以内のものを探してください。

Claude: (インデックス化されたソースからリアルタイムに取得した、重複を除いた構造化リストを締め切り順に表示します。各項目には元の記事へのリンクが付いています。)

サーバーはローカルで stdio を介して動作し、6時間ごとに CI 経由で更新される SQLite + FTS5 インデックスを同梱しています。PyPI、公式 MCP Registry、Smithery を通じて配布されています。


配布チャネル

チャネル識別子ステータス
PyPIopportunity-mcp✅ 公開中
MCP Registryio.github.revolutionarybukhari/opportunity-mcp✅ 登録済み
Smitherysayedhusnainhader/opportunity-mcp✅ 登録済み
GitHubrevolutionarybukhari/opportunity-mcp信頼できる唯一の情報源
GitHub Releases6時間ごとに更新される SQLite DB の index-N スナップショットCI によって自動公開

インストール

Claude Desktop
pip install opportunity-mcp
opportunity-mcp-refresh           # build the local index (one-off, ~30 seconds)

claude_desktop_config.json に以下を追加します。

{
  "mcpServers": {
    "opportunities": {
      "command": "opportunity-mcp"
    }
  }
}

Claude Desktop を再起動します。以下の6つのツールがモデルで利用できるようになります。

Cursor、Windsurf、Continue、その他の MCP クライアント

ほとんどのクライアントでは、同じ mcpServers の形式を使用します。command に opportunity-mcp(pip install 後)を指定するか、インストール不要の uvx を使用してください。

{
  "mcpServers": {
    "opportunities": {
      "command": "uvx",
      "args": ["opportunity-mcp"]
    }
  }
}
Smithery(ワンクリックインストール)

https://smithery.ai/server/sayedhusnainhader/opportunity-mcp — Smithery がインストールコマンドを処理します。

ソースからインストール
git clone https://github.com/revolutionarybukhari/opportunity-mcp
cd opportunity-mcp
uv sync                           # or: pip install -e ".[dev]"
uv run opportunity-mcp-refresh
uv run opportunity-mcp            # speaks MCP over stdio

ツール

サーバーは6つのツールを公開しています。各ツールはJSON引数を受け取り、Pydantic型の結果を返します。

ツールシグネチャ説明
search_opportunities(query, type?, funded_only?, deadline_before?, limit=20)任意のフィルターを指定して、インデックス化されたすべての機会を全文検索します。
get_opportunity(id)IDを指定して、1件の機会の詳細情報を取得します。
list_latest(type?, limit=20)すべてのソースから新着の機会を、投稿日順に表示します。
list_upcoming_deadlines(within_days=30, type?)N日以内に締め切られる機会を、締め切り順に表示します。
list_sources()インデックス化されたソース、項目数、最終更新日時を一覧表示します。
refresh_index(source?)必要に応じてソースを再取得します。任意のsource引数で、更新対象を1つのサイトに限定できます。

typeには、scholarship、fellowship、internship、conference、exchange、competition、grant、award、otherのいずれかを指定します。


インデックス化されたソース

各サイトのRSSフィードを確認し、現在稼働していることを検証済みです。

ソース方式ステータス
Opportunities CornersRSS✅ 稼働中
Opportunities for YouthRSS✅ 稼働中
Opportunity DeskRSS✅ 稼働中
Scholarships CornerRSS✅ 稼働中
Opportunities CircleRSS✅ 稼働中
Opportunities for AfricansRSS✅ 稼働中
Scholars4DevRSS✅ アダプター稼働中(現在、フィードの配信元に項目がありません)
Youth OpportunitiesHTML予定
After School AfricaHTML予定

ソースごとのrobots.txt遵守状況、利用規約に関する注記、CIの特記事項については、docs/SOURCES.mdに記載しています。


プロンプトの例

Find fully-funded master's scholarships in Europe with deadlines in the next 60 days.

What conferences are happening in Africa in the next three months?

List the ten newest internships indexed today.

Show me everything closing in the next seven days that an undergraduate could apply to.

Get full details for opportunity 7733b95a81e3239d.

アーキテクチャ

AI client  ──MCP──▶  FastMCP server  ──▶  SQLite + FTS5  ◀──  refresh job  ──▶  source adapters  ──▶  opportunity sites

関心事を明確に分離しています。

  1. アダプターは、1つのサイトを読み取り、生のOpportunityオブジェクト(Pydanticによる検証済み)を生成します。
  2. クエリエンジンはサイトについて何も把握せず、正規化されたインデックスを検索します。

新しいソースの追加は、通常50行程度のプルリクエストで済みます。docs/ADAPTER_GUIDE.mdを参照してください。アーキテクチャの詳細な設計理由はdocs/ARCHITECTURE.mdに記載しています。


プライバシーと倫理

  • **ユーザーを追跡しません。**すべてのクエリはローカルで処理されます。定期的なソースサイトの更新を除き、ユーザーのマシンから外部にデータが送信されることはありません。
  • **インデックス化されたデータはすべて公開情報です。**概要は500文字までで、すべてのレコードに元記事へのリンクが付いています。
  • **適切な識別情報を示します。**HTTPのUser-AgentにはプロジェクトのURLが含まれており、サイト運営者が直接連絡できます。
  • **更新頻度は控えめです。**CI経由でのソースの確認は最大6時間に1回で、ユーザーのクエリ時には行いません。
  • **依頼があった場合、ソースの削除に応じます。**交渉は行わず、24時間以内に対応します。
  • すべてのアダプターは、取得前にrobots.txtを遵守します。

ロードマップ

  • フェーズ2 — 国、レベル、言語に対応した情報抽出(現在はAIクライアントに委任しています)。
  • フェーズ3 — 最初のHTMLアダプター(Youth Opportunities)と、Tier-2/Tier-4ソースの対象範囲拡大。
  • フェーズ4 — リモートMCP サーバーを利用したいクライアント向けに、ホスト型のStreamable-HTTPエンドポイントを提供。
  • フェーズ5 — 保存済みプロフィールによる週次ダイジェスト(任意)。

add a sourceラベルが付いた未解決の課題は、最初の貢献に適しています。


貢献

プルリクエストを歓迎します。最も手早く貢献する方法は、まだインデックス化されていないソースを追加することです。docs/ADAPTER_GUIDE.mdを読んで、PRを作成してください。開発環境のセットアップ、テストの方針、行動規範に関する期待事項については、docs/CONTRIBUTING.mdを参照してください。

git clone https://github.com/revolutionarybukhari/opportunity-mcp
cd opportunity-mcp
uv sync
uv run pytest
uv run ruff check .

ライセンス

MIT © Opportunity MCP Contributors.

コメント

MCP は初めてですか?

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

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