@purplesquirrel/watsonx-mcp-server 1.0.0
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/.github/dependabot.yml +21 -0
- package/.github/workflows/ci.yml +36 -0
- package/LICENSE +21 -0
- package/README.md +245 -0
- package/TROUBLESHOOTING.md +176 -0
- package/batch-processor.js +345 -0
- package/batch-results/classify-1765765720041.json +106 -0
- package/batch-results/full-analysis-1765765676586.json +193 -0
- package/docs/index.html +572 -0
- package/docs/specs.html +613 -0
- package/document-analyzer.js +353 -0
- package/embedding-index.js +318 -0
- package/embeddings-index.json +38761 -0
- package/index.js +551 -0
- package/linkedin-post.md +92 -0
- package/package.json +28 -0
- package/test-watsonx.js +29 -0
package/docs/index.html
ADDED
|
@@ -0,0 +1,572 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>watsonx MCP Server - Claude + IBM watsonx.ai Integration</title>
|
|
7
|
+
<meta name="description" content="MCP server enabling Claude to delegate tasks to IBM watsonx.ai foundation models (Granite, Llama, Mistral)">
|
|
8
|
+
<meta property="og:title" content="watsonx MCP Server">
|
|
9
|
+
<meta property="og:description" content="Two-agent AI system: Claude + IBM watsonx.ai via Model Context Protocol">
|
|
10
|
+
<meta property="og:image" content="https://purplesquirrelmedia.github.io/watsonx-mcp-server/preview.png">
|
|
11
|
+
<meta property="og:url" content="https://purplesquirrelmedia.github.io/watsonx-mcp-server/">
|
|
12
|
+
<meta name="twitter:card" content="summary_large_image">
|
|
13
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
14
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
15
|
+
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap" rel="stylesheet">
|
|
16
|
+
<style>
|
|
17
|
+
:root {
|
|
18
|
+
--ibm-blue: #0f62fe;
|
|
19
|
+
--ibm-blue-hover: #0353e9;
|
|
20
|
+
--carbon-gray-100: #161616;
|
|
21
|
+
--carbon-gray-90: #262626;
|
|
22
|
+
--carbon-gray-80: #393939;
|
|
23
|
+
--carbon-gray-70: #525252;
|
|
24
|
+
--carbon-gray-50: #8d8d8d;
|
|
25
|
+
--carbon-gray-30: #c6c6c6;
|
|
26
|
+
--carbon-gray-10: #f4f4f4;
|
|
27
|
+
--purple: #8a3ffc;
|
|
28
|
+
--cyan: #1192e8;
|
|
29
|
+
--teal: #009d9a;
|
|
30
|
+
--green: #24a148;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
* {
|
|
34
|
+
margin: 0;
|
|
35
|
+
padding: 0;
|
|
36
|
+
box-sizing: border-box;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
body {
|
|
40
|
+
font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif;
|
|
41
|
+
background: var(--carbon-gray-100);
|
|
42
|
+
color: var(--carbon-gray-10);
|
|
43
|
+
line-height: 1.6;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.hero {
|
|
47
|
+
min-height: 100vh;
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: column;
|
|
50
|
+
justify-content: center;
|
|
51
|
+
padding: 2rem;
|
|
52
|
+
background: linear-gradient(135deg, var(--carbon-gray-100) 0%, var(--carbon-gray-90) 100%);
|
|
53
|
+
position: relative;
|
|
54
|
+
overflow: hidden;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.hero::before {
|
|
58
|
+
content: '';
|
|
59
|
+
position: absolute;
|
|
60
|
+
top: -50%;
|
|
61
|
+
right: -20%;
|
|
62
|
+
width: 80%;
|
|
63
|
+
height: 200%;
|
|
64
|
+
background: radial-gradient(ellipse at center, rgba(15, 98, 254, 0.15) 0%, transparent 70%);
|
|
65
|
+
pointer-events: none;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.container {
|
|
69
|
+
max-width: 1200px;
|
|
70
|
+
margin: 0 auto;
|
|
71
|
+
position: relative;
|
|
72
|
+
z-index: 1;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.badge {
|
|
76
|
+
display: inline-flex;
|
|
77
|
+
align-items: center;
|
|
78
|
+
gap: 0.5rem;
|
|
79
|
+
background: var(--carbon-gray-80);
|
|
80
|
+
padding: 0.5rem 1rem;
|
|
81
|
+
border-radius: 4px;
|
|
82
|
+
font-size: 0.875rem;
|
|
83
|
+
margin-bottom: 1.5rem;
|
|
84
|
+
font-family: 'IBM Plex Mono', monospace;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.badge-dot {
|
|
88
|
+
width: 8px;
|
|
89
|
+
height: 8px;
|
|
90
|
+
background: var(--green);
|
|
91
|
+
border-radius: 50%;
|
|
92
|
+
animation: pulse 2s infinite;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
@keyframes pulse {
|
|
96
|
+
0%, 100% { opacity: 1; }
|
|
97
|
+
50% { opacity: 0.5; }
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
h1 {
|
|
101
|
+
font-size: clamp(2.5rem, 6vw, 4rem);
|
|
102
|
+
font-weight: 600;
|
|
103
|
+
margin-bottom: 1rem;
|
|
104
|
+
line-height: 1.2;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
h1 span {
|
|
108
|
+
color: var(--ibm-blue);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.subtitle {
|
|
112
|
+
font-size: 1.25rem;
|
|
113
|
+
color: var(--carbon-gray-50);
|
|
114
|
+
max-width: 600px;
|
|
115
|
+
margin-bottom: 2rem;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.cta-buttons {
|
|
119
|
+
display: flex;
|
|
120
|
+
gap: 1rem;
|
|
121
|
+
flex-wrap: wrap;
|
|
122
|
+
margin-bottom: 3rem;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.btn {
|
|
126
|
+
display: inline-flex;
|
|
127
|
+
align-items: center;
|
|
128
|
+
gap: 0.5rem;
|
|
129
|
+
padding: 0.875rem 1.5rem;
|
|
130
|
+
border-radius: 0;
|
|
131
|
+
font-size: 1rem;
|
|
132
|
+
font-weight: 500;
|
|
133
|
+
text-decoration: none;
|
|
134
|
+
transition: all 0.15s ease;
|
|
135
|
+
font-family: 'IBM Plex Sans', sans-serif;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.btn-primary {
|
|
139
|
+
background: var(--ibm-blue);
|
|
140
|
+
color: white;
|
|
141
|
+
border: none;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.btn-primary:hover {
|
|
145
|
+
background: var(--ibm-blue-hover);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.btn-secondary {
|
|
149
|
+
background: transparent;
|
|
150
|
+
color: white;
|
|
151
|
+
border: 1px solid var(--carbon-gray-70);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.btn-secondary:hover {
|
|
155
|
+
background: var(--carbon-gray-80);
|
|
156
|
+
border-color: var(--carbon-gray-50);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.architecture {
|
|
160
|
+
background: var(--carbon-gray-90);
|
|
161
|
+
border: 1px solid var(--carbon-gray-80);
|
|
162
|
+
padding: 2rem;
|
|
163
|
+
margin-top: 2rem;
|
|
164
|
+
font-family: 'IBM Plex Mono', monospace;
|
|
165
|
+
font-size: 0.875rem;
|
|
166
|
+
overflow-x: auto;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.architecture pre {
|
|
170
|
+
color: var(--carbon-gray-30);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.architecture .highlight {
|
|
174
|
+
color: var(--ibm-blue);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.architecture .purple {
|
|
178
|
+
color: var(--purple);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.architecture .teal {
|
|
182
|
+
color: var(--teal);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.features {
|
|
186
|
+
padding: 6rem 2rem;
|
|
187
|
+
background: var(--carbon-gray-90);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
.features h2 {
|
|
191
|
+
font-size: 2rem;
|
|
192
|
+
margin-bottom: 3rem;
|
|
193
|
+
text-align: center;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
.feature-grid {
|
|
197
|
+
display: grid;
|
|
198
|
+
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
199
|
+
gap: 1.5rem;
|
|
200
|
+
max-width: 1200px;
|
|
201
|
+
margin: 0 auto;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
.feature-card {
|
|
205
|
+
background: var(--carbon-gray-100);
|
|
206
|
+
border: 1px solid var(--carbon-gray-80);
|
|
207
|
+
padding: 1.5rem;
|
|
208
|
+
transition: border-color 0.15s ease;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.feature-card:hover {
|
|
212
|
+
border-color: var(--ibm-blue);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.feature-icon {
|
|
216
|
+
width: 48px;
|
|
217
|
+
height: 48px;
|
|
218
|
+
background: var(--carbon-gray-80);
|
|
219
|
+
display: flex;
|
|
220
|
+
align-items: center;
|
|
221
|
+
justify-content: center;
|
|
222
|
+
margin-bottom: 1rem;
|
|
223
|
+
font-size: 1.5rem;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.feature-card h3 {
|
|
227
|
+
font-size: 1.125rem;
|
|
228
|
+
margin-bottom: 0.5rem;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
.feature-card p {
|
|
232
|
+
color: var(--carbon-gray-50);
|
|
233
|
+
font-size: 0.875rem;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
.code-section {
|
|
237
|
+
padding: 6rem 2rem;
|
|
238
|
+
background: var(--carbon-gray-100);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.code-section h2 {
|
|
242
|
+
font-size: 2rem;
|
|
243
|
+
margin-bottom: 1rem;
|
|
244
|
+
text-align: center;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
.code-section .subtitle {
|
|
248
|
+
text-align: center;
|
|
249
|
+
margin: 0 auto 3rem;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
.code-block {
|
|
253
|
+
background: var(--carbon-gray-90);
|
|
254
|
+
border: 1px solid var(--carbon-gray-80);
|
|
255
|
+
max-width: 800px;
|
|
256
|
+
margin: 0 auto;
|
|
257
|
+
overflow: hidden;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
.code-header {
|
|
261
|
+
background: var(--carbon-gray-80);
|
|
262
|
+
padding: 0.75rem 1rem;
|
|
263
|
+
display: flex;
|
|
264
|
+
align-items: center;
|
|
265
|
+
gap: 0.5rem;
|
|
266
|
+
font-family: 'IBM Plex Mono', monospace;
|
|
267
|
+
font-size: 0.75rem;
|
|
268
|
+
color: var(--carbon-gray-50);
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
.code-dots {
|
|
272
|
+
display: flex;
|
|
273
|
+
gap: 6px;
|
|
274
|
+
margin-right: 1rem;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
.code-dots span {
|
|
278
|
+
width: 12px;
|
|
279
|
+
height: 12px;
|
|
280
|
+
border-radius: 50%;
|
|
281
|
+
background: var(--carbon-gray-70);
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.code-content {
|
|
285
|
+
padding: 1.5rem;
|
|
286
|
+
font-family: 'IBM Plex Mono', monospace;
|
|
287
|
+
font-size: 0.875rem;
|
|
288
|
+
line-height: 1.8;
|
|
289
|
+
overflow-x: auto;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
.code-content .comment {
|
|
293
|
+
color: var(--carbon-gray-50);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
.code-content .keyword {
|
|
297
|
+
color: var(--purple);
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
.code-content .string {
|
|
301
|
+
color: var(--teal);
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.code-content .function {
|
|
305
|
+
color: var(--ibm-blue);
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.models-section {
|
|
309
|
+
padding: 6rem 2rem;
|
|
310
|
+
background: var(--carbon-gray-90);
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.models-section h2 {
|
|
314
|
+
font-size: 2rem;
|
|
315
|
+
margin-bottom: 3rem;
|
|
316
|
+
text-align: center;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
.models-grid {
|
|
320
|
+
display: grid;
|
|
321
|
+
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
|
|
322
|
+
gap: 1rem;
|
|
323
|
+
max-width: 1000px;
|
|
324
|
+
margin: 0 auto;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
.model-tag {
|
|
328
|
+
background: var(--carbon-gray-100);
|
|
329
|
+
border: 1px solid var(--carbon-gray-80);
|
|
330
|
+
padding: 1rem;
|
|
331
|
+
text-align: center;
|
|
332
|
+
font-family: 'IBM Plex Mono', monospace;
|
|
333
|
+
font-size: 0.875rem;
|
|
334
|
+
transition: all 0.15s ease;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
.model-tag:hover {
|
|
338
|
+
border-color: var(--ibm-blue);
|
|
339
|
+
transform: translateY(-2px);
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
.model-tag .provider {
|
|
343
|
+
color: var(--carbon-gray-50);
|
|
344
|
+
font-size: 0.75rem;
|
|
345
|
+
display: block;
|
|
346
|
+
margin-top: 0.25rem;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
footer {
|
|
350
|
+
padding: 3rem 2rem;
|
|
351
|
+
background: var(--carbon-gray-100);
|
|
352
|
+
border-top: 1px solid var(--carbon-gray-80);
|
|
353
|
+
text-align: center;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
footer p {
|
|
357
|
+
color: var(--carbon-gray-50);
|
|
358
|
+
font-size: 0.875rem;
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
footer a {
|
|
362
|
+
color: var(--ibm-blue);
|
|
363
|
+
text-decoration: none;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
footer a:hover {
|
|
367
|
+
text-decoration: underline;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
.logo-row {
|
|
371
|
+
display: flex;
|
|
372
|
+
align-items: center;
|
|
373
|
+
justify-content: center;
|
|
374
|
+
gap: 2rem;
|
|
375
|
+
margin: 2rem 0;
|
|
376
|
+
flex-wrap: wrap;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
.logo-row img {
|
|
380
|
+
height: 40px;
|
|
381
|
+
opacity: 0.8;
|
|
382
|
+
filter: grayscale(100%) brightness(2);
|
|
383
|
+
transition: all 0.15s ease;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
.logo-row img:hover {
|
|
387
|
+
opacity: 1;
|
|
388
|
+
filter: none;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
@media (max-width: 768px) {
|
|
392
|
+
.hero {
|
|
393
|
+
padding: 4rem 1.5rem;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
.architecture {
|
|
397
|
+
font-size: 0.75rem;
|
|
398
|
+
padding: 1rem;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
.cta-buttons {
|
|
402
|
+
flex-direction: column;
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
.btn {
|
|
406
|
+
width: 100%;
|
|
407
|
+
justify-content: center;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
</style>
|
|
411
|
+
</head>
|
|
412
|
+
<body>
|
|
413
|
+
<section class="hero">
|
|
414
|
+
<div class="container">
|
|
415
|
+
<div class="badge">
|
|
416
|
+
<span class="badge-dot"></span>
|
|
417
|
+
Model Context Protocol
|
|
418
|
+
</div>
|
|
419
|
+
<h1>watsonx <span>MCP</span> Server</h1>
|
|
420
|
+
<p class="subtitle">
|
|
421
|
+
Enable Claude to delegate tasks to IBM watsonx.ai foundation models.
|
|
422
|
+
Build powerful two-agent AI systems with Granite, Llama, and Mistral models.
|
|
423
|
+
</p>
|
|
424
|
+
<div class="cta-buttons">
|
|
425
|
+
<a href="https://github.com/PurpleSquirrelMedia/watsonx-mcp-server" class="btn btn-primary">
|
|
426
|
+
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
|
|
427
|
+
View on GitHub
|
|
428
|
+
</a>
|
|
429
|
+
<a href="#quickstart" class="btn btn-secondary">
|
|
430
|
+
Quick Start Guide
|
|
431
|
+
</a>
|
|
432
|
+
</div>
|
|
433
|
+
|
|
434
|
+
<div class="architecture">
|
|
435
|
+
<pre>
|
|
436
|
+
<span class="purple">Claude Code (Opus 4.5)</span> <span class="highlight">Two-Agent Architecture</span>
|
|
437
|
+
│
|
|
438
|
+
│ MCP Protocol
|
|
439
|
+
▼
|
|
440
|
+
<span class="teal">┌─────────────────────────┐</span>
|
|
441
|
+
<span class="teal">│ watsonx MCP Server │</span> Tools:
|
|
442
|
+
<span class="teal">│ ─────────────────── │</span> • watsonx_generate
|
|
443
|
+
<span class="teal">│ Node.js + IBM SDK │</span> • watsonx_chat
|
|
444
|
+
<span class="teal">└───────────┬─────────────┘</span> • watsonx_embeddings
|
|
445
|
+
│ • watsonx_list_models
|
|
446
|
+
│ REST API
|
|
447
|
+
▼
|
|
448
|
+
<span class="highlight">┌─────────────────────────┐</span>
|
|
449
|
+
<span class="highlight">│ IBM watsonx.ai │</span> Foundation Models:
|
|
450
|
+
<span class="highlight">│ ─────────────────── │</span> • Granite (IBM)
|
|
451
|
+
<span class="highlight">│ us-south region │</span> • Llama 3 (Meta)
|
|
452
|
+
<span class="highlight">└─────────────────────────┘</span> • Mistral
|
|
453
|
+
</pre>
|
|
454
|
+
</div>
|
|
455
|
+
</div>
|
|
456
|
+
</section>
|
|
457
|
+
|
|
458
|
+
<section class="features">
|
|
459
|
+
<div class="container">
|
|
460
|
+
<h2>Available Tools</h2>
|
|
461
|
+
<div class="feature-grid">
|
|
462
|
+
<div class="feature-card">
|
|
463
|
+
<div class="feature-icon">📝</div>
|
|
464
|
+
<h3>watsonx_generate</h3>
|
|
465
|
+
<p>Generate text completions using IBM foundation models. Control temperature, top-p, top-k, and max tokens.</p>
|
|
466
|
+
</div>
|
|
467
|
+
<div class="feature-card">
|
|
468
|
+
<div class="feature-icon">💬</div>
|
|
469
|
+
<h3>watsonx_chat</h3>
|
|
470
|
+
<p>Multi-turn conversations with system prompts. Perfect for building chatbots and assistants.</p>
|
|
471
|
+
</div>
|
|
472
|
+
<div class="feature-card">
|
|
473
|
+
<div class="feature-icon">🧠</div>
|
|
474
|
+
<h3>watsonx_embeddings</h3>
|
|
475
|
+
<p>Generate vector embeddings for RAG pipelines, semantic search, and document similarity.</p>
|
|
476
|
+
</div>
|
|
477
|
+
<div class="feature-card">
|
|
478
|
+
<div class="feature-icon">📋</div>
|
|
479
|
+
<h3>watsonx_list_models</h3>
|
|
480
|
+
<p>Discover all available foundation models with their capabilities and providers.</p>
|
|
481
|
+
</div>
|
|
482
|
+
</div>
|
|
483
|
+
</div>
|
|
484
|
+
</section>
|
|
485
|
+
|
|
486
|
+
<section class="code-section" id="quickstart">
|
|
487
|
+
<div class="container">
|
|
488
|
+
<h2>Quick Start</h2>
|
|
489
|
+
<p class="subtitle">Add to your Claude Code configuration in ~/.claude.json</p>
|
|
490
|
+
|
|
491
|
+
<div class="code-block">
|
|
492
|
+
<div class="code-header">
|
|
493
|
+
<div class="code-dots">
|
|
494
|
+
<span></span>
|
|
495
|
+
<span></span>
|
|
496
|
+
<span></span>
|
|
497
|
+
</div>
|
|
498
|
+
~/.claude.json
|
|
499
|
+
</div>
|
|
500
|
+
<div class="code-content">
|
|
501
|
+
<span class="comment">// Add to mcpServers object</span>
|
|
502
|
+
{
|
|
503
|
+
<span class="string">"mcpServers"</span>: {
|
|
504
|
+
<span class="string">"watsonx"</span>: {
|
|
505
|
+
<span class="string">"type"</span>: <span class="string">"stdio"</span>,
|
|
506
|
+
<span class="string">"command"</span>: <span class="string">"node"</span>,
|
|
507
|
+
<span class="string">"args"</span>: [<span class="string">"/path/to/watsonx-mcp-server/index.js"</span>],
|
|
508
|
+
<span class="string">"env"</span>: {
|
|
509
|
+
<span class="string">"WATSONX_API_KEY"</span>: <span class="string">"your-ibm-cloud-api-key"</span>,
|
|
510
|
+
<span class="string">"WATSONX_URL"</span>: <span class="string">"https://us-south.ml.cloud.ibm.com"</span>
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
</div>
|
|
516
|
+
</div>
|
|
517
|
+
</div>
|
|
518
|
+
</section>
|
|
519
|
+
|
|
520
|
+
<section class="models-section">
|
|
521
|
+
<div class="container">
|
|
522
|
+
<h2>Supported Models</h2>
|
|
523
|
+
<div class="models-grid">
|
|
524
|
+
<div class="model-tag">
|
|
525
|
+
granite-13b-chat-v2
|
|
526
|
+
<span class="provider">IBM</span>
|
|
527
|
+
</div>
|
|
528
|
+
<div class="model-tag">
|
|
529
|
+
granite-3-8b-instruct
|
|
530
|
+
<span class="provider">IBM</span>
|
|
531
|
+
</div>
|
|
532
|
+
<div class="model-tag">
|
|
533
|
+
llama-3-70b-instruct
|
|
534
|
+
<span class="provider">Meta</span>
|
|
535
|
+
</div>
|
|
536
|
+
<div class="model-tag">
|
|
537
|
+
llama-3-8b-instruct
|
|
538
|
+
<span class="provider">Meta</span>
|
|
539
|
+
</div>
|
|
540
|
+
<div class="model-tag">
|
|
541
|
+
mistral-large
|
|
542
|
+
<span class="provider">Mistral AI</span>
|
|
543
|
+
</div>
|
|
544
|
+
<div class="model-tag">
|
|
545
|
+
mixtral-8x7b-instruct
|
|
546
|
+
<span class="provider">Mistral AI</span>
|
|
547
|
+
</div>
|
|
548
|
+
<div class="model-tag">
|
|
549
|
+
slate-125m-english-rtrvr
|
|
550
|
+
<span class="provider">IBM (Embeddings)</span>
|
|
551
|
+
</div>
|
|
552
|
+
<div class="model-tag">
|
|
553
|
+
+ Many More
|
|
554
|
+
<span class="provider">Use watsonx_list_models</span>
|
|
555
|
+
</div>
|
|
556
|
+
</div>
|
|
557
|
+
</div>
|
|
558
|
+
</section>
|
|
559
|
+
|
|
560
|
+
<footer>
|
|
561
|
+
<p>
|
|
562
|
+
Built by <a href="https://github.com/PurpleSquirrelMedia">Matthew Karsten</a> |
|
|
563
|
+
<a href="https://github.com/PurpleSquirrelMedia/watsonx-mcp-server">Source Code</a> |
|
|
564
|
+
MIT License
|
|
565
|
+
</p>
|
|
566
|
+
<p style="margin-top: 0.5rem;">
|
|
567
|
+
Powered by <a href="https://www.ibm.com/watsonx">IBM watsonx.ai</a> and
|
|
568
|
+
<a href="https://modelcontextprotocol.io">Model Context Protocol</a>
|
|
569
|
+
</p>
|
|
570
|
+
</footer>
|
|
571
|
+
</body>
|
|
572
|
+
</html>
|