# Uspto Ptab (npm · @pipeworx/mcp-uspto-ptab)

USPTO PTAB MCP — wraps the USPTO Open Data Portal (ODP) PTAB APIs

- Trust score: 56/100 (low)
- Change this week: −23
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-06

## Components

- remote · `gateway.pipeworx.io`: 71/100, [markdown](https://verifymcp.io/servers/pipeworx-io-uspto-ptab/uspto-ptab-mcp.md), [page](https://verifymcp.io/servers/pipeworx-io-uspto-ptab/uspto-ptab-mcp)
- npm · `@pipeworx/mcp-uspto-ptab`: 56/100 (this document), [markdown](https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab.md), [page](https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab)

## Channel facts

- Registry: `npm`
- Package: `@pipeworx/mcp-uspto-ptab`
- Version: `0.2.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-06.

- **Supply Chain Security**: 13/100
  - Malware scan not yet available for this package.
  - Known CVEs could not be checked: the version this server declares is not published in its registry.
  - No install/post-install scripts declared.
  - Dependency health could not be checked: the version this server declares is not published in its registry.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to pipeworx-io/mcp-uspto-ptab).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 63/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2492 tokens (~249/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 99/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 96% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Uspto Ptab MCP server?

Uspto Ptab runs locally as an npm package, launched with npx -y @pipeworx/mcp-uspto-ptab. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add pipeworx-io-uspto-ptab -- npx -y @pipeworx/mcp-uspto-ptab
```

### Cursor

```json
{
  "mcpServers": {
    "pipeworx-io-uspto-ptab": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-uspto-ptab"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "pipeworx-io-uspto-ptab": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-uspto-ptab"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add pipeworx-io-uspto-ptab -- npx -y @pipeworx/mcp-uspto-ptab
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pipeworx-io-uspto-ptab": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@pipeworx/mcp-uspto-ptab"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add pipeworx-io-uspto-ptab --command npx --arg -y --arg @pipeworx/mcp-uspto-ptab
```

### Hermes

```yaml
mcp_servers:
  pipeworx-io-uspto-ptab:
    command: "npx"
    args: ["-y", "@pipeworx/mcp-uspto-ptab"]
```

### Netclaw

```json
{
  "McpServers": {
    "pipeworx-io-uspto-ptab": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@pipeworx/mcp-uspto-ptab"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add pipeworx-io-uspto-ptab -t stdio -c npx -a -y @pipeworx/mcp-uspto-ptab
```

### Other

```json
{
  "mcpServers": {
    "pipeworx-io-uspto-ptab": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-uspto-ptab"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-06 (score 56, −26)

- [security regression] Malware scan: pass → unverified
- [security regression] Known CVEs: pass → unverified
- [functional regression] Dependency health: pass → unverified
- [functional] Package version: 0.2.0 → 0.2.1

### 2026-11-05 (score 82, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-03 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-31 (score 80, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-29 (score 79)

First indexed and scored.

## MCP tools (10)

### `ptab_search_proceedings` (~440 tokens)

Search USPTO PTAB trial proceedings — patent litigation before the Patent Trial and Appeal Board (inter partes review / IPR, post-grant review / PGR, covered-business-method / CBM, derivation). Returns trial number, type, status, the challenged patent, petitioner, patent owner, and key dates (petition filing, institution decision, latest decision, termination). Filter by free-text `query`, `patent_number` (the patent being challenged), `party` (petitioner or patent-owner real-party name), `trial_type` (IPR/PGR/CBM/DER), and/or `status`. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key (same key as the patents pack). Get free at https://data.uspto.gov/apis/getting-started. Falls back to platform key if configured.
- `limit` (number): Number of results (1-100, default 10).
- `offset` (number): Pagination offset (default 0).
- `party` (string): Optional. Petitioner or patent-owner real-party-in-interest name, e.g. "Apple" or "Zydus Lifesciences". Matches either regularPetitionerData or patentOwnerData real-party name.
- `patent_number` (string): Optional. Patent number under challenge, e.g. "11809431" or "US9876543B2". Matches patentOwnerData.patentNumber.
- `query` (string): Optional free-text keyword search across the proceeding record (e.g. a technology term or company name). Combined with the structured filters below via AND.
- `status` (string): Optional. Trial status category, e.g. "Pending", "Terminated", "Final Written Decision", "Instituted". Matches trialMetaData.trialStatusCategory.
- `trial_type` (string): Optional. Trial type code: IPR (inter partes review), PGR (post-grant review), CBM (covered business method), DER (derivation). Matches trialMetaData.trialTypeCode.

### `ptab_search_decisions` (~329 tokens)

Search USPTO PTAB decision documents — institution decisions and final written decisions issued in IPR/PGR/CBM trials, plus appeal outcomes. Returns the trial number, decision type, issue date, trial/appeal outcome, the issue types and statutes/rules at play, and the decision document title + download URI. Filter by free-text `query`, `patent_number`, `trial_type`, and a `decided_after`/`decided_before` date range. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key (same key as the patents pack). Get free at https://data.uspto.gov/apis/getting-started.
- `decided_after` (string): Optional. Only decisions on/after this date (ISO YYYY-MM-DD). Matches trialMetaData.latestDecisionDate.
- `decided_before` (string): Optional. Only decisions on/before this date (ISO YYYY-MM-DD). Matches trialMetaData.latestDecisionDate.
- `limit` (number): Number of results (1-100, default 10).
- `offset` (number): Pagination offset (default 0).
- `patent_number` (string): Optional. Challenged patent number, e.g. "12018298". Matches patentOwnerData.patentNumber.
- `query` (string): Optional free-text keyword search across decision records.
- `trial_type` (string): Optional. Trial type code: IPR, PGR, CBM, DER. Matches trialMetaData.trialTypeCode.

### `ptab_search_documents` (~256 tokens)

Search USPTO PTAB filings and documents within trial proceedings — petitions, patent-owner responses, expert declarations, exhibits, motions, and briefs. Pass `proceeding_number` (the trial number, e.g. "IPR2024-00001") to list every document filed in a proceeding, and/or `query` for free-text search. Returns document name/title, type, filing date, filing party, size, and download URI. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key (same key as the patents pack). Get free at https://data.uspto.gov/apis/getting-started.
- `limit` (number): Number of results (1-100, default 25).
- `offset` (number): Pagination offset (default 0).
- `proceeding_number` (string): Trial/proceeding number to list documents for, e.g. "IPR2024-00001", "PGR2026-00039". Matches trialNumber.
- `query` (string): Optional free-text keyword search across document records (e.g. "declaration", "petition"). Combined with proceeding_number via AND.

### `ptab_proceeding_timeline` (~101 tokens)

Build a chronological PTAB proceeding timeline from the proceeding record and its public decision documents. Returns institution, final-written-decision, rehearing, settlement, dismissal, and other recorded decision events; absence of an event is not proof that it never occurred.

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `proceeding_number` (string, required): PTAB trial number, e.g. IPR2024-00001.

### `ptab_patent_risk_profile` (~100 tokens)

Summarize PTAB proceedings and recorded decision outcomes for one challenged patent. Reports status/outcome counts and recent matters for review routing; it is not a validity opinion, litigation forecast, freedom-to-operate analysis, or claim-level legal conclusion.

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `patent_number` (string, required): Patent number as indexed by USPTO, e.g. 11809431.

### `ptab_party_exposure` (~87 tokens)

Summarize PTAB proceeding exposure for a petitioner or patent owner, including roles, challenged patents, statuses, trial types, and recorded outcomes. Party matching follows USPTO indexed names and may combine similarly named entities; verify identity before relying on totals.

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `party` (string, required): Company or party name.

### `ptab_recent_decisions` (~144 tokens)

Return and summarize recently issued public PTAB trial decisions, optionally filtered by trial type, patent, or party. Outcome labels describe the document-level USPTO record and require review in proceeding context; they are not claim-by-claim legal conclusions.

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `days` (number): Look-back window, 1–365 days (default 30).
- `limit` (number): 1–100, default 25.
- `party` (string)
- `patent_number` (string)
- `trial_type` (string): Optional IPR, PGR, CBM, or DER.

### `ptab_search_appeals` (~467 tokens)

Search USPTO ex parte Appeals decisions — an applicant's appeal of a patent examiner's rejection to the Patent Trial and Appeal Board. This is a SEPARATE docket from AIA trials (IPR/PGR/CBM/derivation): an appeal number looks like "2024-001234", not "IPR2024-00001". Returns an outcome-count summary first (affirmed / reversed / affirmed-in-part / other), then the matching decision records, each with the applicant/real-party-in-interest, application and patent number, counsel, art unit, appeal filing date, decision type/date, and the decision document link. Filter by `appeal_number`, `application_number` (the rejected application under appeal), free-text `query`, and/or a `decided_after`/`decided_before` date range. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key (same key as the patents/uspto-ptab packs). Get free at https://data.uspto.gov/apis/getting-started.
- `appeal_number` (string): Optional. Ex parte appeal number, e.g. "2024-001234" (with or without an "Appeal" prefix). This is NOT an AIA trial number.
- `application_number` (string): Optional. The patent application number under appeal, e.g. "16123456".
- `decided_after` (string): Optional. Only decisions on/after this date (ISO YYYY-MM-DD).
- `decided_before` (string): Optional. Only decisions on/before this date (ISO YYYY-MM-DD).
- `include_raw` (boolean): Optional, default false. When true, also return raw_sample: one UNMODIFIED raw record exactly as the upstream API returned it (no field renaming), to verify or correct this tool's field mapping.
- `limit` (number): Number of decision records to return (1-100, default 25). Outcome counts are computed over this same page.
- `offset` (number): Pagination offset (default 0).
- `query` (string): Optional free-text keyword search across appeal decision records (e.g. a technology term or applicant name).

### `ptab_appeal` (~194 tokens)

Get one USPTO ex parte Appeal decision by its appeal number (e.g. "2024-001234") — the Board's decision on an applicant's appeal of an examiner rejection. Returns the decision type, issue date, outcome (affirmed / reversed / affirmed-in-part), issues and rules at play, and the decision document title + download link. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `appeal_number` (string, required): Ex parte appeal number, e.g. "2024-001234" (with or without an "Appeal" prefix).
- `include_raw` (boolean): Optional, default false. When true, also return raw_sample: the UNMODIFIED raw record exactly as the upstream API returned it (no field renaming), to verify or correct this tool's field mapping.

### `ptab_search_interferences` (~316 tokens)

Search USPTO patent Interference decisions — pre-AIA priority contests between competing applicants/patentees over who invented first. A SEPARATE docket from AIA trials and ex parte Appeals. Filter by `patent_number` (a patent or application involved in the contest), `party` (junior- or senior-party name, or either party's real party in interest), and/or free-text `query`. Returns the interference number, style ("A v. B"), declaration date, the junior and senior party (each with name, real party in interest, inventor, counsel, application/patent number, grant date), any additional parties, decision type/date and outcome, and the decision document link. Powered by the USPTO Open Data Portal (data.uspto.gov).

Input parameters:

- `_apiKey` (string): USPTO ODP API key.
- `include_raw` (boolean): Optional, default false. When true, also return raw_sample: one UNMODIFIED raw record exactly as the upstream API returned it (no field renaming), to verify or correct this tool's field mapping.
- `limit` (number): Number of results (1-100, default 25).
- `offset` (number): Pagination offset (default 0).
- `party` (string): Optional. Junior- or senior-party name in the priority contest.
- `patent_number` (string): Optional. Patent or application number involved in the interference.
- `query` (string): Optional free-text keyword search across interference decision records.

## Diagnostics

Captured diagnostic sections: Provenance. The full working is on the page: https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab#diagnostics

## Score history

- 2026-11-06: 56
- 2026-11-05: 82
- 2026-11-04: 81
- 2026-11-03: 81
- 2026-11-02: 80
- 2026-11-01: 80
- 2026-10-31: 80
- 2026-10-30: 79
- 2026-10-29: 79

## Common questions

### What is the Uspto Ptab MCP server?

Uspto Ptab is an MCP server listed in the public MCP registry as io.github.pipeworx-io/uspto-ptab. USPTO PTAB MCP, wraps the USPTO Open Data Portal (ODP) PTAB APIs. This page covers its npm package (@pipeworx/mcp-uspto-ptab).

### Is the Uspto Ptab MCP server safe to use?

Uspto Ptab scores 56 out of 100 on VerifyMCP. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Uspto Ptab MCP server expose?

Uspto Ptab exposes 10 tools: ptab_search_proceedings, ptab_search_decisions, ptab_search_documents, ptab_proceeding_timeline, ptab_patent_risk_profile, and 5 more. Their descriptions and schemas cost roughly 2,434 tokens of context every time the server is loaded.

### Is the Uspto Ptab MCP server still maintained?

Uspto Ptab is still listed as active in the MCP registry. We last reached this channel on 6 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Uspto Ptab MCP server under?

Uspto Ptab declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

### What did VerifyMCP test on the Uspto Ptab MCP server?

VerifyMCP ran 13 checks on Uspto Ptab, covering Install scripts, Source repository, Provenance, License and 9 more. 3 items could not be completed, a gap on our side rather than a finding about Uspto Ptab: Malware scan, Known CVEs and Dependency health. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- npm package: https://www.npmjs.com/package/@pipeworx/mcp-uspto-ptab
- Socket report: https://socket.dev/npm/package/@pipeworx/mcp-uspto-ptab
- Repository: https://github.com/pipeworx-io/mcp-uspto-ptab
- Website: https://pipeworx.io/packs/uspto-ptab
- Changelog RSS feed: https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab.xml
- Changelog JSON feed: https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab.json
- HTML version of this page: https://verifymcp.io/servers/pipeworx-io-uspto-ptab/pipeworx-mcp-uspto-ptab
