{
  "markdown": "# patent-search-mcp-server\n\n[![npm version](https://img.shields.io/npm/v/patent-search-mcp-server.svg)](https://www.npmjs.com/package/patent-search-mcp-server)\n[![MCP Registry](https://img.shields.io/badge/MCP%20Registry-active-2da44e)](https://registry.modelcontextprotocol.io/v0/servers?search=patent-search)\n[![Glama](https://img.shields.io/badge/Glama-listed-blue)](https://glama.ai/mcp/servers/smythmyke/patent-search-mcp-server)\n[![smithery badge](https://smithery.ai/badge/smythmyke/patent-search-mcp-server)](https://smithery.ai/servers/smythmyke/patent-search-mcp-server)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\nMCP (Model Context Protocol) server for the **AI Patent Search Generator** — patent dossiers, prosecution history, Office Action AI analysis, citation/family/CPC lookups, plus a **legal-intelligence layer** (PTAB validity challenges, district-court litigation, company-litigation lookup, legal status, chain of title, term) and a one-shot **AI risk profile**. All from USPTO public data. Works in Claude Code, Claude Desktop, Cursor, ChatGPT-with-MCP, and any other MCP-compatible client.\n\n26 tools available.\n\n- **Patent data:** `dossier`, `claims`, `claim_chart`, `prosecution`, `prosecution_timeline`, `oa_analyze`, `examiner`, `attorney`, `entity_status`, `term`, `assignments`, `legal_status`, `pregrant_pub`, `query`, `search`, `similar`, `citations`, `family`, `cpc`, `cpc_suggest`, `balance`.\n- **Legal intelligence (new):** `challenges` (PTAB validity challenges — who attacked the patent and did it survive), `litigation` (US district-court infringement suits — who sued whom), `company_litigation` (reverse lookup: all patent suits involving a company).\n\n## Prerequisites\n\n1. Install the AI Patent Search Generator Chrome extension and sign in.\n2. Generate an API key from the extension's **Admin** tab.\n3. Node.js 18+ (only required for local installs; `npx`-style configs don't need a local install).\n\n## Configure in Claude Code\n\nAdd to your MCP config (`~/.claude/mcp.json` or project-scoped `.mcp.json`):\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"patent-search\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"patent-search-mcp-server\"],\n      \"env\": {\n        \"PATENT_SEARCH_API_KEY\": \"psg_live_...\"\n      }\n    }\n  }\n}\n```\n\n## Configure in Claude Desktop\n\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"patent-search\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"patent-search-mcp-server\"],\n      \"env\": { \"PATENT_SEARCH_API_KEY\": \"psg_live_...\" }\n    }\n  }\n}\n```\n\n## Configure in Cursor\n\nSettings → MCP → Add Server. Same JSON shape as Claude Code.\n\n## Tools\n\n### `balance`\nReturn current credit balance + subscription status. Free. No arguments.\n\n### `dossier`\nFull patent intelligence: bibliographic, claims, citations, family, classifications, similar documents, examiner stats — all bundled. **3 credits on fresh fetch; free on 24h cache hit.**\n\n```\n{ \"patentNumber\": \"US10867416B2\" }\n```\n\n### `prosecution`\nUSPTO file-wrapper documents (Office Actions, responses, amendments, etc.) for a US patent. Free.\n\n```\n{ \"patentNumber\": \"US10867416B2\" }  OR  { \"applicationNumber\": \"15912345\" }\n```\n\n### `oa_analyze`\nAI analysis of a USPTO Office Action — rejection grounds, cited prior art, suggested response arguments. **First 5 analyses per application are free; subsequent analyses cost 1 credit each.**\n\nTwo forms:\n- Auto-pick most recent OA: `{ \"patentNumber\": \"US10867416B2\" }`\n- Explicit doc: `{ \"applicationNumber\": \"15912345\", \"documentId\": \"...\" }`\n\n### `examiner`\nExaminer name, art unit, total applications, allowance rate, average pendency. Free.\n\n```\n{ \"patentNumber\": \"US10867416B2\" }\n```\n\n### `query`\nSingle optimized Boolean query string for **manual paste** into Google Patents. Does NOT execute. **1 credit.**\n\n```\n{ \"description\": \"foldable display with ultrasonic fingerprint sensor\" }\n```\n\n### `search`\n**Executes** a multi-query patent search against Google Patents server-side and returns ranked, deduplicated hits. **1 credit.**\n\n```\n{\n  \"description\": \"foldable display with ultrasonic fingerprint sensor\",\n  \"strategy\": \"telescoping\",\n  \"limit\": 20\n}\n```\n\nStrategies: `telescoping` (3 queries, broad/moderate/narrow), `onion-ring` (layered), `faceted` (concept pairs).\n\n### `similar`\nGoogle Patents' similar-documents ranking for a given patent. Free.\n\n```\n{ \"patentNumber\": \"US10867416B2\", \"limit\": 20 }\n```\n\n### `citations`\nBackward + forward citations for a patent. Each citation flags whether it was examiner-cited. Free.\n\n```\n{ \"patentNumber\": \"US10867416B2\", \"direction\": \"both\" }\n```\n\n`direction`: `backward` | `forward` | `both` (default).\n\n### `family`\nPatent family — continuations, divisionals, foreign counterparts. Free.\n\n```\n{ \"patentNumber\": \"US10867416B2\" }\n```\n\n### `cpc`\nCPC classification code lookup. Free. v1.0 covers all sections + ~80 common subclasses; subgroup descriptions land in v1.2.\n\n```\n{ \"code\": \"H01M10/0525\" }\n```\n\n### `claims` *(new in v0.2.0)*\nJust the claims of a patent — much cheaper than `dossier` when you only need claim text. **Free when the dossier is cached; 1 credit cold.**\n\n```\n{ \"patentNumber\": \"US10867416B2\" }\n```\n\n### `claim_chart` *(new in v0.2.0)*\nPer-claim element chart: decomposes each independent claim into discrete elements and maps each to examiner-cited prior art from cached Office Action analyses. **Free when dossier is cached; 3 credits cold.** Call `oa_analyze` first if you want fresh OA data included.\n\n```\n{ \"patentNumber\": \"US10867416B2\", \"oaDocumentIds\": [\"optional-filter\"] }\n```\n\n### `cpc_suggest` *(new in v0.2.0)*\nDescription → suggested CPC codes via AI. Returns 3–5 candidates ranked by confidence with reasoning. **1 credit; cached by description hash for 30 days.** Curated dataset (~80 subclasses) — niche chemistry/biotech may miss.\n\n```\n{ \"description\": \"lithium-ion battery thermal management with phase change materials\" }\n```\n\n## Environment variables\n\n| Var | Required | Description |\n|---|---|---|\n| `PATENT_SEARCH_API_KEY` | yes | API key minted from the extension's Admin tab. Format: `psg_live_...` or `psg_test_...` |\n| `PATENT_SEARCH_API_BASE` | no | Override the API base URL. Default: `https://us-central1-solicitation-matcher-extension.cloudfunctions.net/ai/v1` |\n\n## Local development\n\n```bash\ngit clone https://github.com/smythmyke/patent-search-mcp-server.git\ncd patent-search-mcp-server\nnpm install\nnpm run build\n\n# Point your MCP client config at the local build:\n{\n  \"command\": \"node\",\n  \"args\": [\"/absolute/path/to/patent-search-mcp-server/dist/index.js\"],\n  \"env\": { \"PATENT_SEARCH_API_KEY\": \"psg_test_...\" }\n}\n```\n\n## Security\n\n- Never commit `PATENT_SEARCH_API_KEY` to source control.\n- Revoke a leaked key from the extension's Admin tab.\n- Keys are SHA-256 hashed on the server; the raw key is shown only once at creation.\n\n## Errors\n\n- `Invalid or missing PATENT_SEARCH_API_KEY` — mint or rotate the key.\n- `Out of credits` — purchase a credit pack from the extension's Tools tab.\n- `Rate limit exceeded` — wait briefly and retry.\n\n## License\n\nMIT\n",
  "bytes": 7187,
  "sha": "ef10753a424547844a3cfa5861874a4fd6c5169e31ba3656ee9f0ddee53b3109",
  "repo_slug": "smythmyke/patent-search-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_smythmyke_patent_search_mcp_se_1bde9ca8/readme"
}