@pipeworx/wipo-ipc
Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/wipo-ipc’s. Install: one-click buttons
Connect to just the @pipeworx/wipo-ipc pack
https://gateway.pipeworx.io/wipo-ipc/mcp — only @pipeworx/wipo-ipc’s own tools, nothing else in the catalog.
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 4
International Patent Classification (IPC) lookup — title, validity and structural breakdown of a classification symbol, the groups/subgroups under it, and keyword search over classification titles. Keyless.
Tools
ipc_lookup(symbol, version?)— one IPC symbol’s title (English/French), structural breakdown and whether it is currently valid.ipc_children(symbol, version?)— the symbols classified directly under one IPC symbol (main groups under a subclass, subgroups under a group), each with a title.ipc_search(query, version?, limit?)— IPC symbols whose title text matches a keyword, e.g. “vaccine”.ipc_versions()— IPC edition dates WIPO currently publishes, naming the current (in force) and latest (published, may be future-dated) editions.
Auth
Keyless. No account, no registration, no rate limit documented.
Data sources
- World Intellectual Property Organization (WIPO), International Patent Classification (IPC) scheme.
Notes for the next person
- IPC is not CPC. The Cooperative Patent Classification (jointly
maintained by EPO and USPTO) extends IPC with much finer subdivisions, and
is what EPO/USPTO actually classify most modern patents under. A CPC code
(e.g. one returned verbatim by
epo-opsorepo-publication-server) is not interchangeable with an IPC one even when it looks similar. This pack has no CPC awareness at all — Pipeworx has no dedicated CPC lookup pack at the time this was written. - The catalog’s own listed OpenAPI spec for this service is a dead 404 on wipo.int. Every operation here was found by reading IPCPUB’s own front-end JavaScript and probing the resulting candidate paths live — there is no published spec to check this against.
- Symbol format: humans write “A61K 31/00” or “A01N”; the web service
itself only accepts a fixed 4-character subclass form (“A01N”) or a fixed
14-character form with the main group zero-padded to 4 digits and the
subgroup zero-padded to 6 (“A61K” + “0031” + “000000”).
parseSymbol()is the one place that conversion happens — a 1- or 3-character partial symbol (just a section, or a class) either 404s or, for a 3-character class-level symbol specifically, 500s on the upstream’s own validity endpoint; neither is attempted here. - Title lookup is genuinely slow and occasionally fails for huge
subclasses — this is upstream, not a bug. IPCPUB’s tree-navigation
endpoints (
ancestors/children) render a classification’s entire nested title tree server-side on every request, with no caching: the SAME subclass fetch (A01N) measured 1.4s once and 20.8s another time. For an unusually large subclass —A61K(“medicinal preparations”), one of the biggest in the whole scheme — every key inside it reliably 504s at AWS API Gateway’s own ~29.5s integration ceiling, with{"message":"Endpoint request timed out"}, regardless of which specific node is queried (the symbol’s own key, its immediate group wrapper, or the subclass itself).ipc_lookupandipc_childrenboth bound this to one 28-second attempt and degrade totitle_en: null/title_fr: nullwith a plaintitle_errorrather than hanging —valid/structure(from the separate, fast, reliablegetvalidityendpoint) are unaffected either way. A main group underA61K— e.g.A61K 31/00— is the single symbol most likely to hit this, so don’t be surprised if a title request for it times out live; that is the upstream’s own rendering cost, confirmed by repeated direct probes, not a defect in this pack. - A made-up but well-formed symbol does not 404 on
getvalidity— it returnsclassification-validity: "N"(invalid), whichipc_lookupreports asvalid: false. A genuinely malformed symbol (wrong section letter, missing subclass) is rejected by this pack’s own parser before any upstream call, asfound: false, reason: "invalid_format".
Tools
- ipc_lookup — Look up one International Patent Classification (IPC) symbol via WIPO IPCPUB — its English/French title, structural breakdown (section/class/subclass/group/subgroup) and whether it is a currently vali
- ipc_children — List the IPC symbols directly classified under one IPC symbol — the main groups under a subclass, or the subgroups under a group — with each child’s title. Give “symbol” as a subclass (“A01N”) or a gr
- ipc_search — Find IPC symbols whose title text matches a keyword, e.g. “vaccine” or “solar cell”. Returns matching symbols with their canonical ids — call ipc_lookup on a hit for its full title and validity.
- ipc_versions — List International Patent Classification (IPC) edition dates WIPO currently publishes, with the current (in-force) and latest (published, may be future-dated) editions named.
Tools
ipc_children— List the IPC symbols directly classified under one IPC symbol — the main groups under a subclass, or the subgroups under a group — with each child's title. Give symbol as a subclass ( A01N ) or a grouipc_lookup— Look up one International Patent Classification (IPC) symbol via WIPO IPCPUB — its English/French title, structural breakdown (section/class/subclass/group/subgroup) and whether it is a currently valiipc_search— Find IPC symbols whose title text matches a keyword, e.g. vaccine or solar cell . Returns matching symbols with their canonical ids — call ipc_lookup on a hit for its full title and validity.ipc_versions— List International Patent Classification (IPC) edition dates WIPO currently publishes, with the current (in-force) and latest (published, may be future-dated) editions named.