Lintsure
Compliance readiness checks for code: EU AI Act, GDPR, SOC 2, ISO 27001. Local. Not legal advice.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Patent intelligence — USPTO Open Data, PTAB, EPO OPS and BigQuery full-text search.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
USPTO_API_KEY, EPO_CONSUMER_KEY, EPO_CONSUMER_SECRET, GOOGLE_APPLICATION_CREDENTIALS, GOOGLE_CREDENTIALS_JSON, GOOGLE_CLOUD_PROJECT, TRANSPORT, PORT, LOG_LEVEL, HOST, PUBLIC_BASE_URLค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"patents": {
"command": "npx",
"args": [
"-y",
"patents-mcp-server"
],
"env": {
"USPTO_API_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_SECRET": "ใส่ค่าของคุณ",
"GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
"GOOGLE_CREDENTIALS_JSON": "ใส่ค่าของคุณ",
"GOOGLE_CLOUD_PROJECT": "ใส่ค่าของคุณ",
"TRANSPORT": "ใส่ค่าของคุณ",
"PORT": "ใส่ค่าของคุณ",
"LOG_LEVEL": "ใส่ค่าของคุณ",
"HOST": "ใส่ค่าของคุณ",
"PUBLIC_BASE_URL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add patents --env USPTO_API_KEY='ใส่ค่าของคุณ' --env EPO_CONSUMER_KEY='ใส่ค่าของคุณ' --env EPO_CONSUMER_SECRET='ใส่ค่าของคุณ' --env GOOGLE_APPLICATION_CREDENTIALS='ใส่ค่าของคุณ' --env GOOGLE_CREDENTIALS_JSON='ใส่ค่าของคุณ' --env GOOGLE_CLOUD_PROJECT='ใส่ค่าของคุณ' --env TRANSPORT='ใส่ค่าของคุณ' --env PORT='ใส่ค่าของคุณ' --env LOG_LEVEL='ใส่ค่าของคุณ' --env HOST='ใส่ค่าของคุณ' --env PUBLIC_BASE_URL='ใส่ค่าของคุณ' -- npx -y patents-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"patents": {
"command": "npx",
"args": [
"-y",
"patents-mcp-server"
],
"env": {
"USPTO_API_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_SECRET": "ใส่ค่าของคุณ",
"GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
"GOOGLE_CREDENTIALS_JSON": "ใส่ค่าของคุณ",
"GOOGLE_CLOUD_PROJECT": "ใส่ค่าของคุณ",
"TRANSPORT": "ใส่ค่าของคุณ",
"PORT": "ใส่ค่าของคุณ",
"LOG_LEVEL": "ใส่ค่าของคุณ",
"HOST": "ใส่ค่าของคุณ",
"PUBLIC_BASE_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"patents": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"patents-mcp-server"
],
"env": {
"USPTO_API_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_KEY": "ใส่ค่าของคุณ",
"EPO_CONSUMER_SECRET": "ใส่ค่าของคุณ",
"GOOGLE_APPLICATION_CREDENTIALS": "ใส่ค่าของคุณ",
"GOOGLE_CREDENTIALS_JSON": "ใส่ค่าของคุณ",
"GOOGLE_CLOUD_PROJECT": "ใส่ค่าของคุณ",
"TRANSPORT": "ใส่ค่าของคุณ",
"PORT": "ใส่ค่าของคุณ",
"LOG_LEVEL": "ใส่ค่าของคุณ",
"HOST": "ใส่ค่าของคุณ",
"PUBLIC_BASE_URL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
GOOGLE_APPLICATION_CREDENTIALS envGOOGLE_CLOUD_PROJECT envTRANSPORT envPORT envLOG_LEVEL envHOST envPUBLIC_BASE_URL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 9 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub sapientsai ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: USPTO_API_KEY, EPO_CONSUMER_KEY, EPO_CONSUMER_SECRET, GOOGLE_CREDENTIALS_JSON
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.2.3) เข้า registry 12 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Lintsure, Atviri teisės aktai – Lithuanian law, Capacidad de red eléctrica España (CNMC)
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Compliance readiness checks for code: EU AI Act, GDPR, SOC 2, ISO 27001. Local. Not legal advice.
Lithuanian laws article by article, with whether each applies today, past versions and search
Spanish grid capacity (CNMC) plus site and route constraints: legal zones, permits, zoning.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
FastMCP TypeScript patent intelligence MCP server. 45 tools across USPTO, EPO, and Google Patents for IP landscape analysis, freedom-to-operate research, and patent monitoring.
Note: PatentsView support was removed in May 2026 — its API host
search.patentsview.orgwas decommissioned on 2026-03-20 when PatentsView migrated to USPTO ODP as bulk-download datasets only (no live API replacement). US full-text search is now available via Google BigQuery; bibliographic data via USPTO ODP. Seedocs/MCP_PLAN-PatentsView-Rehoming_2026-05-30.mdfor the options analysis.
| Source | Tools | Key Capability |
|---|---|---|
| USPTO ODP | 30 | Applications, document PDF download, PTAB, citations, litigation, office actions |
| EPO OPS | 8 | INPADOC patent families, legal status across ~44 offices, claims/descriptions |
| Google BigQuery | 4 | Full-text search across 90M+ patents, citation networks, CPC analytics |
Tools only register when their required API keys are configured — no broken tools cluttering the MCP client.
pnpm install
cp .env.example .env # Add your API keys pnpm build
node dist/index.js
TRANSPORT=httpStream PORT=8080 node dist/index.js
{
"mcpServers": { "patents": { "command": "node", "args": ["dist/index.js"], "env": { "USPTO_API_KEY": "${USPTO_API_KEY}", "EPO_CONSUMER_KEY": "${EPO_CONSUMER_KEY}", "EPO_CONSUMER_SECRET": "${EPO_CONSUMER_SECRET}", "GOOGLE_APPLICATION_CREDENTIALS": "${GOOGLE_APPLICATION_CREDENTIALS}", "GOOGLE_CLOUD_PROJECT": "${GOOGLE_CLOUD_PROJECT}" } } } }
npx @modelcontextprotocol/inspector node dist/index.js
| Source | Env Var(s) | Where to Get |
|---|---|---|
| USPTO ODP | USPTO_API_KEY | data.uspto.gov → MyODP |
| EPO OPS | EPO_CONSUMER_KEY + EPO_CONSUMER_SECRET | developers.epo.org |
| BigQuery | GOOGLE_APPLICATION_CREDENTIALS + GOOGLE_CLOUD_PROJECT | GCP Console (service account with BigQuery roles) |
Missing API keys disable related tools gracefully — the server still starts with whatever sources are configured. Use the check-api-status tool to verify which sources are available.
This project uses envpkt for credential management. API keys are stored as sealed (age-encrypted) packets and non-secret config as [env.*] entries in envpkt.toml. The .mcp.json references env vars via ${VAR} syntax, which are loaded by eval "$(envpkt env export)" in your shell profile.
GOOGLE_APPLICATION_CREDENTIALS supports tilde (~) and environment variable ($HOME, ${HOME}) expansion via functype-os. Use paths like ~/.config/gcloud/key.json instead of absolute paths.
Official USPTO Open Data Portal — applications, prosecution history, assignments, documents.
odp-search-applications — Search patent applications (2001+)odp-get-application / metadata / continuity / assignment / adjustment / attorney / foreign-priority / transactions / documentsodp-download-document — Download a file-wrapper document as a PDF (proxies the authenticated fetch through the server's key)odp-search-datasets / get-dataset — Bulk data productsPost-grant proceedings — IPR, PGR, CBM, ex parte appeals.
ptab-search-proceedings / get-proceeding / get-documentsptab-search-decisions / get-decisionptab-search-appeals / get-appealPatent citations and litigation data.
citations-get-enriched / search / get-metricslitigation-search / get-case / get-patentEuropean Patent Office — international coverage, INPADOC families, legal status.
epo-search-patents — CQL search (title, abstract, applicant, inventor, CPC, date)epo-get-biblio / abstract / claims / description — Patent document sectionsepo-family-lookup — INPADOC family members across all jurisdictionsepo-legal-status — Legal status across ~44 patent officesepo-number-convert — Convert between number formatsFull-text search across 90M+ patent documents. Replaces PPUBS for claims search.
bigquery-patent-search — Full-text search across titles and abstractsbigquery-patent-family — Family members by INPADOC family IDbigquery-citation-network — Citation graph (depth 1 or 2)bigquery-cpc-analytics — Filing statistics by CPC classificationUSPTO office action data (migrating to ODP in 2026).
office-action-get-text / search / get-citations / get-rejectionscheck-api-status — Health check all configured APIsget-cpc-info — CPC classification lookupget-status-code — USPTO status code meaningsSix workflow prompt templates for common patent analysis tasks:
| Prompt | Purpose |
|---|---|
prior_art_search | Multi-source prior art search workflow |
patent_validity | Structured validity analysis (102/103/112) |
competitor_portfolio | Competitor patent portfolio analysis |
ptab_research | PTAB proceedings research (IPR/PGR/CBM) |
freedom_to_operate | FTO analysis methodology |
patent_landscape | Technology area landscape mapping |
| URI | Description |
|---|---|
patents://cpc/{code} | CPC classification info |
patents://status-codes | USPTO status code definitions |
patents://sources | Data source overview |
patents://search-syntax | Query syntax guide (EPO CQL, ODP, BigQuery) |
pnpm validate # Format + lint + typecheck + test + build
pnpm test # Run tests pnpm build # Production build pnpm typecheck # Type check only pnpm codegen # Regenerate Zod schemas from OpenAPI specs pnpm fetch-specs # Re-download OpenAPI specs from upstream
Response schemas are generated from upstream OpenAPI specs using Hey API with the Zod plugin:
pnpm fetch-specs # Download USPTO ODP spec
pnpm codegen # Generate src/generated/odp/zod.gen.ts
Generated code is committed to the repo so CI doesn't need the codegen step.
Integration tests run against live APIs when credentials are available:
# Requires USPTO_API_KEY in env
pnpm test
Tests skip gracefully when API keys are absent.
Built with FastMCP + Zod + ts-builds + functype-os.
src/
├── index.ts # Entry point ├── server.ts # FastMCP instance ├── tools/ # 45 tools across 7 modules (conditional registration) ├── clients/ # API clients (base, ODP, EPO, BigQuery) ├── generated/ # Zod schemas from OpenAPI specs (Hey API codegen) ├── specs/ # Local copies of OpenAPI specs ├── resources/ # 4 MCP resources ├── prompts/ # 6 prompt templates └── lib/ # Config, retry, errors, patent number normalization
MIT
Sponsored by SapientsAI — Building agentic AI for businesses