Skip to main content
Glama
riemannzeta

USPTO Patent MCP Server

by riemannzeta

odp_get_adjustment

Read-onlyIdempotent

Retrieve patent term adjustment (PTA) data to calculate a patent's actual expiration date while accounting for USPTO delays.

Instructions

Get patent term adjustment (PTA) data.

USE THIS TOOL WHEN: You need to calculate the actual expiration date
of a patent accounting for USPTO delays.

Args:
    app_num: Application number without slashes (e.g., "14412875")

Input Schema

NameRequiredDescriptionDefault
app_numYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.8.1
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "additionalProperties": true,
      -      "title": "Result",
      -      "type": "object"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "odp_get_adjustmentOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv1.1.1

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, covering the safety profile. The description adds useful context on what PTA represents and why it's requested, but says nothing about rate limits, response contents, or data freshness. With annotations doing the heavy lifting, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in one line, followed by a use-case trigger and parameter note. The 'Args:' block is slightly boilerplate for a single parameter but overall it is tight and earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read-only lookup with no output schema, the description covers purpose, when to use it, and parameter format. It omits any hint of what the returned PTA data looks like, which is a minor gap given no output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, and it does: it specifies the format ('without slashes') and gives a concrete example ('14412875') that the schema's bare 'App Num' string type does not convey. This is meaningful syntax guidance for the single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: retrieving patent term adjustment (PTA) data. This is distinct from siblings like odp_get_application or odp_get_continuity, though it does not explicitly name or contrast those alternatives. An agent can identify the resource clearly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The explicit 'USE THIS TOOL WHEN' clause gives a concrete condition: calculating a patent's actual expiration date accounting for USPTO delays. It lacks any when-not guidance or named alternatives, but the positive trigger is clear and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.