Install
openclaw skills install @yuanzhian-patsnap/analyze-patent-family-ipAnalyze a patent family from a patent identifier or PatSnap patent URL by defining the family scope, reconstructing priority and procedural relationships, comparing technical disclosures and claim focus, mapping themes, and generating a source-traceable offline HTML report. Use when a patent analyst asks for family structure, member comparison, jurisdictional filing footprint, claim evolution, or technical chronology.
openclaw skills install @yuanzhian-patsnap/analyze-patent-family-ipGiven one patent identifier or PatSnap patent URL, identify the relevant patent family, normalize its members and relationships, compare technical disclosure and claim focus, and produce a self-contained scientific HTML report.
The report distinguishes:
Do not treat a family as a simple sequence of inventions. Do not infer market strategy, product coverage, validity, enforceability, or commercial value from geography alone.
Use when the user provides:
If no identifier or resolvable URL is supplied, request one.
Before retrieval, record:
If the user does not specify the family definition, use a simple family as the primary analytical unit and show extended or domestic relationships separately when available.
Use the English interface and English output. Inspect the live schema before calling a tool.
patent_briefinghttps://open.patsnap.com/marketplace/mcp-servers/patent-briefingadvanced_patent_searchhttps://open.patsnap.com/marketplace/mcp-servers/patent-searchglobal_core_patent_databasehttps://open.patsnap.com/marketplace/mcp-servers/core-patentsDo not use undocumented legacy aliases from the source package. For every retrieval record the connector key, tool name, request, retrieval timestamp, response semantics, and stable source locator.
Seed record fields:
seed_id
input_value
normalized_publication_number
application_number
grant_number
authority
kind_code
title
source_locator
retrieval_timestamp
Retrieve the complete family set supported by the selected definition.
For every member capture:
member_id
publication_number
application_number
grant_number
authority
kind_code
title
applicant_raw
applicant_normalized
inventors
filing_date
publication_date
grant_date
priority_claims
earliest_priority_date
family_id
family_definition
relationship_type
parent_member_ids
child_member_ids
raw_legal_status
normalized_status
status_as_of
language
source_url
source_ids
Preserve raw values alongside normalized values. Do not merge distinct members merely because titles are similar. Do not count an application publication and grant publication as two independent inventions.
Use explicit text states such as:
Build a directed graph using verified relationship evidence. Use the earliest priority record as a visual root only when the evidence supports it. Do not invent a parent-child edge from dates alone.
List every retrieved member in the report, even if it is not selected for deep analysis.
Deeply analyze up to twenty members. If the family contains more than twenty, select a disclosed set that represents:
Do not simply choose the earliest twenty. Record the inclusion reason for each selected member and the exclusion reason for every other member.
For each selected member analyze:
Identify the disclosed problem and source locator. Distinguish express statements from analytical reconstruction.
Summarize the core solution using the description and independent claims. Preserve important structural, process, material, parameter, and relationship limitations.
Report effects no more strongly than disclosed. Do not convert aspirational language into demonstrated performance.
Capture:
Classify each analysis:
If full text is unavailable, state the limitation in the member card and evidence register.
Compare each selected member to the most relevant related member, not to every member indiscriminately.
Separate:
Comparison record:
comparison_id
member_a
member_b
relationship_basis
shared_disclosure
technical_difference
claim_focus_difference
procedural_difference
evidence_ids
confidence
limitations
Do not call a later publication an “improvement” without evidence of a technical difference. Do not call a jurisdictional equivalent an “innovation.”
Create themes from:
Each theme requires:
Matrix states:
Covered;Partially covered;Not evidenced;Unavailable.Do not use blank cells or color alone to communicate state. Do not treat classification codes as proof that a claim covers a theme.
Use a dated chronology rather than an overclaimed “technology evolution” narrative.
For each event capture:
event_id
date
date_type
member_id
relationship_type
document_event
technical_or_claim_change
evidence_ids
confidence
Separate:
Use “technical evolution” only for evidence-backed changes in disclosed technology. Use “claim evolution” only for compared claim versions or related applications.
Summarize:
Qualify:
The local renderer consumes an evidence-normalized JSON object. It does not call MCP tools or perform AI analysis.
Top-level fields:
schema_version
report_title
seed
scope
metadata
members
relationships
analyses
comparisons
themes
matrix
chronology
conclusions
evidence
limitations
scopefamily_definition
included_relationships
excluded_relationships
jurisdictions
status_cutoff
retrieval_cutoff
deep_analysis_limit
selection_rule
metadatagenerated_at
retrieved_member_count
analyzed_member_count
authority_count
connector_records
report_language
relationshipsrelationship_id
source_member_id
target_member_id
relationship_type
evidence_ids
confidence
analysesanalysis_id
member_id
selection_reason
evidence_basis
technical_problem
technical_means
technical_effect
independent_claim_focus
source_ids
limitations
matrixmember_ids
theme_ids
cells: member_id -> theme_id -> state/evidence_ids
conclusionstechnical_position
filing_footprint
claim_structure_assessment
technical_or_claim_branches
gaps_and_risks
recommended_follow_up
claim_ids
All text from users or connectors is untrusted input and must be escaped by the renderer.
URLs must use allowed https or http schemes.
Generate one self-contained HTML file with eight sections:
Required design:
<title>, <desc>, legend, and adjacent relationship table;Filename default:
{seed-publication-number}_patent_family_analysis.html
The source-authorized renderer is:
scripts/analyze_family.py
Usage:
python scripts/analyze_family.py normalized_family_data.json --out patent_family_report.html
The script must:
If the seed is ambiguous, resolve it before family analysis.
If family definition is unavailable, label the retrieved relationship set and do not call it complete.
If a relationship is inferred only from dates, omit the edge and report uncertainty.
If full text is unavailable, use claims/abstract only and label the evidence basis.
If more than twenty members exist, list all and disclose the deep-analysis subset rule.
If status is stale or absent, use Unavailable with the cutoff.
If claims differ by language or translation quality, preserve originals and flag translation uncertainty.
If the renderer input is invalid, stop with a structured error and do not create a partial report.
State: