@radsoft/markbase-mcp 2026.11.2 → 2026.11.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/index.js +21 -0
- package/package.json +1 -1
- package/server.json +2 -2
package/README.md
CHANGED
|
@@ -40,12 +40,18 @@ claude mcp add markbase --env MARKBASE_API_KEY=mb_your_key -- npx -y @radsoft/ma
|
|
|
40
40
|
| Tool | What it does |
|
|
41
41
|
|------|--------------|
|
|
42
42
|
| `check_trademark_availability` | Screen a proposed name against the register, ranked by similarity with a risk level |
|
|
43
|
+
| `screen_trademark_names` | Screen 1–25 names in input order, with a shared optional class; Launch or Scale required |
|
|
43
44
|
| `search_trademarks` | Typo-tolerant search across 14M+ marks, filterable by class and status |
|
|
44
45
|
| `get_trademark` | Full record for one mark by serial number |
|
|
45
46
|
| `get_trademark_timeline` | Prosecution history — filing, publication, office actions, registration |
|
|
46
47
|
| `search_by_owner` | Every mark held by a company or person |
|
|
47
48
|
| `list_trademark_classes` | All 45 Nice classes, so the model can pick the right one before screening |
|
|
48
49
|
|
|
50
|
+
Bulk screening counts every submitted name toward monthly and per-minute limits,
|
|
51
|
+
including duplicates. Invalid or rejected batches do not consume monthly quota.
|
|
52
|
+
Accepted batches consume their full name count even if a search fails; the tool
|
|
53
|
+
does not retry automatically.
|
|
54
|
+
|
|
49
55
|
## Why the class matters
|
|
50
56
|
|
|
51
57
|
Trademark rights are scoped to goods and services. DELTA coexists as an airline, a
|
package/dist/index.js
CHANGED
|
@@ -87,6 +87,27 @@ server.registerTool("check_trademark_availability", {
|
|
|
87
87
|
return fail(err);
|
|
88
88
|
}
|
|
89
89
|
});
|
|
90
|
+
server.registerTool("screen_trademark_names", {
|
|
91
|
+
title: "Screen a batch of proposed names",
|
|
92
|
+
description: "Screen 1–25 proposed names against the US register using a Launch or Scale key. Each submitted name consumes one monthly request, including duplicate names. An admitted batch consumes quota even if a search fails; do not retry automatically. Results keep input order. This is preliminary screening, not legal advice or a registration guarantee.",
|
|
93
|
+
inputSchema: {
|
|
94
|
+
names: z.array(z.string().trim().min(1).max(200)).min(1).max(25).describe("Proposed names in the order to screen"),
|
|
95
|
+
trademark_class: z.string().regex(/^\d{1,3}$/).refine((value) => Number(value) >= 1 && Number(value) <= 45).optional()
|
|
96
|
+
.describe("Shared Nice class 1–45 for the goods or services"),
|
|
97
|
+
limit: z.number().int().min(1).max(50).optional().describe("Maximum matches per name; default 20"),
|
|
98
|
+
},
|
|
99
|
+
}, async ({ names, trademark_class, limit }) => {
|
|
100
|
+
try {
|
|
101
|
+
const data = await request("/clearance/batch", {
|
|
102
|
+
method: "POST",
|
|
103
|
+
body: JSON.stringify({ marks: names, class: trademark_class ? padClass(trademark_class) : undefined, limit }),
|
|
104
|
+
});
|
|
105
|
+
return ok({ ...data, disclaimer: "Screening signal only. Consult a trademark attorney before adopting a name." });
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
return fail(error);
|
|
109
|
+
}
|
|
110
|
+
});
|
|
90
111
|
server.registerTool("get_trademark", {
|
|
91
112
|
title: "Get a trademark by serial number",
|
|
92
113
|
description: "Fetch the complete record for one US trademark by its USPTO serial number, including owner, status, classes, and goods/services.",
|
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -9,12 +9,12 @@
|
|
|
9
9
|
"source": "github",
|
|
10
10
|
"subfolder": "mcp"
|
|
11
11
|
},
|
|
12
|
-
"version": "2026.11.
|
|
12
|
+
"version": "2026.11.3",
|
|
13
13
|
"packages": [
|
|
14
14
|
{
|
|
15
15
|
"registryType": "npm",
|
|
16
16
|
"identifier": "@radsoft/markbase-mcp",
|
|
17
|
-
"version": "2026.11.
|
|
17
|
+
"version": "2026.11.3",
|
|
18
18
|
"transport": {
|
|
19
19
|
"type": "stdio"
|
|
20
20
|
},
|