Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion GEMINI.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# OilPriceAPI Grounding Instructions

This extension connects the current Gemini CLI session to the read-only
`oilpriceapi-mcp@3.0.0` tool inventory. In Gemini CLI, the tools appear with the
`oilpriceapi-mcp@3.3.0` tool inventory. In Gemini CLI, the tools appear with the
`mcp_oilpriceapi_` prefix.

## Ground Product Answers
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,14 @@ Show an energy market snapshot and identify unavailable fields.
What does OilPriceAPI say about refresh cadence and data rights?
```

The extension pins `oilpriceapi-mcp@3.0.0`, starts it with `--scope read`, and
The extension pins `oilpriceapi-mcp@3.3.0`, starts it with `--scope read`, and
sets a 15-second Gemini MCP request timeout. The default inventory exposes 25
read tools and no create/delete tools. Inspect the exact executable inventory:

```bash
npx -y oilpriceapi-mcp@3.0.0 --list-tools --json
npx -y oilpriceapi-mcp@3.0.0 --capabilities --json
npx -y oilpriceapi-mcp@3.0.0 doctor --demo
npx -y oilpriceapi-mcp@3.3.0 --list-tools --json
npx -y oilpriceapi-mcp@3.3.0 --capabilities --json
npx -y oilpriceapi-mcp@3.3.0 doctor --demo
```

Common tools include:
Expand Down
2 changes: 1 addition & 1 deletion gemini-extension.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"command": "npx",
"args": [
"-y",
"oilpriceapi-mcp@3.0.0",
"oilpriceapi-mcp@3.3.0",
"--scope",
"read",
"--profile",
Expand Down
20 changes: 5 additions & 15 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@
"devDependencies": {
"@google/gemini-cli": "0.49.0",
"@modelcontextprotocol/sdk": "1.29.0",
"oilpriceapi-mcp": "3.0.0"
"oilpriceapi-mcp": "3.3.0"
}
}
2 changes: 1 addition & 1 deletion tests/manifest.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ test("manifest pins a bounded read-only MCP runtime", () => {
assert.equal(server.command, "npx");
assert.deepEqual(server.args, [
"-y",
"oilpriceapi-mcp@3.0.0",
"oilpriceapi-mcp@3.3.0",
"--scope",
"read",
"--profile",
Expand Down
13 changes: 12 additions & 1 deletion tests/protocol.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,18 @@ async function withClient(apiKey, callback) {
test("Gemini manifest launches the exact read-only tool inventory", async () => {
await withClient("", async (client) => {
const listed = await client.listTools();
assert.equal(listed.tools.length, 25);
// 25 -> 32 on the oilpriceapi-mcp 3.0.0 -> 3.3.0 pin bump.
//
// The count is a change-detector, not the safety property: it exists so a
// new tool cannot appear in the Gemini surface without someone looking at
// it. All 32 were reviewed on 2026-09-13 and every one is a read verb
// (get / list / compare / search / lookup / market_overview). The two
// assertions below are the actual guards and both still hold: every tool
// carries readOnlyHint, and no write tool is exposed.
//
// If this number changes again, list the tools and check them before
// editing it.
assert.equal(listed.tools.length, 32);
assert.ok(listed.tools.some((tool) => tool.name === "opa_get_product_facts"));
assert.ok(listed.tools.some((tool) => tool.name === "opa_get_price"));
assert.ok(
Expand Down
Loading