Skip to content

deeparchi-ai/patent-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

72 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Patent MCP Server

๐Ÿš€ ไธญๅ›ฝไธ“ๅˆฉๆœ€ๅ‡†็กฎ็š„ๅผ€ๆบ MCPใ€‚ Give your AI agent the ability to read CN patents with real accuracy โ€” plus global coverage.

Tests Python License MCP PyPI

An MCP (Model Context Protocol) server that gives AI agents access to patent data โ€” CN patents with CPC-aware correction, plus US/WO global coverage. Runs locally on your machine. No external API, no subscription. Always MIT.


Why Self-Deployed

  • It's just Python. Install it, your agent uses it. No server to maintain, no credential to share.
  • No API key for 80% of use cases. Patent details and claims come straight from Google Patents public pages.
  • Your data stays local. Nothing leaves your machine except the same HTTP requests a browser would make.
  • BigQuery search is optional. Only turn it on if you need full-text search across 1.4B records.

30-Second Install

pip install deeparchi-patent-mcp

Or from source:

git clone https://github.com/deeparchi-ai/patent-mcp-server.git
cd patent-mcp-server
pip install -e .

Quick Start

Pick your agent platform and add this to its MCP config:

Claude Desktop

{
  "mcpServers": {
    "patent-mcp": {
      "command": "python",
      "args": ["-m", "src.server"],
      "cwd": "/path/to/patent-mcp-server"
    }
  }
}

Cursor / Windsurf / Cline

Same config as Claude Desktop above.

Hermes Agent

mcp_servers:
  patent-mcp:
    command: "python"
    args: ["-m", "src.server"]
    workdir: "/path/to/patent-mcp-server"

Now ask your agent:

"Get patent US-7650331-B1 and summarize the claims."


What's Included

Tool What It Does Needs Setup?
get_patent Full patent details: classifications, citations (X/Y/A/D), inventors, assignees, family No
get_patent_claims Patent claims text โ€” legal scope. Supports US, CN, and most countries via Google Patents No
search_patents Search 1.4B patents by keyword, CPC, assignee, country, date range Optional GCP

The first two cover 80% of use cases. Zero cost. Zero setup.

CN Patent Search (v1.7.0)

Three-layer discovery for Chinese patents:

Layer Backend Cost When
1. BigQuery Google Patents Public Data Free tier cpc=H01L + country=CN
2. Firecrawl Web search fallback 4 credits/query BigQuery cost-rejects specific CPC (e.g. H01L25/065)
3. Google Patents Detail enrichment via proxy Free All patent detail lookups
  • Keyword search works: query="่Šฏ็‰‡" + country=CN searches both English AND Chinese abstracts (v1.5.2 fix).
  • Assignee filter: assignee="BOE" + country=CN โ†’ company/city-level patent landscape.
  • CPC classification: Use parent CPC classes (H01L) for broader CN coverage; specific CPC codes (H01L25/065) trigger web fallback.
  • See SEARCH_GUIDE.md for detailed search strategy and tested CPC codes.

Optional: Enable BigQuery Search

If you need search_patents, add a GCP project:

  1. Create a GCP project with BigQuery enabled
  2. Create a service account, download JSON key
  3. Set env vars:
    export GOOGLE_APPLICATION_CREDENTIALS="/path/to/key.json"
    export GCP_PROJECT_ID="your-project-id"
  4. Copy the wrapper template and fill in your paths:
    cp run.sh.example run.sh
    # Edit run.sh โ†’ set your GCP paths

BigQuery free tier: 1 TB/month โ€” individual use is essentially free.


Advanced: Team Server (HTTP/SSE)

Need multiple people to share one patent-mcp instance? Start it as an HTTP server:

cp run-http.sh.example run-http.sh
# Edit โ†’ set GCP creds (skip if only using web tools)
PORT=8090 ./run-http.sh

Team members connect with:

mcp_servers:
  patent-mcp:
    url: "http://<server-ip>:8090/sse"

A systemd service template is included for production deployment.


How It Works

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  AI Agent    โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚  patent-mcp-server                    โ”‚
โ”‚  (Claude,    โ”‚     โ”‚  (runs on YOUR machine)               โ”‚
โ”‚   Cursor,    โ”‚     โ”‚                                       โ”‚
โ”‚   Hermes)    โ”‚     โ”‚  search_patents:                      โ”‚
โ”‚              โ”‚     โ”‚    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚              โ”‚     โ”‚    โ”‚ BigQuery โ”‚โ”€โ”€โ”€โ–ถโ”‚ Firecrawl     โ”‚  โ”‚
โ”‚              โ”‚     โ”‚    โ”‚ (primary)โ”‚    โ”‚ (CN fallback) โ”‚  โ”‚
โ”‚              โ”‚     โ”‚    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ”‚              โ”‚     โ”‚                           โ”‚           โ”‚
โ”‚              โ”‚     โ”‚  get_patent / get_patent_claims:      โ”‚
โ”‚              โ”‚     โ”‚    โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”           โ”‚
โ”‚              โ”‚     โ”‚    โ”‚ Google Patents (web) โ”‚           โ”‚
โ”‚              โ”‚     โ”‚    โ”‚ โ†’ BigQuery fallback  โ”‚           โ”‚
โ”‚              โ”‚     โ”‚    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜           โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
  • Web scraping for details โ€” fast (~1.5s), free, no credentials
  • BigQuery for search โ€” 1.4B records, CN full-text, optional
  • Firecrawl for CN fallback โ€” kicks in when BigQuery cost-rejects specific CPC queries
  • Smart fallback โ€” every tool tries web first, auto-falls to BigQuery if you have it

Tools Reference

get_patent

get_patent(publication_number="US-7650331-B1")

Returns: classifications, citations (X/Y/A/D prior art markers), family ID, dates, inventors, assignees. Cites prior art markers so your agent can assess novelty at a glance.

CN patent note: Google Patents web scraping provides machine-translated English data for CN patents. CPC codes from web scraping are empty (JS-rendered). For CPC, use BigQuery path.

get_patent_claims

get_patent_claims(publication_number="US-7650331-B1")

Returns: full claims text. Supports US, CN (machine-translated English), and most countries via Google Patents web scraping.

search_patents

search_patents(cpc="G06N", country="CN", after="2023-01-01", limit=5)
search_patents(assignee="TSMC", country="CN")
search_patents(query="่Šฏ็‰‡", country="CN")          # keyword search (CN: searches both EN+ZH)

Search 1.4B patents by keyword, CPC classification, assignee, country, date range. For CN patents, keyword search scans both English and Chinese abstracts.

Cost control: Queries require at least one filter (cpc/country/assignee/after). A dry-run budget guard rejects queries over 50 GB. When BigQuery rejects a CN CPC query (e.g., H01L25/065 โ†’ 256 GB), the web fallback automatically searches via Firecrawl.

See SEARCH_GUIDE.md for best practices and docs/cn-cpc-correction-table.md for tested CPC codes.


Development

pip install -e ".[dev]"

pytest tests/ -v          # 32 tests, ~1.5s
ruff check src/ tests/    # lint
mypy src/                 # type check

License

MIT โ€” see LICENSE.


Author

DeepArchi OPC โ€” AI agent infrastructure for enterprise architecture.

About

MCP Server for global patent data retrieval and analysis, powered by Google Patents Public Datasets on BigQuery. MIT.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages