{"_id":"patent-search-mcp-server","_rev":"5-1e916ecded37ba82a70e8ec57d9ba560","name":"patent-search-mcp-server","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"patent-search-mcp-server","version":"0.1.0","keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"license":"MIT","_id":"patent-search-mcp-server@0.1.0","maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"homepage":"https://github.com/smythmyke/Bull-Generator/tree/main/mcp-server","bugs":{"url":"https://github.com/smythmyke/Bull-Generator/issues"},"bin":{"patent-search-mcp-server":"dist/index.js"},"dist":{"shasum":"f4ac71c5c29a1baa885fc4c4c1a89070d61fe82a","tarball":"https://registry.npmjs.org/patent-search-mcp-server/-/patent-search-mcp-server-0.1.0.tgz","fileCount":29,"integrity":"sha512-Fb7xK4wnqF8zE8AdEou/En681lExibWkNaH49Fmh/uebCJ7Mk/eOVsuJaGlUMIYOlVLDdg9yD+2ERNKOgPwRBw==","signatures":[{"sig":"MEYCIQD6HqSBcX48ZrTShtOlcPDTxhFeOtOI/x0mqReYNbGHlAIhAK0Y2iCIU3JMuI4Xgc0QThkZJbeJAh/7jqjEIQ6ZX1HF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60948},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"41168b7390fe4dc3f7241b46400c1904ba6c7e92","mcpName":"io.github.smythmyke/patent-search-mcp-server","scripts":{"build":"tsc","start":"node dist/index.js","build:watch":"tsc --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"smythmyke","email":"smythmyke@gmail.com"},"repository":{"url":"git+https://github.com/smythmyke/Bull-Generator.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/patent-search-mcp-server_0.1.0_1779766018651_0.648312195999021","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"patent-search-mcp-server","version":"0.2.0","keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"license":"MIT","_id":"patent-search-mcp-server@0.2.0","maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"homepage":"https://github.com/smythmyke/patent-search-mcp-server","bugs":{"url":"https://github.com/smythmyke/patent-search-mcp-server/issues"},"bin":{"patent-search-mcp-server":"dist/index.js"},"dist":{"shasum":"ecbef67a376119aeea86ee6b44ac7a2f764c6ff0","tarball":"https://registry.npmjs.org/patent-search-mcp-server/-/patent-search-mcp-server-0.2.0.tgz","fileCount":35,"integrity":"sha512-KxClWMiM8jSbcawhttTWGWphVPz+zOulor7C2it1PS4Cg7BOw0KhPC6tnEaULnAKMyIZYdg0HdJBOkVtSPSoCA==","signatures":[{"sig":"MEUCIGmWc2jnq+wI7fM/NM2urPAH6+o9qzL0nC5vxWlCfOcIAiEAidCSosIJ41EeMskhAjZhph4Arg0ZLX7kxYSNT7tpxBI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75926},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"b72293dc93ef3fe20d280904a00f4129255dd0b8","mcpName":"io.github.smythmyke/patent-search-mcp-server","scripts":{"build":"tsc","start":"node dist/index.js","build:watch":"tsc --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"smythmyke","email":"smythmyke@gmail.com"},"repository":{"url":"git+https://github.com/smythmyke/patent-search-mcp-server.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/patent-search-mcp-server_0.2.0_1779937123526_0.9334704245189893","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"patent-search-mcp-server","version":"0.3.0","keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"license":"MIT","_id":"patent-search-mcp-server@0.3.0","maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"homepage":"https://github.com/smythmyke/patent-search-mcp-server","bugs":{"url":"https://github.com/smythmyke/patent-search-mcp-server/issues"},"bin":{"patent-search-mcp-server":"dist/index.js"},"dist":{"shasum":"94f98fe3dc6a08156cb465fb794f2ab8ad0d2623","tarball":"https://registry.npmjs.org/patent-search-mcp-server/-/patent-search-mcp-server-0.3.0.tgz","fileCount":55,"integrity":"sha512-QZ2uqYlEzU/ce8TBXnPwC370vv0QDDkvEB7AFMmXQ6msCI/OUiPXPYK5nGQjw6cGcl09iiHU38zXKGpd4VMGQA==","signatures":[{"sig":"MEYCIQC2DsHEN2AouG41QZlYIQ2EjjfhdT4RNM0fIyQ0618aawIhAOj+L7AjaZgl8x/SejybWCAocGkBi+civ2ewwVWRTRPR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107432},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"bd6d1f0fd75979bdf4779097fcd0901b9ca21fee","mcpName":"io.github.smythmyke/patent-search-mcp-server","scripts":{"build":"tsc","start":"node dist/index.js","build:watch":"tsc --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"smythmyke","email":"smythmyke@gmail.com"},"repository":{"url":"git+https://github.com/smythmyke/patent-search-mcp-server.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/patent-search-mcp-server_0.3.0_1780232417599_0.35230771972393904","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"patent-search-mcp-server","version":"0.4.0","keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"license":"MIT","_id":"patent-search-mcp-server@0.4.0","maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"homepage":"https://github.com/smythmyke/patent-search-mcp-server","bugs":{"url":"https://github.com/smythmyke/patent-search-mcp-server/issues"},"bin":{"patent-search-mcp-server":"dist/index.js"},"dist":{"shasum":"6ee846ab37fe0dc232c285a7936d816be0197ea6","tarball":"https://registry.npmjs.org/patent-search-mcp-server/-/patent-search-mcp-server-0.4.0.tgz","fileCount":55,"integrity":"sha512-SGqUgtTRCIViZn+/ho75rYiWmuDIwjqU4664TDoRLgjJP0sI3ZKyAeoQg6JYTiXK3BQRthQzZZlqSbwRPGNmvg==","signatures":[{"sig":"MEQCIHO1IpqM9w+eoQT+K8bgW2PZ7iTPmy8GPsdRPDpeYAk7AiAzDtlnrkVxrL1I8n4c7PbtuH6/l4WCPTUZ2B5mtzjTgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":142142},"main":"dist/index.js","type":"module","engines":{"node":">=18.0.0"},"gitHead":"1276ee211e7e3e7ae843aec2f1f2fd60b88fb058","mcpName":"io.github.smythmyke/patent-search-mcp-server","scripts":{"build":"tsc","start":"node dist/index.js","build:watch":"tsc --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"smythmyke","email":"smythmyke@gmail.com"},"repository":{"url":"git+https://github.com/smythmyke/patent-search-mcp-server.git","type":"git"},"_npmVersion":"10.9.3","description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/patent-search-mcp-server_0.4.0_1780281756754_0.2699053547765433","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"patent-search-mcp-server","version":"0.5.0","mcpName":"io.github.smythmyke/patent-search-mcp-server","description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","license":"MIT","type":"module","bin":{"patent-search-mcp-server":"dist/index.js"},"main":"dist/index.js","scripts":{"build":"tsc","build:watch":"tsc --watch","start":"node dist/index.js","prepublishOnly":"npm run build"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.3.0"},"engines":{"node":">=18.0.0"},"keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"repository":{"type":"git","url":"git+https://github.com/smythmyke/patent-search-mcp-server.git"},"homepage":"https://github.com/smythmyke/patent-search-mcp-server","_id":"patent-search-mcp-server@0.5.0","gitHead":"4120e85da1296a709af458f3b0fa9fe78b5fe926","bugs":{"url":"https://github.com/smythmyke/patent-search-mcp-server/issues"},"_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-4rA42wQzfBWQQRgpuqQJMq6gUTp8EzHgDh5y/vcijJTI0oudFO8dzZUgKGHFWhO2wPQRIPBRJf50kzaRju2eiw==","shasum":"54439e30b352de655da3865f217176efcf2ee483","tarball":"https://registry.npmjs.org/patent-search-mcp-server/-/patent-search-mcp-server-0.5.0.tgz","fileCount":59,"unpackedSize":153572,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIF2dJVog9a51xL552zKMlfjE/88zJQ7spIDKy6LSXeGcAiEA+I+BQoacYW0FaCH18qTk0ZC1EB+q+UyMzXGnryWqh/w="}]},"_npmUser":{"name":"smythmyke","email":"smythmyke@gmail.com"},"directories":{},"maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/patent-search-mcp-server_0.5.0_1780289491699_0.3126215287790952"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-26T03:26:58.177Z","modified":"2026-06-01T04:51:31.988Z","0.1.0":"2026-05-26T03:26:58.799Z","0.2.0":"2026-05-28T02:58:43.666Z","0.3.0":"2026-05-31T13:00:17.741Z","0.4.0":"2026-06-01T02:42:36.894Z","0.5.0":"2026-06-01T04:51:31.870Z"},"bugs":{"url":"https://github.com/smythmyke/patent-search-mcp-server/issues"},"license":"MIT","homepage":"https://github.com/smythmyke/patent-search-mcp-server","keywords":["mcp","mcp-server","model-context-protocol","patent","patent-search","prior-art","uspto","google-patents","ai-patent-search-generator"],"repository":{"type":"git","url":"git+https://github.com/smythmyke/patent-search-mcp-server.git"},"description":"MCP server for the AI Patent Search Generator — patent dossiers, prosecution history, office-action analysis, citation/family/CPC lookups, and Google Patents search from Claude Code, Claude Desktop, Cursor.","maintainers":[{"name":"smythmyke","email":"smythmyke@gmail.com"}],"readme":"# 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, and Google Patents search. Works in Claude Code, Claude Desktop, Cursor, ChatGPT-with-MCP, and any other MCP-compatible client.\n\n24 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","readmeFilename":"README.md"}