プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。Google でログインするとレビューを書けます。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

OilpriceAPI MCP

作者:OilpriceAPIバージョン 3.6.0i★ 4 (リポジトリ全体のスター)iパソコンで動く
レジストリ名io.github.OilpriceAPI/mcp-server

インストール方法

概要

作者による説明(英語の原文)

Source-timestamped energy data and reviewed OilPriceAPI product facts for MCP clients.

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: その他
  • 入力が必要なもの:OILPRICEAPI_KEY

インストール

使っているAIアプリを選んで、設定をコピーしてください。

チェック 2/2 合格 · あなたのパソコンで動きます

まず:どの AI を使っていますか?

使っているアプリを選ぶと、下に手順が表示されます。

Claude につなげますが、先に準備が必要です

OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. OilpriceAPI MCP に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。費用がかかる場合があります。

    キーの取り方は下の提供元 README にあります

  3. パソコン版 Claude アプリの設定ファイルを開く

    SettingsDeveloperEdit Config

  4. この設定を貼り付けて保存

    {
      "mcpServers": {
        "oilpriceapi": {
          "command": "npx",
          "args": [
            "-y",
            "oilpriceapi-mcp"
          ],
          "env": {
            "OILPRICEAPI_KEY": "your-value",
            "OILPRICEAPI_MCP_SCOPE": "your-value",
            "OILPRICEAPI_MCP_PROFILE": "your-value",
            "OILPRICEAPI_MCP_CATEGORIES": "your-value"
          }
        }
      }
    }

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Claude を終了してもう一度開く

  6. 試してみる

    OilpriceAPI MCP を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude が OilpriceAPI MCP を使っていると言うか、回答に OilpriceAPI MCP のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

ChatGPT はまだ OilpriceAPI MCP につなげません

OilpriceAPI MCP はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません

代わりにできること

A · OilpriceAPI MCP につなげるアプリを使う

  • OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
  • OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)
  • OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)
  • OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)

B · その他 の中で ChatGPT につなげる別のサーバー

同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました

Claude Code につなげますが、先に準備が必要です

OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. OilpriceAPI MCP に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。費用がかかる場合があります。

    キーの取り方は下の提供元 README にあります

  3. ターミナルを開く

    Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く

  4. このコマンドを貼り付けて Enter

    claude mcp add oilpriceapi --env OILPRICEAPI_KEY=your-value --env OILPRICEAPI_MCP_SCOPE=your-value --env OILPRICEAPI_MCP_PROFILE=your-value --env OILPRICEAPI_MCP_CATEGORIES=your-value -- npx -y oilpriceapi-mcp

    Enter の前に「your-value」を自分のキーに書き換えてください

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Claude Code で /mcp と入力

    OilpriceAPI MCP が一覧にあり、接続済みと表示されれば OK です

  6. 試してみる

    OilpriceAPI MCP を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude Code が OilpriceAPI MCP を使っていると言うか、回答に OilpriceAPI MCP のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Cursor につなげますが、先に準備が必要です

OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. OilpriceAPI MCP に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。費用がかかる場合があります。

    キーの取り方は下の提供元 README にあります

  3. このボタンで Cursor を開く

    Cursor で開く

    Cursor がインストールの確認をするので Install を押します

  4. キーを入力

    OilpriceAPI MCP の設定で OILPRICEAPI_KEY, OILPRICEAPI_MCP_SCOPE, OILPRICEAPI_MCP_PROFILE, OILPRICEAPI_MCP_CATEGORIES が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. Cursor の AI チャットを Agent モードで開く

  6. 試してみる

    OilpriceAPI MCP を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Cursor が OilpriceAPI MCP を使っていると言うか、回答に OilpriceAPI MCP のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

VS Code につなげますが、先に準備が必要です

OilpriceAPI MCP のキーが必要です(提供元のサイトで登録、費用がかかる場合あり) · 先にパソコンへ Node.js を入れてください(1 回だけ)

  1. Node.js を入れる

    1 回だけ。Node.js が必要なすべてのサーバーで使えます

    Node.js のダウンロードページを開く ↗

  2. OilpriceAPI MCP に登録してキーを作る

    提供元のサイトで登録し、次の手順で使う API キーを作ります。費用がかかる場合があります。

    キーの取り方は下の提供元 README にあります

  3. このボタンで VS Code を開く

    VS Code で開く

    VS Code がインストールの確認をするので Install を押します

  4. キーを入力

    OilpriceAPI MCP の設定で OILPRICEAPI_KEY, OILPRICEAPI_MCP_SCOPE, OILPRICEAPI_MCP_PROFILE, OILPRICEAPI_MCP_CATEGORIES が空です。自分のキーを入れて保存します

    キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください

  5. VS Code の AI チャットを Agent モードで開く

  6. 試してみる

    OilpriceAPI MCP を使って、私に何ができるか教えて、1 つやってみせて

    ✓ VS Code が OilpriceAPI MCP を使っていると言うか、回答に OilpriceAPI MCP のツール名が出れば接続成功です

メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください

MCP を使えるアプリをすべて見る →

JSON 設定は下の「開発者向け」にあります

つまずいたら?OilpriceAPI MCP を使っている人に聞いてみましょう💬 ディスカッション →
開発者向け:ターミナルのコマンドと JSON 設定

パソコンにインストール

Claude Code

claude mcp add oilpriceapi --env OILPRICEAPI_KEY=your-value --env OILPRICEAPI_MCP_SCOPE=your-value --env OILPRICEAPI_MCP_PROFILE=your-value --env OILPRICEAPI_MCP_CATEGORIES=your-value -- npx -y oilpriceapi-mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "oilpriceapi": {
      "command": "npx",
      "args": [
        "-y",
        "oilpriceapi-mcp"
      ],
      "env": {
        "OILPRICEAPI_KEY": "your-value",
        "OILPRICEAPI_MCP_SCOPE": "your-value",
        "OILPRICEAPI_MCP_PROFILE": "your-value",
        "OILPRICEAPI_MCP_CATEGORIES": "your-value"
      }
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "oilpriceapi": {
      "command": "npx",
      "args": [
        "-y",
        "oilpriceapi-mcp"
      ],
      "env": {
        "OILPRICEAPI_KEY": "your-value",
        "OILPRICEAPI_MCP_SCOPE": "your-value",
        "OILPRICEAPI_MCP_PROFILE": "your-value",
        "OILPRICEAPI_MCP_CATEGORIES": "your-value"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "oilpriceapi": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "oilpriceapi-mcp"
      ],
      "env": {
        "OILPRICEAPI_KEY": "your-value",
        "OILPRICEAPI_MCP_SCOPE": "your-value",
        "OILPRICEAPI_MCP_PROFILE": "your-value",
        "OILPRICEAPI_MCP_CATEGORIES": "your-value"
      }
    }
  }
}

自分で入力する値

  • OILPRICEAPI_KEY 秘密 env
    Your OilPriceAPI key from oilpriceapi.com/auth/signup. Optional: without it, keyless demo mode.
  • OILPRICEAPI_MCP_SCOPE env
    Tool scope: read (default) or write (explicit mutation opt-in).
  • OILPRICEAPI_MCP_PROFILE env
    Tool profile: all, core, market, or automation.
  • OILPRICEAPI_MCP_CATEGORIES env
    Comma-separated category allowlist (core, market, automation) that overrides the profile.

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

ひと目でわかる

GitHubスターi
4 (リポジトリ全体のスター)
このリポジトリには複数の MCP があり、スターは順位で1件だけ数えます
週あたりのダウンロードi
120/週
ライセンスi
ライセンスの記載なし
接続方法
パソコンで動く
最新バージョンi
3.6.0
カテゴリi
その他
レジストリ公開日i
2026年10月18日
コードの最終更新i
2026年11月11日
作者
OilpriceAPI
パッケージ
npm: oilpriceapi-mcp
レジストリでの状態
有効

使えるアプリ

このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。

パソコン上で動かせるアプリ

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

すべてのアプリと長所・短所 →

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月11日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント OilpriceAPI で確認済みです

  • ✓ 合格

    今もメンテナンスされている

    コードの最終更新:昨日

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

話し合い

質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。

まだ投稿はありません。最初の質問や共有をどうぞ。

ここの投稿は利用者によるもので、PopNx チームのものではありません。

Google でログインして投稿

ユーザーレビュー

まだレビューはありません

Google でログインしてレビューを書く

その他のほかのサーバーとの比較i

  • このカテゴリのほかの19185件のうち94%よりスターが多い
  • このカテゴリのほかの19185件のうち64%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの19185件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

OilpriceAPI MCPは安全ですか?

当てはまる基本チェック2項目のうち2項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:OILPRICEAPI_KEY

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は昨日、最新バージョン(3.6.0)がレジストリに届いたのは24 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:World Monitor, Claude Flow, Tldraw

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

World Monitor

Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 102 tools.

作者:koala73広く使われている★ 9万6 日前更新

クラウドで動く✓ worldmonitor.app

Claude Flow

AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.

作者:ruvnet広く使われている↓ 1.4万/週★ 8.1万14 か月前更新

パソコンで動く

Tldraw

Draw and visually collaborate with your agents on tldraw's canvas.

作者:tldraw広く使われている★ 5.1万8 か月前更新

クラウドで動く

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

OilPriceAPI MCP Server

Give compatible AI clients source-timestamped oil, gas, LNG, carbon, fuel, and related energy data through MCP. No API key is needed to try the limited demo.

[Get a Free API Key](https://www.oilpriceapi.com/auth/signup?utm_source=mcp-readme) · [Documentation](https://docs.oilpriceapi.com) · [API Explorer](https://api.oilpriceapi.com/swagger) · [Pricing](https://www.oilpriceapi.com/pricing?utm_source=mcp-readme)

Backed by OilPriceAPI, a normalized REST API for energy dashboards, fleet and logistics tools, maritime workflows, and market research.

Canonical sources: Public product facts · Official MCP Registry record

Features

  • Reviewed product facts — a keyless read-only tool and stable resource for offer, freshness, authentication, catalog, entitlement, and data-rights questions
  • Data and workflow tools — latest values, history, futures, marine fuels, fuel surcharges, energy intelligence, alerts, market briefs, and persistent watches
  • Resources — the reviewed product contract plus subscribable price snapshots
  • Prompts — analyst templates for briefings, spread analysis, gas markets, diesel costs, and supply analysis
  • Natural language — ask for "brent oil" or "natural gas", not codes
  • Broad catalog — oil, gas, coal, refined products, metals, forex, bunker fuels, state diesel, and selected energy-intelligence datasets; access varies by plan and account
  • Smart errors — unrecognized commodities get suggestions, not silent fallbacks

Quick Start

npx oilpriceapi-mcp

The default scope is read-only. Account mutations are not listed and direct mutation calls are rejected unless write scope is explicitly enabled:

npx oilpriceapi-mcp --scope write

Inspect the package without opening an MCP stdio session:

npx oilpriceapi-mcp --version

npx oilpriceapi-mcp --list-tools npx oilpriceapi-mcp --list-tools --json --profile core npx oilpriceapi-mcp doctor --demo npx oilpriceapi-mcp doctor npx oilpriceapi-mcp --capabilities --json npx oilpriceapi-mcp --config claude-code npx oilpriceapi-mcp --config vscode

--config generates client-native, copy/paste-valid JSON for claude-desktop, claude-code, cursor, vscode, cline, or windsurf. It never reads or prints the configured API key. Claude Code, VS Code, and Windsurf outputs use their supported environment or secure-input references; Claude Desktop, Cursor, and Cline use an explicit local replacement marker. Add --demo to omit API-key configuration entirely. Scope, profile, and category options are preserved in the generated server arguments.

What can your agent get?

Example commodity codes:

CodeWhat it isTypical agent use
BRENT_CRUDE_USDBrent crude (global)market briefings, dashboards
WTI_USDWTI crude (US)trading context, macro models
NATURAL_GAS_USDHenry Hub natural gasenergy analytics
DUTCH_TTF_EURTTF gas (Europe)European energy, LNG analysis
JKM_LNG_USDJKM LNG (Asia)LNG trading & shipping
EU_CARBON_EUREU ETS carbon allowancesCBAM, maritime compliance, ESG
DIESEL_USDDiesel (Gulf Coast)fleet & fuel-surcharge math
JET_FUEL_USDJet fuelaviation ops
VLSFO_USDMarine bunker fuelvoyage costing
GOLD_USDGoldmacro & portfolio context

Installation

Try it without an API key

The server works out of the box in keyless demo mode — just omit OILPRICEAPI_KEY from the configs below. The price tools (opa_get_price, opa_compare_prices, opa_list_commodities, opa_market_overview) serve latest available values for a limited demo commodity set, and every other data tool explains its account requirements. Demo responses are marked with a footer. For the broader account-enabled catalog, history, futures, and alerts, get a free API key and add it to your config.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{

"mcpServers": { "oilpriceapi": { "command": "npx", "args": ["-y", "oilpriceapi-mcp"], "env": { "OILPRICEAPI_KEY": "your-api-key-here" } } } }

Claude Code

Add to your project's .mcp.json:

{

"mcpServers": { "oilpriceapi": { "command": "npx", "args": ["-y", "oilpriceapi-mcp"], "env": { "OILPRICEAPI_KEY": "your-api-key-here" } } } }

Cursor

Add to .cursor/mcp.json in your project root:

{

"mcpServers": { "oilpriceapi": { "command": "npx", "args": ["-y", "oilpriceapi-mcp"], "env": { "OILPRICEAPI_KEY": "your-api-key-here" } } } }

VS Code + Cline

Add to .vscode/mcp.json:

{

"servers": { "oilpriceapi": { "type": "stdio", "command": "npx", "args": ["-y", "oilpriceapi-mcp"], "env": { "OILPRICEAPI_KEY": "your-api-key-here" } } } }

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{

"mcpServers": { "oilpriceapi": { "command": "npx", "args": ["-y", "oilpriceapi-mcp"], "env": { "OILPRICEAPI_KEY": "your-api-key-here" } } } }

Global Install
npm install -g oilpriceapi-mcp
Build the Container

Container builds require the source revision and commit timestamp so the image, capability manifest, and build metadata are traceable to the same checkout:

docker build \

--build-arg SOURCE_COMMIT="$(git rev-parse HEAD)" \ --build-arg SOURCE_DATE_EPOCH="$(git show -s --format=%ct HEAD)" \ -t oilpriceapi-mcp . docker run --rm oilpriceapi-mcp --version docker run --rm oilpriceapi-mcp --capabilities --json

The runtime image uses the unprivileged node user. Omit OILPRICEAPI_KEY for the limited keyless demo, or inject it with your container platform's secret manager. Do not bake credentials into the image.

Transport

This server runs locally over stdio only. Its MCP Registry record lists the npm package and no remote endpoint.

The hosted connector at https://mcp.oilpriceapi.com/mcp is not this server. It is a separate, smaller set of energy_* tools with OAuth account linking, used by hosted clients that cannot launch a local process. Use this package for the full opa_* tool set.

Environment Variables

VariableRequiredDescription
OILPRICEAPI_KEYNoAPI key from oilpriceapi.com/auth/signup. After the core trial, use the public product facts or your account response for the current Free allowance and reset window. Dataset access and limits vary by plan and entitlement. Without a key, the server uses the limited demo.
OILPRICEAPI_BASE_URLNoOverride API base URL (for staging/testing). Default: https://api.oilpriceapi.com
OILPRICEAPI_MCP_SCOPENoread (default) hides and blocks create/delete tools. Set write only when account mutations are intended.
OILPRICEAPI_MCP_PROFILENoStable inventory profile: all (default), core, market, or automation.
OILPRICEAPI_MCP_CATEGORIESNoComma-separated category allowlist (core, market, automation). Overrides the selected profile.

Tool Scope and Profiles

read scope includes all non-mutating tools, including alert history, subscription listing, and subscription event polling. The four create/delete tools require --scope write or OILPRICEAPI_MCP_SCOPE=write. Unknown scope, profile, or category values fail closed before stdio starts.

Profiles reduce tool overload without replacing first-class MCP actions:

ProfileIncluded categories
allcore, market, automation
corecore
marketcore, market
automationcore, automation

For example, a read-only price and product-facts server can use:

{

"command": "npx", "args": ["-y", "oilpriceapi-mcp", "--scope", "read", "--profile", "core"] }

Doctor and Capability Contract

doctor checks the Node runtime, package entry point, API reachability, key validity, current plan, and reported feature gates. doctor --demo performs a bounded keyless request. Failures distinguish missing configuration, 401, 402, 403, 429, timeout, DNS/TLS, and upstream 5xx responses. The API key is never printed.

Every package includes build/capabilities.json. It is generated from the same SDK registry used by tools/list and records the package/version/source commit, minimum Node version, scopes, profiles, exact inventories, per-tool annotations, key/entitlement requirements, resources, commands, and support URLs. Website and docs consumers should pin a package version, validate schemaVersion and sourceCommit, and update the artifact only through an explicit dependency upgrade. They should not scrape CLI prose or hard-code tool counts.

API-to-MCP capability ledger

capability-ledger.json records an explicit decision for every operation in the published OilPriceAPI contract (https://api.oilpriceapi.com/openapi.json). Each operation is either exposed, naming the registered tool(s), or not_exposed with a disposition (selected, deferred, alias, unsupported, internal) and a one-line reason. Families group operations into workflows, including p

冒頭だけを表示しています。続きはリポジトリで読めます