jgrants-mcp-poc

jgrants-mcp-poc

Read-only MCP server that searches Japanese government grant information and retrieves subsidy details and attached file content via the J-Grants public API.

Category
Visit Server

README

Jグランツ補助金検索 MCP — torchi PoC

デジタル庁のJグランツ公開APIを、NotionなどのMCPクライアントから利用するための読み取り専用リモートMCPです。

デジタル庁の公開サンプル digital-go-jp/jgrants-mcp-server を基に、Sliplane常設運用向けの認証、ヘルスチェック、コンテナ構成、出力量制御を追加しています。

提供ツール

  • ping — 接続確認
  • search_subsidies — キーワード、地域、業種、従業員数、利用目的で検索
  • get_subsidy_overview — 締切期間・上限金額別の集計
  • get_subsidy_detail — 詳細と添付資料一覧を取得
  • get_file_content — 選択した添付資料だけをMarkdown化

検索結果には公式JグランツURLと出典を付けます。取得情報は参考情報であり、申請前に公式ページの最新情報を確認してください。

リモート構成

Notion
  -> HTTPS + Bearer token
  -> Caddy gateway(公開)
  -> FastMCP server(Sliplane内部のみ)
  -> Jグランツ公開API
  • /health は監視用として認証なしで公開します。
  • /mcp はGatewayとMCP本体の両方で同じBearer tokenを検証します。
  • TokenはSliplaneのSecret環境変数にだけ保存し、GitHubやログへ入れません。
  • 添付資料はMCP本体の一時領域へ保存され、必要なファイルだけ本文を返します。

ローカル開発

Python 3.10以上とuvを使用します。

uv sync
uv run pytest
JGRANTS_REQUIRE_AUTH=0 uv run python -m jgrants_mcp_server

認証付きのDocker構成は次のとおりです。

cp .env.example .env
# .envのMCP_AUTH_TOKENを32文字以上のランダム値へ変更
docker compose up --build
curl http://localhost:8080/health
curl -i http://localhost:8080/mcp

未認証の /mcp はHTTP 401になります。

Sliplane設定

同じGitHubリポジトリから2サービスを作成します。

jgrants-mcp

  • Dockerfile: Dockerfile
  • 公開: オフ
  • Healthcheck: /health
  • 環境変数:
    • JGRANTS_HOST=0.0.0.0
    • JGRANTS_PATH=/mcp
    • JGRANTS_REQUIRE_AUTH=1
    • MCP_AUTH_TOKEN=<secret>
    • PORT=8000

jgrants-mcp-gateway

  • Dockerfile: gateway/Dockerfile
  • 公開: オン
  • Healthcheck: /health
  • 環境変数:
    • MCP_AUTH_TOKEN=<same secret>
    • UPSTREAM_URL=http://jgrants-mcp.internal:8000

mainへのpushを自動デプロイ対象にします。NotionにはGatewayの公開URLに /mcp を付けたURLとBearer tokenを登録します。

ライセンスと出典

コードはMIT Licenseです。JグランツAPIの利用はJグランツAPI利用規約に従ってください。公開・転用時はJグランツを出典として明記してください。

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured