Ukri Gtr について
Ukri Gtrは、UKRIとInnovate UKの研究助成、機関、成果論文を調べるMCPサーバーです。助成額、研究者、概要なども取得できます。
主な機能
- 01テキストや条件による助成検索
- 02助成額と研究者情報の取得
- 03助成機関と資金ポートフォリオの検索
- 04助成に関連する論文の検索
活用シーン
- 01資金提供者や状況別の助成比較
- 02助成額と研究内容の確認
- 03機関の資金ポートフォリオの把握
- 04プロジェクト成果として報告された論文の検索
MCP 対応
研究助成、機関、論文を検索するツールをMCPクライアントに提供します。Pipeworxゲートウェイ経由、または単独のstdio MCPサーバーとして利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/ukri-gtr/mcpclaude mcp add --transport http pipeworx-io-ukri-gtr https://gateway.pipeworx.io/ukri-gtr/mcp{"mcpServers":{"pipeworx-io-ukri-gtr":{"type":"http","url":"https://gateway.pipeworx.io/ukri-gtr/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-ukri-gtr":{"type":"http","url":"https://gateway.pipeworx.io/ukri-gtr/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-ukri-gtr":{"type":"http","url":"https://gateway.pipeworx.io/ukri-gtr/mcp"}}}{"mcpServers":{"pipeworx-io-ukri-gtr":{"serverUrl":"https://gateway.pipeworx.io/ukri-gtr/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@pipeworx/ukri-gtr
UKRI Gateway to Research MCP — 英国の7つの研究評議会(EPSRC、MRC、BBSRC、NERC、ESRC、AHRC、STFC)と Innovate UK が採択したすべての研究助成金について、助成先、助成目的、助成額、助成時期を確認できます。キー不要です。
Pipeworx の一部です — AI エージェントを1684以上の稼働中のデータソースにつなぐ MCP ゲートウェイです。
ツール
gtr_search_projects(query, funder?, status?, search_field?, limit?, page?)— 英国の助成金をフリーテキストで検索します。助成金の参照番号、タイトル、ステータス、助成機関、助成金の分類、主担当部門、助成期間を返します。gtr_get_project(project)— GtR GUID または人間が読める助成金参照番号(EP/T022159/1、10045762)でプロジェクトを1件取得します。FUND および LEAD_ORG のリンクをたどり、ポンド建ての助成額、主担当組織とその住所、主任研究者、概要・技術概要・期待される影響に関する全文を返します。gtr_search_organisations(name, limit?, page?)— 英国の助成対象機関を名前で検索します。組織 ID、名前、郵便番号、地域を返します。gtr_organisation_projects(organisation, funder?, status?, limit?, page?)— 組織 ID または名前で、機関1つの助成ポートフォリオを取得します。gtr_search_publications(query, search_field?, limit?, page?)— 助成金受給者が成果として報告した学術誌論文や論文を検索します。DOI、PubMed ID、学術誌、日付、元となるプロジェクト ID を返します。
認証
不要です。キー不要で利用制限もありません。キー、アカウント、登録は必要ありません。
必須のヘッダーが2つあり、パックによって設定されます。Accept: application/vnd.rcuk.gtr.json-v7(同梱のメディアタイプです。通常の Accept: application/json では誤った表現が返されます)と、一般的なブラウザーの User-Agent です。
データソース
- API ルート:
https://gtr.ukri.org/gtr/api - プロジェクト:
https://gtr.ukri.org/gtr/api/projects?q=cancer&s=10&p=1 - 単一プロジェクト:
https://gtr.ukri.org/gtr/api/projects/{guid} - 助成金(助成額):
https://gtr.ukri.org/gtr/api/funds/{guid} - 組織:
https://gtr.ukri.org/gtr/api/organisations?q=imperial+college&s=10&f=org.n - 組織の助成ポートフォリオ:
https://gtr.ukri.org/gtr/api/organisations/{guid}/projects - 出版物の成果:
https://gtr.ukri.org/gtr/api/outcomes/publications?q=cancer&s=10 - 一般向けサイト:https://gtr.ukri.org
注意点
ページサイズのパラメーター s は 10~100 の範囲外では拒否されます。s=1 は HTTP 400 Page size cannot be less than 10 を返し、s=200 は Page size cannot be greater than 100 を返すため、このパックはすべてのリクエストをこの範囲内に収め、結果を呼び出し元の limit まで絞り込みます。助成額はプロジェクトのオブジェクトにはありません。金額は links.link[] の rel === 'FUND' に該当するリンク先の基金にあり、gtr_get_project はこのリンク(および LEAD_ORG と PI_PER)をたどるため、助成金の金額を尋ねられたエージェントは1回の呼び出しで回答できます。基金の amount が正当に 0 になる場合もあります。プロジェクト自身の start と end フィールドは、ほぼすべてのレコードで null(サンプルでは100件中0件に値あり)なので、このパックは FUND リンクの start/end から資金提供期間を取得します。どちらもエポックミリ秒で、ISO 日付として出力されます。レスポンスエンベロープ内のコレクションキーはエンドポイントごとに 異なります(project、organisation、person、fund、publication)。また、links.link[] 配列は大きく、モデルにとって役に立たないため、すべての出力から除外し、内部でのみ使用します。
最も厄介な落とし穴は、/projects/{guid} が404を返さないことです。不明な GUID を渡すと、GUID の セグメント で照合し、まったく無関係なプロジェクトを HTTP 200 で返します(00000000-0000-0000-0000-000000000000 を渡すと、ID に 0000 が含まれているだけの BBSRC の博士課程助成金が返されます)。そのため、gtr_get_project は返された id をリクエストされた ID と照合し、誤った助成金について回答するのではなく、found: false を返します。/organisations/{guid} は正しくエラーを返します。検索結果がない場合も Page requested exceeds maximum available: 0 とともに404を返しますが、このパックは例外ではなく空の結果に変換します。
GtR には、助成元やステータスのサーバー側フィルターがありません。検索では複数フィールドのクエリに対する Lucene 風の AND が有効なので、テキストフィールドと pro.lf を組み合わせると、上流の結果を約95%に絞り込めます。このパックはその方法を使ったうえで、クライアント側で leadFunder と status を完全一致で照合し、要求された limit を満たすために、上流の最大5ページ(各100件)を走査します。大規模なポートフォリオでは、該当項目がページ間で均等に分布しないため、フィルター付きの呼び出しで found: false が返された場合、助成金が存在しないという意味ではなく、再開するページを示しています。1つのフィールドに検索対象を限定するには f= を使います。有効なプロジェクトフィールドは pro.t(タイトル)、pro.a(概要)、pro.gr(助成金の参照番号)、pro.lf(主要な助成元)です。それ以外を指定すると、無効なフィールド名を含む HTTP 400 が返されます。
組織検索は f=org.n を指定しないと使いものになりません。デフォルトの複数フィールド検索で imperial college を検索すると吉林大学と NYU が返されますが、名前を対象にした検索では Imperial のレコードが返されます。さらに、GtR は各機関を何十もの重複レコードに分割します。「University of Cambridge」には40件以上のレコードがあり、それぞれ6,949件/1,547件/305件/163件の助成金を持ちますが、件数が最も多いものが最上位とは限りません。そのため、gtr_organisation_projects は最大20件の候補を調べて助成金数を確認し、最も件数が多いものを採用して、次点の候補を件数とともに alternatives として返します。住所フィールドには null ではなく文字列 "Unknown" がそのまま入っているため、このパックで正規化します。最後に、/organisations/{id}/projects は機関が主導する場合だけでなく、参加するだけの場合も助成金として数えるため、行の lead_organisation_id が別の組織を指すことがよくあります。タイトルと概要は HTML エスケープされた状態で返され(Simulation & Analytics)、デコードされます。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"ukri-gtr": {
"url": "https://gateway.pipeworx.io/ukri-gtr/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/ukri-gtr/mcp の tools/list は、上の表にあるツールに加えて、共有 Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できる一連のツール)も返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック固有のツールに加えて、共有ツールが約 30 個表示されます。接続の initialize 応答に正確な範囲が示されており、その日の状況を確認する際の正式な情報源となります。
これは意図的な設計であり、偶発的な多重化ではありません。メタツールを使えば、このパックが対象としていない質問にも、カタログ全体を検索する ask_pipeworx 経由で回答できるため、2 つ目の MCP サーバーを追加する必要がありません。現時点では、メタツールなしでパックのエンドポイントをマウントする方法はありません。追加のスキーマがもたらすコンテキストコストがルーティングのメリットを上回る場合は、複数のパックエンドポイントではなく、完全なゲートウェイに一度だけ接続してください。
または、完全な Pipeworx ゲートウェイに接続すると、このパックだけでなく、すべてのパックのツールが直接一覧表示されます。
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらの URL からも同じゲートウェイと同じ 1684 以上のデータソースにアクセスできます。唯一の違いは、どのパックのツールが直接一覧表示されるかです。どちらからでも ask_pipeworx を使って、すべてのツールにアクセスできます。
MCP クライアントがない場合は、HTTP で呼び出す
curl -X POST https://gateway.pipeworx.io/v1/tools/gtr_search_projects \
-H 'Content-Type: application/json' \
-d '{"query":"quantum computing","funder":"EPSRC","status":"Active","limit":10}'
最初の呼び出しにアカウントは必要ありません。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/gtr_search_projects を実行します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も必要ありません。
{
"mcpServers": {
"ukri-gtr": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-ukri-gtr"]
}
}
}
または、直接実行して起動することを確認できます。
npx -y @pipeworx/mcp-ukri-gtr
このサーバーは stdin/stdout 経由で MCP を使用し、initialize/tools/list/tools/call に対して、このパック固有のツールのみを返します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールを使えますが、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、自然な英語で質問できます。これは上記のパックエンドポイントでも、完全なゲートウェイでも利用できます。
ask_pipeworx({ question: "your question about Ukri Gtr data" })
ゲートウェイが適切なツールを選択し、引数を自動的に設定します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。