Skip to main content
Glama
Noosbai
by Noosbai

PrusaMCP

Intelligent MCP Server for PrusaSlicer — 17 tools to analyze, configure and launch your 3D prints from Claude or any MCP client.

PrusaMCP is not a simple CLI wrapper. It's a 3D printing assistant that analyzes your mesh, recommends optimal settings with justification, diagnoses defects, and can drive PrusaSlicer automatically.

Built with Claude Code.

Features

  • Native mesh analysis — Binary/ASCII STL and 3MF parser, zero external dependencies for parsing

  • Recommendation engine — Bible FDM + official Prusa knowledge base, justification for every setting

  • MVS-based speed capping — Automatic speed calculation based on material Max Volumetric Speed

  • 17 MCP tools covering the full print workflow

  • Post-print diagnostics — Bible FDM diagnostic tree for 9 common defects

  • Filament database — 30+ filaments with temperatures, MVS, recommended surface

Related MCP server: Klipper MCP Server

Tools

Analysis & Recommendation (no PrusaSlicer needed)

Tool

Description

analyze_mesh

Geometric analysis of STL/3MF (dimensions, volume, overhangs, manifold)

check_printability

Issue detection: thin walls, bridges, overhangs, stability

suggest_orientation

Test 6 orientations with scoring (overhangs, height, adhesion)

recommend_profile

Full profile recommendation with per-setting justification

generate_prusaslicer_config

Generate PrusaSlicer-compatible .ini file

estimate_cost

Cost estimate (filament + electricity) and print time

search_filament

Search filament database (30+ entries)

print_wizard

All-in-one: analysis + printability + orientation + profile + questions

diagnose_print

Post-print diagnosis (warping, stringing, under-extrusion...)

PrusaSlicer Integration

Tool

Description

slice_prusaslicer

Run slicing via CLI with G-code stats

get_current_model

Get the model currently open in PrusaSlicer

screenshot_prusaslicer

Capture PrusaSlicer window (even in background)

postprocess_gcode

G-code post-processing (pause, filament change, etc.)

upload_print

Upload to OctoPrint / Prusa Connect

Feedback & Community

Tool

Description

submit_feedback

Submit print feedback after printing

feedback_stats

Feedback statistics by material/goal

export_feedback

Anonymized community data export

Installation

git clone https://github.com/Noosbai/PrusaMCP.git
cd PrusaMCP
npm install
npm run build

Configuration

Claude Desktop / Claude Code

Add to your MCP configuration:

{
  "mcpServers": {
    "prusa-mcp": {
      "command": "node",
      "args": ["/path/to/PrusaMCP/build/index.js"],
      "env": {
        "PRUSASLICER_PATH": "C:/Program Files/Prusa3D/PrusaSlicer/prusa-slicer-console.exe"
      }
    }
  }
}

Environment Variables

Variable

Description

Default

PRUSASLICER_PATH

Path to prusa-slicer-console.exe

Auto-detected

PRUSASLICER_PROFILES_DIR

PrusaSlicer profiles folder

%APPDATA%/PrusaSlicer

OCTOPRINT_URL

Your OctoPrint instance URL

OCTOPRINT_API_KEY

OctoPrint API key

Usage

Typical Workflow

  1. Analyze a model: analyze_mesh to get dimensions, overhangs, etc.

  2. Check printability: check_printability to detect potential issues

  3. Get a recommendation: recommend_profile with your goal (draft, standard, quality, strong, speed)

  4. Generate config: generate_prusaslicer_config for a ready-to-use .ini

  5. Slice: slice_prusaslicer to generate G-code

Or in one command

print_wizard does everything at once: analysis + printability + orientation + profile + cost estimate + follow-up questions to refine.

Available Goals

Goal

Description

draft / prototype

Fast, quality secondary

standard

Good quality/time balance

quality / fine

Smooth surface, fine details

strong / structural

Maximum mechanical strength

vase

Spiral vase mode

speed

Everything maxed out

Supported Materials

PLA, PETG, ABS, ASA, TPU, Nylon, PC — with official Prusa temperatures, Bible FDM MVS values, drying/enclosure warnings.

Knowledge Base

The recommendation engine is built on:

  • Bible de l'impression 3D FDM — Comprehensive FDM settings guide for PrusaSlicer

  • Official Prusa documentation — Temperatures, MVS, reference profiles

  • 9-step calibration workflow (mechanical → PID → Z → EM → MVS → retraction → cooling → PA → accel)

  • Diagnostic tree for 9 common defects with causes and fixes

MVS (Max Volumetric Speed) — The Central Parameter

Material

MVS (mm³/s)

PLA

~15

ABS/ASA

~11

PETG

~8

Nylon/PC

~8

PVA/BVOH

~4

TPU

~1-2.5

Architecture

src/
├── index.ts              # MCP entry point + STDIO transport
├── types.ts              # TypeScript interfaces
├── config.ts             # PrusaSlicer detection
├── stl-parser.ts         # Native binary/ASCII STL parser
├── threemf-parser.ts     # 3MF parser (ZIP + XML)
├── mesh-analyzer.ts      # Geometric analysis
├── profile-engine.ts     # Recommendation engine (Bible FDM)
├── ini-writer.ts         # PrusaSlicer .ini generation
├── print-issues.ts       # Issue detection + Bible FDM diagnostics
├── orientation.ts        # Optimal orientation suggestion
├── cost-estimator.ts     # Cost/time estimation
├── filament-db.ts        # Filament database
├── prusa-cli.ts          # PrusaSlicer CLI wrapper
├── community-data.json   # Community data (MVS, diagnostics, best practices)
└── tools/                # 17 MCP tools
    ├── analyze-mesh.ts
    ├── check-printability.ts
    ├── suggest-orientation.ts
    ├── recommend-profile.ts
    ├── generate-config.ts
    ├── estimate-cost.ts
    ├── search-filament.ts
    ├── print-wizard.ts
    ├── diagnose-print.ts
    ├── slice.ts
    ├── get-current-model.ts
    ├── screenshot-prusaslicer.ts
    ├── postprocess-gcode.ts
    ├── upload-print.ts
    └── feedback.ts

Requirements

  • Node.js >= 18

  • PrusaSlicer (optional — only needed for slice, screenshot, get_current_model)

  • Windows for screenshot feature (uses PrintWindow API)

License

MIT

Available Tools

17 tools
analyze_meshAnalyser un mesh 3DC

Analyse un fichier STL ou 3MF et retourne : dimensions, volume, surface, pourcentage d'overhangs, détection de détails fins, et vérification manifold.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesChemin absolu vers le fichier STL ou 3MF

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns analysis results but doesn't cover critical aspects like performance (e.g., processing time for large files), error handling (e.g., invalid file formats), or side effects (e.g., whether it modifies the file). For a tool with no annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, starting with the core action and listing outputs in a single sentence. Every element (e.g., dimensions, volume) serves to clarify the purpose without redundancy. However, it could be slightly more structured by grouping outputs or adding brief context, but overall it's efficient with minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no annotations and no output schema, the description is moderately complete for a simple analysis tool. It specifies the file types and analysis outputs, but lacks details on return format, error cases, or integration with sibling tools. For a tool in a complex 3D printing server with many siblings, this leaves gaps in understanding how it fits into broader workflows.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'file_path' clearly documented as an absolute path to STL or 3MF files. The description doesn't add any parameter-specific details beyond what the schema provides, such as file size limits or format specifics. Since schema coverage is high, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Analyse' and the resource 'un fichier STL ou 3MF', specifying it analyzes 3D mesh files. It lists specific outputs like dimensions, volume, surface, etc., making the purpose concrete. However, it doesn't explicitly differentiate from sibling tools like 'check_printability' or 'diagnose_print', which might have overlapping functions in a 3D printing context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing a valid file path, or compare it to siblings like 'check_printability' for printability checks or 'diagnose_print' for diagnostic analysis. This lack of context leaves the agent guessing about the appropriate use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_printabilityVérifier la printabilité d'un modèleB

Analyse un modèle 3D (STL/3MF) pour détecter les problèmes d'impression : murs trop fins, ponts trop longs, overhangs, mesh non-manifold, stabilité, etc. Retourne un score de printabilité et des recommandations.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesChemin absolu vers le fichier STL ou 3MF
nozzle_diameterNoDiamètre de buse en mm (pour calibrer les seuils)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the tool returns a 'score de printabilité et des recommandations', it doesn't specify format, whether it's read-only/destructive, performance characteristics, or error handling. For a tool with no annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that efficiently convey the tool's function and output. It's front-loaded with the core purpose and avoids unnecessary elaboration, though it could be slightly more structured in separating analysis from output description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description provides adequate but incomplete context. It explains what the tool does and what it returns, but lacks details about behavioral characteristics, error conditions, and how results should be interpreted, leaving some gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, providing good documentation for both parameters. The description adds no additional parameter semantics beyond what's in the schema, so it meets the baseline of 3 where the schema does the heavy lifting without compensating for any deficiencies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('analyse', 'détecter') and resources ('modèle 3D (STL/3MF)'), listing concrete problems it identifies (murs trop fins, ponts trop longs, overhangs, etc.). It distinguishes from siblings like 'analyze_mesh' by focusing specifically on printability issues rather than general mesh analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'diagnose_print' or 'suggest_orientation'. It mentions what the tool does but offers no context about when it's appropriate or when other tools might be better suited for related tasks.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

diagnose_printDiagnostiquer un défaut d'impressionA

Diagnostic post-impression basé sur la Bible FDM. Décris le défaut observé et obtiens les causes probables, les corrections à appliquer, et les réglages PrusaSlicer à modifier.

ParametersJSON Schema
NameRequiredDescriptionDefault
defectYesDescription du défaut observé (ex: 'warping', 'stringing', 'sous-extrusion', 'couches décalées', 'ringing', 'elephant foot', 'délamination', 'buse bouchée')
materialNoMatériau utilisé (PLA, PETG, ABS...)
detailsNoDétails supplémentaires sur le problème

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool's function and output (causes, corrections, settings), but lacks details on limitations, error handling, or response format. It doesn't contradict annotations (none exist), but could be more comprehensive about what the tool does and doesn't do.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose and key outputs. Every word earns its place, with no redundancy or unnecessary elaboration, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description adequately covers the tool's purpose and basic usage but lacks details on behavioral traits, error cases, or output structure. For a diagnostic tool with three parameters, it's minimally viable but could benefit from more context about how results are returned or limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds context by mentioning the FDM Bible as the knowledge source and specifying the output types (causes, corrections, settings), which helps understand what the tool does with the inputs. However, it doesn't add specific semantic details beyond the schema's parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to diagnose print defects based on the FDM Bible, providing probable causes, corrections, and PrusaSlicer adjustments. It specifies the verb ('diagnostiquer') and resource ('défaut d'impression'), and distinguishes itself from siblings like 'check_printability' or 'print_wizard' by focusing on post-print analysis rather than pre-print checks or general guidance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: after printing ('post-impression') when a defect is observed, with no explicit exclusions or alternatives mentioned. It doesn't specify when not to use it or name alternative tools, but the context is clear enough for typical use cases without being misleading.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_costEstimer le coût d'impressionB

Estime le coût d'impression d'un modèle 3D : filament, électricité, temps. Peut aussi comparer plusieurs profils (draft/standard/quality) côte à côte.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesChemin absolu vers le fichier STL ou 3MF
materialNoMatériau (PLA, PETG, ABS...)PLA
nozzleNoDiamètre de buse en mm
filament_price_per_kgNoPrix du filament en EUR/kg
electricity_priceNoPrix électricité en EUR/kWh
compare_profilesNoComparer draft/standard/quality côte à côte

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the tool can compare profiles, it doesn't describe what the output looks like, whether it's a read-only operation, if it modifies files, or any rate limits/authentication requirements. For a tool with 6 parameters and no annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that efficiently convey the core functionality. First sentence establishes primary purpose, second adds the comparison capability. No wasted words or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the estimation returns (cost breakdown? total? comparison table?), nor does it address behavioral aspects like whether it's a read operation or has side effects. The description should do more given the complexity and lack of structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description mentions 'filament, electricity, time' which aligns with some parameters, but adds no meaningful semantic context beyond what's in the schema descriptions. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('estimate', 'compare') and resources ('3D model printing cost', 'multiple profiles'). It distinguishes from siblings by focusing on cost estimation rather than mesh analysis, printability checks, or slicing operations mentioned in the sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for cost estimation and profile comparison, but doesn't explicitly state when to use this tool versus alternatives like 'analyze_mesh' or 'check_printability'. No guidance on prerequisites or exclusions is provided, leaving usage context somewhat ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_feedbackExporter le feedback pour la communautéA

Exporte tes retours d'impression de manière anonymisée pour contribuer à la base de connaissances communautaire. Supprime les chemins de fichiers et généralise le nom d'imprimante. Le JSON résultant peut être partagé via GitHub PR ou autre canal.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and discloses key behavioral traits: anonymization process (removes file paths, generalizes printer names), output format (JSON), and sharing capabilities (GitHub PR or other channels). It doesn't cover error handling or performance aspects, but provides substantial operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences efficiently convey purpose, transformation process, and output usage. The description is appropriately sized and front-loaded with the core function, though minor redundancy exists between 'anonymisée' and the specific anonymization steps mentioned.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 0 parameters, the description provides good behavioral context but lacks details about what specific feedback data is exported, potential limitations, or error conditions. It's adequate for a simple export tool but could be more comprehensive about the scope and constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately focuses on behavioral aspects rather than parameter details, meeting the baseline expectation for zero-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('exporte') and resource ('tes retours d'impression'), specifying anonymization and contribution to community knowledge base. It distinguishes from sibling 'submit_feedback' by focusing on export rather than submission, though not explicitly contrasting them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context ('pour contribuer à la base de connaissances communautaire') and suggests sharing methods ('via GitHub PR ou autre canal'), but doesn't explicitly state when to use this versus alternatives like 'submit_feedback' or other data export tools. Guidance is present but not comprehensive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

feedback_statsStatistiques de printsC

Affiche les statistiques de tes impressions : taux de réussite, score moyen, problèmes fréquents, et meilleurs paramètres par matériau. Combine tes données locales et les données communautaires.

ParametersJSON Schema
NameRequiredDescriptionDefault
materialNoFiltrer par matériau

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool displays statistics and combines local and community data, but doesn't clarify whether this is a read-only operation, if it requires authentication, how data is sourced or aggregated, or what the output format looks like. For a tool with no annotations, this leaves significant gaps in understanding its behavior and limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads key information: what statistics are displayed and the data sources. There's no unnecessary verbiage, and each clause adds value (e.g., listing specific stats like success rate and frequent problems). However, it could be slightly more structured by explicitly separating functionality from data sources for even clearer parsing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (involving data aggregation from multiple sources) and the absence of both annotations and an output schema, the description is incomplete. It doesn't explain how statistics are calculated, what 'combine' entails, the scope of community data, or the format of the output. For a tool with no structured metadata, this leaves the agent with insufficient context to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with 100% description coverage ('Filtrer par matériau'), so the schema already documents the parameter's purpose. The description adds context by mentioning 'meilleurs paramètres par matériau' (best parameters per material), which aligns with the material filter, but doesn't provide additional syntax, format details, or examples beyond what the schema specifies. With high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to display statistics about prints including success rate, average score, frequent problems, and best parameters per material. It specifies the verb 'affiche' (displays) and the resource 'statistiques de tes impressions' (your print statistics), making the function evident. However, it doesn't explicitly differentiate from sibling tools like 'analyze_mesh' or 'diagnose_print', which might also involve print analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It mentions combining local and community data, but doesn't specify scenarios where this is preferred over other tools like 'diagnose_print' or 'export_feedback'. There's no mention of prerequisites, exclusions, or comparative use cases, leaving the agent to infer usage from context alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_prusaslicer_configGénérer un fichier config PrusaSlicerB

Génère un fichier .ini compatible PrusaSlicer à partir d'une intention ou de paramètres custom. Le fichier peut être chargé directement avec --load dans PrusaSlicer.

ParametersJSON Schema
NameRequiredDescriptionDefault
printerNoNom de l'imprimanteGeneric
nozzleNoDiamètre de buse en mm
goalYesIntention d'impression
materialNoMatériauPLA
stl_pathNoChemin STL pour analyse auto
output_pathNoChemin de sortie pour le .ini (sinon fichier temporaire)
custom_settingsNoParamètres custom PrusaSlicer à overrider (ex: {"layer_height": 0.15})

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool generates a config file and mentions it can be temporary if no output path is specified, but lacks critical details: whether this is a read-only or write operation, what permissions are needed, error handling, rate limits, or what happens when custom_settings conflict with defaults. For a tool with 7 parameters and no annotations, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that directly address the tool's function and usage. It's front-loaded with the core purpose and avoids unnecessary elaboration. However, it could be slightly more structured by explicitly separating purpose from behavioral notes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 7 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the generated config file contains, how goal influences parameter selection, error conditions, or the relationship between parameters like stl_path and goal. The lack of behavioral transparency and minimal parameter semantics leave significant gaps for an AI agent to understand this tool fully.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description adds minimal value beyond the schema, mentioning that files can be temporary if no output_path is given and that custom_settings override defaults. However, it doesn't explain parameter interactions (e.g., how goal influences other parameters) or provide examples beyond the brief mention in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Génère un fichier .ini compatible PrusaSlicer à partir d'une intention ou de paramètres custom.' It specifies the verb (generate), resource (PrusaSlicer config file), and distinguishes it from sibling tools like 'slice_prusaslicer' or 'recommend_profile' by focusing on config file generation rather than slicing or profile recommendation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides minimal usage guidance. It mentions the file can be loaded with '--load' in PrusaSlicer, but offers no explicit guidance on when to use this tool versus alternatives like 'recommend_profile' or 'slice_prusaslicer'. There's no mention of prerequisites, when-not-to-use scenarios, or clear differentiation from sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_current_modelVoir le modèle ouvert dans PrusaSlicerA

Détecte le fichier actuellement ouvert dans PrusaSlicer en lisant le titre de la fenêtre. Retourne le chemin du fichier, les presets actifs (imprimante, filament, profil), et une analyse complète du mesh si c'est un STL.

ParametersJSON Schema
NameRequiredDescriptionDefault
analyzeNoLancer l'analyse mesh automatiquement

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes what the tool does (detects open file, returns path, presets, and mesh analysis) but lacks details on error handling, performance characteristics, or dependencies. It doesn't contradict any annotations since none exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose in the first clause and efficiently lists return values without redundancy. Every sentence adds necessary information, making it appropriately sized and well-structured for quick comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description adequately covers the tool's purpose and outputs but lacks details on return format, error conditions, or operational constraints. For a tool with one parameter and moderate complexity, it's minimally viable but could be more comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for its single parameter ('analyze'), so the baseline is 3. The description adds value by explaining that mesh analysis occurs 'si c'est un STL', providing context beyond the schema's boolean flag. However, it doesn't fully detail parameter interactions or edge cases.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('détecte', 'lit', 'retourne') and resources ('fichier actuellement ouvert dans PrusaSlicer', 'chemin du fichier', 'presets actifs', 'analyse complète du mesh'). It distinguishes itself from siblings like 'analyze_mesh' by focusing on detecting the currently open file rather than performing standalone mesh analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when PrusaSlicer has an open file, but it doesn't explicitly state when to use this tool versus alternatives like 'screenshot_prusaslicer' or 'analyze_mesh'. No exclusions or prerequisites are mentioned, leaving some ambiguity about appropriate contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

postprocess_gcodePost-traiter un G-codeA

Modifie un fichier G-code existant pour insérer des actions : pause à une couche, changement de filament (M600), changement de température, ou commande custom. Crée un nouveau fichier sans écraser l'original.

ParametersJSON Schema
NameRequiredDescriptionDefault
gcode_pathYesChemin du fichier G-code à modifier
actionsYesListe d'actions à insérer
output_pathNoChemin de sortie (sinon _modified.gcode)

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it modifies files, creates new output files without overwriting originals, and supports specific action types. However, it doesn't mention error handling, file format requirements, or what happens with invalid inputs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences that are front-loaded with the core purpose and key behavioral detail (non-destructive output). Every word earns its place with no redundancy or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description provides good coverage of what the tool does and its non-destructive nature. However, it doesn't describe the output format or potential error conditions, leaving some gaps in understanding the complete behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by mentioning the four action types, but doesn't provide additional context about parameter interactions or usage patterns. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('modifies an existing G-code file') and resource ('G-code file'), listing four distinct modification types (pause, filament change, temperature change, custom command). It distinguishes this tool from siblings like 'slice_prusaslicer' or 'analyze_mesh' by focusing on post-processing rather than creation or analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when needing to insert specific actions into G-code files, but provides no explicit guidance on when to use this versus alternatives like 'slice_prusaslicer' (which might generate G-code with built-in features) or 'print_wizard' (which might guide overall printing). No exclusions or prerequisites are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommend_profileRecommander un profil d'impressionB

Génère un profil d'impression complet avec justification pour chaque paramètre. Prend en compte l'intention (prototype rapide, beau rendu, solide...), la buse, le matériau, et optionnellement une analyse mesh.

ParametersJSON Schema
NameRequiredDescriptionDefault
printerNoNom de l'imprimante (ex: MK4S, MINI, CR30, Ender3)Generic
nozzleNoDiamètre de buse en mm (ex: 0.4, 0.6, 0.8, 1.0)
goalYesIntention d'impression : 'prototype rapide', 'standard', 'beau rendu', 'production solide', 'vase', 'speedrun', ou toute description libre
materialNoMatériau : PLA, PETG, ABS, ASA, TPU, NYLON, PCPLA
stl_pathNoChemin optionnel vers un STL pour analyse automatique (overhangs, détails, taille)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a profile with justifications, which implies a read-only, non-destructive operation, but it doesn't clarify if this requires specific permissions, how the profile is returned (e.g., format, structure), or any limitations like rate limits or computational costs. For a tool with 5 parameters and no annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, stating the main purpose in the first sentence and listing key parameters in the second. It avoids unnecessary details, but could be slightly improved by structuring the parameter list more clearly (e.g., using bullet points or commas). Overall, it's efficient with zero waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no annotations, no output schema), the description is moderately complete. It covers the purpose and inputs but lacks details on output format, behavioral traits, and differentiation from siblings. Without an output schema, the description should ideally hint at what the generated profile includes, but it only mentions 'justification' vaguely. This leaves room for improvement in guiding the agent on what to expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning the input schema already documents all parameters with descriptions and defaults. The description adds minimal value beyond the schema by mentioning the parameters (intent, nozzle, material, optional mesh analysis) but doesn't provide additional context like examples of 'justification' outputs or how parameters interact. With high schema coverage, the baseline is 3, as the description doesn't significantly enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Génère un profil d'impression complet avec justification pour chaque paramètre' (Generates a complete printing profile with justification for each parameter). It specifies the verb 'génère' (generates) and resource 'profil d'impression' (printing profile), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'generate_prusaslicer_config' or 'print_wizard', which may have overlapping functions in the 3D printing context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by listing input factors: 'Prend en compte l'intention (prototype rapide, beau rendu, solide...), la buse, le matériau, et optionnellement une analyse mesh' (Takes into account intent, nozzle, material, and optionally mesh analysis). This suggests when to use it based on these parameters, but it doesn't provide explicit guidance on when to choose this tool over alternatives like 'generate_prusaslicer_config' or 'slice_prusaslicer', nor does it specify exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

screenshot_prusaslicerCapturer l'écran de PrusaSlicerA

Prend un screenshot de la fenêtre PrusaSlicer (même en arrière-plan) et retourne l'image. Le fichier temporaire est automatiquement supprimé après lecture.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: the tool captures screenshots even from background windows, returns an image, and automatically deletes temporary files after reading. This covers the core operational behavior well, though it doesn't mention potential limitations like window detection failures or file format specifics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly concise with two sentences that each earn their place: the first states the core functionality and unique capability, the second explains the file handling behavior. There's zero wasted language, and the information is front-loaded with the primary purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, no output schema, no annotations), the description provides complete enough context for an agent to understand when and how to use it. It explains what the tool does, its special capability (background capture), and file handling behavior. The only minor gap is not specifying the return format beyond 'image' (e.g., PNG, JPEG).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters with 100% schema description coverage, so the baseline would be 4 even with no parameter information in the description. The description appropriately doesn't discuss parameters since none exist, maintaining focus on the tool's purpose and behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('prend un screenshot') and target resource ('de la fenêtre PrusaSlicer'), distinguishing it from all sibling tools which focus on analysis, configuration, or processing rather than screen capture. It precisely communicates what the tool does without being vague or tautological.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context about when to use this tool ('même en arrière-plan' indicates it works even when PrusaSlicer is in the background), but doesn't explicitly state when NOT to use it or name alternatives. It implies this is for capturing the PrusaSlicer window specifically, but doesn't contrast with potential sibling tools for other capture scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_filamentChercher un filament dans la base de donnéesC

Recherche des filaments par marque, matériau ou mot-clé. Retourne les températures recommandées, densité, prix, et notes.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoRecherche libre (marque, matériau, mot-clé)
materialNoFiltrer par matériau (PLA, PETG, ABS, TPU...)
brandNoFiltrer par marque (Prusament, eSUN, Polymaker...)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the return values (temperatures, density, price, notes) but doesn't describe search behavior (e.g., partial matches, case sensitivity), performance characteristics, error conditions, or data freshness. For a search tool with zero annotation coverage, this leaves significant gaps in understanding how it operates.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that directly state the purpose and return values. There's no unnecessary information, though it could be slightly more structured by separating search criteria from return values more clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 3 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the search algorithm, result format, pagination, or error handling. While it mentions return fields, the absence of an output schema means the agent lacks structured information about the response, making the description insufficient for full understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters with clear descriptions. The description adds minimal value by listing search criteria (brand, material, keyword) but doesn't provide additional syntax, format, or interaction details beyond what's in the schema. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for filaments by brand, material, or keyword, which is a specific verb (search) and resource (filaments). It distinguishes from siblings like 'analyze_mesh' or 'estimate_cost' by focusing on database lookup rather than analysis or calculation. However, it doesn't explicitly differentiate from potential similar search tools that might exist in the future.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, when not to use it, or how it relates to sibling tools like 'recommend_profile' or 'generate_prusaslicer_config'. The agent must infer usage from the purpose alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

slice_prusaslicerSlicer un modèle 3D avec PrusaSlicerB

Slice un fichier STL/3MF avec PrusaSlicer CLI et retourne le G-code + statistiques. Peut utiliser un fichier .ini existant ou générer une config depuis une intention.

ParametersJSON Schema
NameRequiredDescriptionDefault
stl_pathYesChemin absolu vers le fichier STL ou 3MF
config_pathNoChemin vers un fichier .ini PrusaSlicer existant
output_gcodeNoChemin de sortie pour le G-code
goalNoSi pas de config_path : intention pour générer un profil auto
printerNoNom de l'imprimante (pour génération auto)
nozzleNoDiamètre de buse (pour génération auto)
materialNoMatériau (pour génération auto)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the tool uses PrusaSlicer CLI and returns G-code + statistics, but doesn't disclose critical behavioral traits like whether it's a read-only operation, if it modifies files, error handling, performance characteristics, or authentication needs. For a tool with 7 parameters and no annotations, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that efficiently convey the core functionality and configuration options. It's front-loaded with the main purpose and avoids unnecessary details. However, the French phrasing might slightly reduce clarity for English-speaking agents, though the content remains well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no output schema, no annotations), the description is moderately complete. It covers the basic purpose and configuration methods but lacks details on behavioral aspects, error handling, and output format beyond 'G-code + statistics'. Without annotations or output schema, the description should provide more context about what the tool actually does and returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description adds minimal value by mentioning the alternative between using an existing .ini file or generating config from intention, which relates to config_path and goal parameters, but doesn't provide additional semantic context beyond what's in the schema descriptions. This meets the baseline of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool slices 3D models (STL/3MF files) using PrusaSlicer CLI and returns G-code with statistics. It specifies the action (slice), resource (3D model files), and output (G-code + statistics). However, it doesn't explicitly differentiate from sibling tools like 'generate_prusaslicer_config' or 'postprocess_gcode' which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the mention of alternative configuration methods ('peut utiliser un fichier .ini existant ou générer une config depuis une intention'), suggesting when to use config_path vs. goal parameters. However, it doesn't provide explicit guidance on when to choose this tool over siblings like 'generate_prusaslicer_config' or 'print_wizard', nor does it mention prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_feedbackNoter un printA

Enregistre un retour après impression. Note la qualité, l'adhésion, la solidité, et les problèmes rencontrés. Ces données améliorent les futures recommandations et peuvent être partagées anonymement avec la communauté.

ParametersJSON Schema
NameRequiredDescriptionDefault
model_nameYesNom du modèle imprimé
materialYesMatériau utilisé (PLA, PETG, ABS...)
printerYesNom de l'imprimante
nozzleYesDiamètre de buse en mm
goalYesObjectif utilisé (draft, standard, quality, strong)
layer_heightYesHauteur de couche utilisée en mm
infill_percentYesPourcentage de remplissage
perimetersYesNombre de périmètres
print_speedYesVitesse d'impression en mm/s
nozzle_tempYesTempérature buse en °C
bed_tempYesTempérature plateau en °C
support_usedYesSupports utilisés ?
brim_usedYesBrim utilisé ?
quality_scoreYesQualité de surface (1=terrible, 5=parfait)
adhesion_scoreYesAdhésion au plateau (1=décollé, 5=parfait)
strength_scoreYesSolidité perçue (1=fragile, 5=incassable)
overall_scoreYesSatisfaction globale (1=raté, 5=parfait)
issuesNoProblèmes rencontrés : warping, stringing, under-extrusion, over-extrusion, layer-shift, ringing, blobs, elephants-foot, cracking, poor-bridging, clogging
notesNoNotes libres sur l'impression

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the tool 'enregistre' (records/stores) data and that it 'peuvent être partagées anonymement' (may be shared anonymously), which hints at data persistence and privacy considerations. However, it doesn't address critical behavioral aspects like authentication requirements, rate limits, whether the operation is idempotent, what happens on failure, or what confirmation/response to expect. For a data submission tool with 19 parameters, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly concise with two sentences that each earn their place. The first sentence states the core action and key parameters. The second sentence explains the value and data usage policy. No wasted words, front-loaded with the primary purpose, and appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high parameter count (19), no annotations, and no output schema, the description provides adequate basic context about what the tool does and why. However, it lacks sufficient behavioral transparency for a data submission tool, doesn't explain what happens after submission (success/failure responses), and offers minimal guidance on usage versus alternatives. The 100% schema coverage helps, but the description alone leaves gaps in operational understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 19 parameters thoroughly with descriptions, constraints, and defaults. The description adds minimal value beyond the schema by mentioning the four main scoring dimensions (quality, adhesion, strength, issues) and the purpose of data collection. However, it doesn't provide additional context about parameter relationships, formatting expectations, or usage patterns that aren't already in the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Enregistre un retour après impression') and resources ('Note la qualité, l'adhésion, la solidité, et les problèmes rencontrés'). It distinguishes itself from siblings like 'export_feedback' or 'feedback_stats' by focusing on submission/recording rather than analysis or export. The description explicitly mentions what data is captured and the downstream benefits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context ('après impression') but doesn't provide explicit guidance on when to use this tool versus alternatives. There's no mention of prerequisites, timing considerations, or comparison with sibling tools like 'diagnose_print' or 'upload_print'. The agent must infer usage from the purpose statement alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

suggest_orientationSuggérer la meilleure orientation d'impressionA

Teste 6 orientations principales d'un modèle 3D et classe chacune selon les overhangs, la hauteur d'impression, le contact plateau, et le volume de supports. Retourne un classement avec le score et l'explication pour chaque orientation.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesChemin absolu vers le fichier STL ou 3MF

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes what the tool does (tests orientations, ranks them, returns scores with explanations) but doesn't mention computational requirements, time complexity, whether it modifies the input file, or what happens with invalid inputs. It provides basic behavioral context but lacks operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured in two sentences: the first explains what the tool does (tests and ranks orientations), the second explains what it returns. Every word contributes to understanding the tool's functionality without redundancy or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description provides adequate context about what the tool does and returns, but lacks details about the ranking algorithm, score ranges, format of explanations, or error handling. Given the complexity of orientation analysis, more complete behavioral context would be helpful for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter has 100% schema description coverage, so the schema already documents it fully. The description doesn't add any parameter-specific information beyond what's in the schema, but with only one well-documented parameter, this is acceptable. The baseline for high schema coverage is 3, but the simplicity of a single parameter justifies a slightly higher score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: it tests 6 main orientations of a 3D model and ranks them based on specific criteria (overhangs, print height, bed contact, support volume). It distinguishes from siblings like 'analyze_mesh' or 'check_printability' by focusing specifically on orientation optimization rather than general analysis or printability checking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context (when you need to optimize 3D print orientation) but doesn't explicitly state when to use this tool versus alternatives like 'check_printability' or 'print_wizard'. No explicit exclusions or prerequisites are mentioned, leaving some ambiguity about when this specific orientation analysis is most appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upload_printEnvoyer un G-code à l'imprimanteB

Upload un fichier G-code vers OctoPrint ou PrusaConnect pour lancer l'impression. Nécessite l'URL du serveur et une API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
gcode_pathYesChemin du fichier G-code à envoyer
server_typeYesType de serveur d'impression
server_urlYesURL du serveur (ex: http://192.168.1.100:5000 pour OctoPrint)
api_keyYesClé API pour l'authentification
start_printNoLancer l'impression immédiatement après l'upload

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions authentication needs (API key) which is valuable, but fails to describe critical behaviors: whether this overwrites existing files, what happens if the print starts immediately, error handling for invalid G-code, or response format. For a tool that initiates physical printing, this leaves significant gaps in understanding its operational impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately brief (two sentences) and front-loaded with the core purpose. Every sentence contributes essential information about the tool's function and requirements. While efficient, it could be slightly more structured by separating purpose from prerequisites.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters, no annotations, and no output schema that initiates physical printing, the description is insufficient. It doesn't explain what happens after upload, how to verify success, error conditions, or safety considerations. The combination of mutation behavior (uploading and potentially starting prints) with minimal behavioral disclosure creates significant gaps for agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, providing complete parameter documentation. The description adds minimal value beyond the schema, only mentioning server URL and API key requirements which are already covered in the schema. It doesn't explain parameter interactions or provide additional context about how parameters affect the upload/print process.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('upload un fichier G-code') and target resources ('vers OctoPrint ou PrusaConnect'), with the explicit goal 'pour lancer l'impression'. It distinguishes this from sibling tools like 'slice_prusaslicer' or 'postprocess_gcode' by focusing on file transfer and print initiation rather than file creation or analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by mentioning server types and authentication requirements, but provides no explicit guidance on when to use this tool versus alternatives like 'print_wizard' or 'slice_prusaslicer'. It states prerequisites (URL and API key) but doesn't clarify exclusion scenarios or direct comparisons with sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 17 tool updatesv1.0.0
    • First observedanalyze_mesh
    • First observedcheck_printability
    • First observeddiagnose_print
    • First observedestimate_cost
    • First observedexport_feedback
    • First observedfeedback_stats
    • First observedgenerate_prusaslicer_config
    • First observedget_current_model
    • First observedpostprocess_gcode
    • First observedprint_wizard
    • First observedrecommend_profile
    • First observedscreenshot_prusaslicer
    • First observedsearch_filament
    • First observedslice_prusaslicer
    • First observedsubmit_feedback
    • First observedsuggest_orientation
    • First observedupload_print

TDQS

A3.6/5.0
Disambiguation4/5

Most tools have distinct purposes, but there is some overlap between analyze_mesh and check_printability, which both analyze 3D models for issues, potentially causing confusion. However, their descriptions differentiate them slightly: analyze_mesh focuses on geometric properties, while check_printability assesses printability problems. Other tools like diagnose_print and print_wizard are clearly distinct in their post-print and comprehensive analysis roles, respectively.

Naming Consistency4/5

Tool names follow a consistent snake_case pattern throughout, which is good. However, there is minor inconsistency in verb usage: some tools use action-oriented verbs like analyze, check, diagnose, while others use more descriptive terms like suggest_orientation or generate_prusaslicer_config. This deviation is slight and does not significantly hinder readability, but it prevents a perfect score.

Tool Count4/5

With 17 tools, the count is on the higher side but reasonable for a comprehensive 3D printing assistant server covering mesh analysis, slicing, printing, and feedback. It feels slightly heavy but not excessive, as each tool appears to serve a specific function in the workflow, from pre-print analysis to post-print diagnostics and community sharing.

Completeness5/5

The tool set provides complete coverage of the 3D printing domain, including pre-print analysis (e.g., analyze_mesh, check_printability), slicing (slice_prusaslicer), configuration (generate_prusaslicer_config), printing (upload_print), post-print feedback (submit_feedback, diagnose_print), and community features (export_feedback, feedback_stats). There are no obvious gaps; agents can handle the full lifecycle from model preparation to print completion and review.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Noosbai/PrusaMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server