Skip to content

Update to current Orbit API and bundle Orbit's MCP server - #1

Open
avdev4j wants to merge 3 commits into
Postman-Devrel:mainfrom
avdev4j:update-orbit-api-reference
Open

Update to current Orbit API and bundle Orbit's MCP server#1
avdev4j wants to merge 3 commits into
Postman-Devrel:mainfrom
avdev4j:update-orbit-api-reference

Conversation

@avdev4j

@avdev4j avdev4j commented Sep 3, 2026

Copy link
Copy Markdown

Why

The skill was pointing at fabric-gateway.postmanlabs.com/api/search, which no longer exists. Orbit's API is now at api.buildwithorbit.ai/v1/search, documented at buildwithorbit.ai.

Rather than just swap in the new URL and wait for the next move, this bundles Orbit's MCP server so the API contract lives server-side. Orbit can change its parameters without breaking installed copies of the plugin.

Mirrors Postman-Devrel/orbit-claudecode-plugin#1.

What changed

Bundles the MCP server. New .mcp.json points at https://mcp.buildwithorbit.ai/mcp, referenced from the manifest as "mcpServers": "./.mcp.json". Installing the plugin now registers the search and integrate tools — no codex mcp add, no config.toml edits, no API key.

Skill drives the tools instead of curl. SKILL.md calls search and integrate and keeps everything that is actually this plugin's value: capability decomposition, reading Not supported: lines as design gaps, iteration, saving the blueprint to orbit-output/.

Adds integrate. Turns chosen endpoints into a task brief covering auth requirements, base URLs, ordered request steps, and gotchas. Wired into the README's design process as step 5.

Corrects the parameters. The old skill had several wrong or missing:

Old Current
cursor mentioned, never used tool argument / query param
limit undocumented default 10, max 25
q unconstrained max 512 chars
nextCursor treated as nullable absent on last page, not null
result fields no resourceType adds resourceType; also provider/product
pagination unbounded caps at 40 results total
integrate resources n/a 1–10 items

Adds references/orbit-api.md. This repo had no reference file; it now documents the REST endpoints as a fallback for sessions where the MCP tools are unavailable.

README example output is now real. It previously showed a fabricated Stripe result; replaced with an actual Brevo result from a live call.

Codex-specific details

Codex's plugin format differs enough that copying the Claude Code .mcp.json verbatim would not have worked. Verified against the Codex source rather than the docs:

  • The manifest needs an explicit pointer. Unlike Claude Code, Codex does not auto-discover .mcp.json — it requires "mcpServers": "./.mcp.json" in .codex-plugin/plugin.json. Without it the file is inert.
  • The key inside .mcp.json is camelCase. OpenAI's docs say mcp_servers; PluginMcpServersFile carries #[serde(rename_all = "camelCase")], so the loader wants mcpServers. See Docs: plugin .mcp.json example uses mcp_servers but Codex expects mcpServers openai/codex#22105 (still open).
  • Transport value is streamable-http. The native normalizer also accepts "http", but Codex's test fixtures use streamable-http on the parallel agent-plugin parse path, so that value is accepted by both. deny_unknown_fields on the transport enum makes a wrong key a hard parse error, not a warning.

Bundled HTTP servers are supported at all per the source comment: "Native plugin HTTP servers share the regular MCP transport configuration."

Verification

Probed the Orbit MCP server directly over JSON-RPC (initializetools/listtools/call) and called both REST endpoints live, so the tool names and schemas are confirmed.

Codex-side loading is source-verified onlycodex is not installed on the machine this was written on, so nothing was exercised end-to-end. Worth one /orbit:discover run on a real install. If the bundled server does not register, the README documents the ~/.codex/config.toml fallback.

Generated with Claude Code

avdev4j and others added 3 commits September 3, 2026 12:30
Mirrors the change made to orbit-claudecode-plugin.

The endpoint moved from fabric-gateway.postmanlabs.com/api/search to
api.buildwithorbit.ai/v1/search. Rather than re-hardcode the new URL,
the plugin now bundles Orbit's MCP server via .mcp.json (referenced from
the manifest as "mcpServers"), so the API contract lives server-side and
Orbit can change parameters without breaking installed copies.

The skill now drives the search and integrate tools and keeps what is
actually this plugin's value: capability decomposition, reading
"Not supported" lines as design gaps, iteration, and saving the blueprint
to orbit-output/. Adds the integrate step, which turns chosen endpoints
into a task brief covering auth, base URLs, and request steps.

Also corrects parameters that the old skill had wrong or missing: limit
and cursor, q's 512-char cap, nextCursor being absent rather than null on
the last page, the 40-result pagination ceiling, resourceType/provider on
results, integrate's 10-resource limit, and Orbit's own query-style
guidance (one intent per call, no OR-queries).

New references/orbit-api.md documents the REST endpoints as a fallback
for sessions where the MCP tools are unavailable.

Co-Authored-By: Claude <noreply@anthropic.com>
Testing the Claude Code sibling plugin against the live Orbit server
showed a 5-resource integrate call returning a one-line restatement
instead of a task brief, while a 2-resource call returned the full
document. The schema still accepts up to 10.

Co-Authored-By: Claude <noreply@anthropic.com>
Keeps Stripe as the illustrative provider. The values are now taken from
an actual Orbit response rather than being invented.

The heading is "Stripe create subscription" rather than "payment
processing" because the generic query does not return Stripe at all — it
returns Adyen, Moneris, and Peach Payments. Naming the provider is the
query guidance the skill already documents, so the example now
demonstrates it instead of contradicting it.

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant