Skip to main content
Glama
iMateo

fastpanel-mcp

by iMateo

site_configuration_update

Update nginx, Apache, and PHP configuration for a FastPanel site. Supports partial updates and includes a dry-run mode to preview changes before applying.

Instructions

Replace the nginx (frontend), apache (backend) and php.ini config for a site. DANGEROUS: invalid syntax can take down the site or the whole nginx/apache service — this tool does NOT validate nginx syntax before applying (no nginx -t), so preview with dry_run and double-check by hand. ⚠️ SIDE EFFECT — manual mode: the first config update flips the site to manual_changes=true on the panel side. After that, FastPanel STOPS managing this site's config: it will no longer auto-insert the 443 server block, the HTTP→HTTPS redirect, or Let's Encrypt renewal/acme-challenge locations when you issue or renew SSL. You become responsible for the full HTTPS block (including ssl_certificate paths — get them from certificates_list crt_path/key_path). Partial update IS supported here (unlike the raw API): omit any of frontend/backend/phpini and the tool fetches the current value via site_configuration_get and sends it back unchanged, so you can safely change just one block. Endpoint: PUT /api/sites/{site_id}/configuration. WRITE — confirm:true required.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
phpiniNoFull php.ini overrides for this site. Omit to keep current.
backendNoFull apache/httpd config for this site (VirtualHost block). Omit to keep current.
confirmNo
dry_runNo
site_idYesSite id from sites_list
frontendNoFull nginx config for this site (HTTPS server block + HTTP redirect block). Omit to keep current.
Behavior5/5

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

With no annotations, the description fully discloses crucial behaviors: no nginx syntax validation, risk of taking down services, side effect of flipping manual_changes, FastPanel ceasing config management, and the need to handle SSL manually. It also notes the confirm requirement for write operations.

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 thorough but verbose; every sentence adds value given the complexity and danger. However, it could be more structured (e.g., bullet points) to improve scannability. It is front-loaded with purpose and danger.

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

Completeness5/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 covers all essential aspects: purpose, danger, side effects, partial update, prerequisites (site_id from sites_list), and endpoint. It is fully adequate for agent decision-making.

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

Parameters5/5

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

All parameters already have schema descriptions, but the description adds significant value: it explains that omitting a parameter fetches current value from site_configuration_get, clarifies the use of confirm and dry_run, and provides guidance on obtaining current config. This goes well beyond 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 replaces nginx, apache, and php.ini config for a site. It distinguishes from siblings like site_backend_update (backend-only) and site_configuration_get (read-only).

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

Usage Guidelines5/5

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

Explicitly warns about danger and lack of validation, recommends using dry_run for preview, mentions side effect of manual mode, and explains partial update support. It provides clear when-to-use and when-to-avoid guidance.

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

Install Server

Other Tools

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/iMateo/fastpanel-mcp'

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