@@ -4,7 +4,8 @@ Connects MCP to major 3D printer APIs (Orca, Bambu, OctoPrint, Klipper, Duet, Re
4
4
5
5
[ What is an MCP Server?] ( https://www.anthropic.com/news/model-context-protocol )
6
6
7
- | <!-- --> | <!-- --> |
7
+ ## Characteristics
8
+ Attribute|Details|
8
9
| -| -|
9
10
** Image Source** |Official Image
10
11
|** Author** |[ DMontgomery40] ( https://github.com/DMontgomery40 )
@@ -13,62 +14,79 @@ Connects MCP to major 3D printer APIs (Orca, Bambu, OctoPrint, Klipper, Duet, Re
13
14
** Docker Image built by** |Docker Inc.
14
15
** Licence** |GNU General Public License v2.0
15
16
16
- ## Summary
17
- 1 . ` center_model ` Translate the model so its geometric center is at the origin (0,0,0).
18
- 1 . ` confirm_temperatures ` Confirm temperature settings in a G-code file
19
- 1 . ` extend_stl_base ` Extend the base of an STL file by a specified amount
20
- 1 . ` generate_stl_visualization ` Generate an SVG visualization of an STL file from multiple angles
21
- 1 . ` get_printer_status ` Get the current status of the 3D printer
22
- 1 . ` get_stl_info ` Get detailed information about an STL file
23
- 1 . ` lay_flat ` Attempt to rotate the model so its largest flat face lies on the XY plane (Z=0).
24
- 1 . ` merge_vertices ` Merge vertices in an STL file that are closer than the specified tolerance.
25
- 1 . ` modify_stl_section ` Apply a specific transformation to a selected section of an STL file
26
- 1 . ` print_3mf ` Print a 3MF file on a Bambu Lab printer, potentially overriding settings.
27
- 1 . ` process_and_print_stl ` Process an STL file (extend base), slice it, confirm temperatures, and start printing
28
- 1 . ` rotate_stl ` Rotate an STL model around specific axes
29
- 1 . ` scale_stl ` Scale an STL model uniformly or along specific axes
30
- 1 . ` slice_stl ` Slice an STL file to generate G-code
31
- 1 . ` translate_stl ` Move an STL model along specific axes
32
-
33
- ## Tools
34
-
35
- ### Tool ` center_model `
36
- Translate the model so its geometric center is at the origin (0,0,0).
37
-
38
- Parameter|Type|Description
17
+ ## Available Tools
18
+ Tools provided by this Server|Short Description
19
+ -|-
20
+ ` center_model ` |Translate the model so its geometric center is at the origin (0,0,0).|
21
+ ` confirm_temperatures ` |Confirm temperature settings in a G-code file|
22
+ ` extend_stl_base ` |Extend the base of an STL file by a specified amount|
23
+ ` generate_stl_visualization ` |Generate an SVG visualization of an STL file from multiple angles|
24
+ ` get_printer_status ` |Get the current status of the 3D printer|
25
+ ` get_stl_info ` |Get detailed information about an STL file|
26
+ ` lay_flat ` |Attempt to rotate the model so its largest flat face lies on the XY plane (Z=0).|
27
+ ` merge_vertices ` |Merge vertices in an STL file that are closer than the specified tolerance.|
28
+ ` modify_stl_section ` |Apply a specific transformation to a selected section of an STL file|
29
+ ` print_3mf ` |Print a 3MF file on a Bambu Lab printer, potentially overriding settings.|
30
+ ` process_and_print_stl ` |Process an STL file (extend base), slice it, confirm temperatures, and start printing|
31
+ ` rotate_stl ` |Rotate an STL model around specific axes|
32
+ ` scale_stl ` |Scale an STL model uniformly or along specific axes|
33
+ ` slice_stl ` |Slice an STL file to generate G-code|
34
+ ` translate_stl ` |Move an STL model along specific axes|
35
+
36
+ ---
37
+ ## Tools Details
38
+
39
+ #### Tool: ` center_model `
40
+ | Description|
41
+ | -|
42
+ | Translate the model so its geometric center is at the origin (0,0,0).|
43
+
44
+ Parameters|Type|Description
39
45
-|-|-
40
46
` stl_path ` |` string ` |Path to the STL file to center.
41
47
42
- ### Tool ` confirm_temperatures `
43
- Confirm temperature settings in a G-code file
48
+ ---
49
+ #### Tool: ` confirm_temperatures `
50
+ | Description|
51
+ | -|
52
+ | Confirm temperature settings in a G-code file|
44
53
45
- Parameter |Type|Description
54
+ Parameters |Type|Description
46
55
-|-|-
47
56
` gcode_path ` |` string ` |Path to the G-code file
48
57
` bed_temp ` |` number ` * optional* |Expected bed temperature
49
58
` extruder_temp ` |` number ` * optional* |Expected extruder temperature
50
59
51
- ### Tool ` extend_stl_base `
52
- Extend the base of an STL file by a specified amount
60
+ ---
61
+ #### Tool: ` extend_stl_base `
62
+ | Description|
63
+ | -|
64
+ | Extend the base of an STL file by a specified amount|
53
65
54
- Parameter |Type|Description
66
+ Parameters |Type|Description
55
67
-|-|-
56
68
` extension_inches ` |` number ` |Amount to extend the base in inches
57
69
` stl_path ` |` string ` |Path to the STL file to modify
58
70
59
- ### Tool ` generate_stl_visualization `
60
- Generate an SVG visualization of an STL file from multiple angles
71
+ ---
72
+ #### Tool: ` generate_stl_visualization `
73
+ | Description|
74
+ | -|
75
+ | Generate an SVG visualization of an STL file from multiple angles|
61
76
62
- Parameter |Type|Description
77
+ Parameters |Type|Description
63
78
-|-|-
64
79
` stl_path ` |` string ` |Path to the STL file
65
80
` height ` |` number ` * optional* |Height of each view in pixels (default: 300)
66
81
` width ` |` number ` * optional* |Width of each view in pixels (default: 300)
67
82
68
- ### Tool ` get_printer_status `
69
- Get the current status of the 3D printer
83
+ ---
84
+ #### Tool: ` get_printer_status `
85
+ | Description|
86
+ | -|
87
+ | Get the current status of the 3D printer|
70
88
71
- Parameter |Type|Description
89
+ Parameters |Type|Description
72
90
-|-|-
73
91
` api_key ` |` string ` * optional* |API key for authentication (default: value from env)
74
92
` bambu_serial ` |` string ` * optional* |Serial number for Bambu Lab printers (default: value from env)
@@ -77,32 +95,44 @@ Parameter|Type|Description
77
95
` port ` |` string ` * optional* |Port of the printer API (default: value from env)
78
96
` type ` |` string ` * optional* |Type of printer management system (octoprint, klipper, duet, repetier, bambu, prusa, creality) (default: value from env)
79
97
80
- ### Tool ` get_stl_info `
81
- Get detailed information about an STL file
98
+ ---
99
+ #### Tool: ` get_stl_info `
100
+ | Description|
101
+ | -|
102
+ | Get detailed information about an STL file|
82
103
83
- Parameter |Type|Description
104
+ Parameters |Type|Description
84
105
-|-|-
85
106
` stl_path ` |` string ` |Path to the STL file
86
107
87
- ### Tool ` lay_flat `
88
- Attempt to rotate the model so its largest flat face lies on the XY plane (Z=0).
108
+ ---
109
+ #### Tool: ` lay_flat `
110
+ | Description|
111
+ | -|
112
+ | Attempt to rotate the model so its largest flat face lies on the XY plane (Z=0).|
89
113
90
- Parameter |Type|Description
114
+ Parameters |Type|Description
91
115
-|-|-
92
116
` stl_path ` |` string ` |Path to the STL file to lay flat.
93
117
94
- ### Tool ` merge_vertices `
95
- Merge vertices in an STL file that are closer than the specified tolerance.
118
+ ---
119
+ #### Tool: ` merge_vertices `
120
+ | Description|
121
+ | -|
122
+ | Merge vertices in an STL file that are closer than the specified tolerance.|
96
123
97
- Parameter |Type|Description
124
+ Parameters |Type|Description
98
125
-|-|-
99
126
` stl_path ` |` string ` |Path to the STL file to modify.
100
127
` tolerance ` |` number ` * optional* |Maximum distance between vertices to merge (in mm, default: 0.01).
101
128
102
- ### Tool ` modify_stl_section `
103
- Apply a specific transformation to a selected section of an STL file
129
+ ---
130
+ #### Tool: ` modify_stl_section `
131
+ | Description|
132
+ | -|
133
+ | Apply a specific transformation to a selected section of an STL file|
104
134
105
- Parameter |Type|Description
135
+ Parameters |Type|Description
106
136
-|-|-
107
137
` section ` |` string ` |Section to modify: 'top', 'bottom', 'center', or custom bounds
108
138
` stl_path ` |` string ` |Path to the STL file
@@ -117,10 +147,13 @@ Parameter|Type|Description
117
147
` value_y ` |` number ` * optional* |Transformation value for Y axis
118
148
` value_z ` |` number ` * optional* |Transformation value for Z axis
119
149
120
- ### Tool ` print_3mf `
121
- Print a 3MF file on a Bambu Lab printer, potentially overriding settings.
150
+ ---
151
+ #### Tool: ` print_3mf `
152
+ | Description|
153
+ | -|
154
+ | Print a 3MF file on a Bambu Lab printer, potentially overriding settings.|
122
155
123
- Parameter |Type|Description
156
+ Parameters |Type|Description
124
157
-|-|-
125
158
` three_mf_path ` |` string ` |Path to the 3MF file to print.
126
159
` ams_mapping ` |` object ` * optional* |Override AMS filament mapping (e.g., {"Generic PLA": 0, "Generic PETG": 1}).
@@ -132,10 +165,13 @@ Parameter|Type|Description
132
165
` nozzle_temperature ` |` number ` * optional* |Override nozzle temperature (°C).
133
166
` support_enabled ` |` boolean ` * optional* |Override support generation.
134
167
135
- ### Tool ` process_and_print_stl `
136
- Process an STL file (extend base), slice it, confirm temperatures, and start printing
168
+ ---
169
+ #### Tool: ` process_and_print_stl `
170
+ | Description|
171
+ | -|
172
+ | Process an STL file (extend base), slice it, confirm temperatures, and start printing|
137
173
138
- Parameter |Type|Description
174
+ Parameters |Type|Description
139
175
-|-|-
140
176
` extension_inches ` |` number ` |Amount to extend the base in inches
141
177
` stl_path ` |` string ` |Path to the STL file to process
@@ -146,47 +182,60 @@ Parameter|Type|Description
146
182
` port ` |` string ` * optional* |Port of the printer API (default: value from env)
147
183
` type ` |` string ` * optional* |Type of printer management system (default: value from env)
148
184
149
- ### Tool ` rotate_stl `
150
- Rotate an STL model around specific axes
185
+ ---
186
+ #### Tool: ` rotate_stl `
187
+ | Description|
188
+ | -|
189
+ | Rotate an STL model around specific axes|
151
190
152
- Parameter |Type|Description
191
+ Parameters |Type|Description
153
192
-|-|-
154
193
` stl_path ` |` string ` |Path to the STL file
155
194
` rotate_x ` |` number ` * optional* |Rotation around X-axis in degrees
156
195
` rotate_y ` |` number ` * optional* |Rotation around Y-axis in degrees
157
196
` rotate_z ` |` number ` * optional* |Rotation around Z-axis in degrees
158
197
159
- ### Tool ` scale_stl `
160
- Scale an STL model uniformly or along specific axes
198
+ ---
199
+ #### Tool: ` scale_stl `
200
+ | Description|
201
+ | -|
202
+ | Scale an STL model uniformly or along specific axes|
161
203
162
- Parameter |Type|Description
204
+ Parameters |Type|Description
163
205
-|-|-
164
206
` stl_path ` |` string ` |Path to the STL file
165
207
` scale_factor ` |` number ` * optional* |Uniform scaling factor to apply
166
208
` scale_x ` |` number ` * optional* |X-axis scaling factor (overrides scale_factor for X axis)
167
209
` scale_y ` |` number ` * optional* |Y-axis scaling factor (overrides scale_factor for Y axis)
168
210
` scale_z ` |` number ` * optional* |Z-axis scaling factor (overrides scale_factor for Z axis)
169
211
170
- ### Tool ` slice_stl `
171
- Slice an STL file to generate G-code
212
+ ---
213
+ #### Tool: ` slice_stl `
214
+ | Description|
215
+ | -|
216
+ | Slice an STL file to generate G-code|
172
217
173
- Parameter |Type|Description
218
+ Parameters |Type|Description
174
219
-|-|-
175
220
` stl_path ` |` string ` |Path to the STL file to slice
176
221
` slicer_path ` |` string ` * optional* |Path to the slicer executable (default: value from env)
177
222
` slicer_profile ` |` string ` * optional* |Profile to use for slicing (default: value from env)
178
223
` slicer_type ` |` string ` * optional* |Type of slicer to use (prusaslicer, cura, slic3r, orcaslicer) (default: value from env)
179
224
180
- ### Tool ` translate_stl `
181
- Move an STL model along specific axes
225
+ ---
226
+ #### Tool: ` translate_stl `
227
+ | Description|
228
+ | -|
229
+ | Move an STL model along specific axes|
182
230
183
- Parameter |Type|Description
231
+ Parameters |Type|Description
184
232
-|-|-
185
233
` stl_path ` |` string ` |Path to the STL file
186
234
` translate_x ` |` number ` * optional* |Translation along X-axis in millimeters
187
235
` translate_y ` |` number ` * optional* |Translation along Y-axis in millimeters
188
236
` translate_z ` |` number ` * optional* |Translation along Z-axis in millimeters
189
237
238
+ ---
190
239
## Use this MCP Server
191
240
192
241
``` json
0 commit comments