# Finestructure Fine Structure MCP server

Source: https://glimind.com/server/mcp-registry%2Fai.finestructure%2Ffine-structure
Registry id: `mcp-registry/ai.finestructure/fine-structure`
Status: live (checked 2026-10-27T06:19:55.240Z)

## Measurements (30 days)

- Uptime: 99.87%
- Checks: 4987
- Outages (90 days): 39

## Install

```json
{
  "mcpServers": {
    "finestructure-fine-structure-mcp-server": {
      "type": "http",
      "url": "https://finestructure.ai/api/mcp"
    }
  }
}
```

Claude Code:

```sh
claude mcp add --transport http finestructure-fine-structure-mcp-server https://finestructure.ai/api/mcp
```

## Tools (99)

- `add_custom_domain`: Attach or replace the app custom domain through the same Fine Structure Studio custom-domain flow. Returns exact DNS verification and routing records for the us
- `add_file_change`: Stage one file upsert or delete inside a change set. Does not modify the live app until apply_change_set. Paths follow the Fine Structure app file API, document
- `agency_create_claim_link`: Agency mode only. Create a client claim link for an existing app owned by the agent. The client must log in with the invited email before ownership transfers.
- `agency_create_client`: Agency mode only. Create or update a client record for an account-level agent. This does not create a verified Fine Structure user account and does not transfer
- `agency_create_client_app`: Agency mode only. Create a new app owned by the agent, start generation, and create a claim link for the client. Ownership transfers only when the invited clien
- `agency_get_claim_status`: Agency mode only. Inspect one handoff status without exposing the raw claim token.
- `agency_list_clients`: Agency mode only. List client records and app handoff status for the authenticated agent.
- `apply_change_set`: Apply a staged change set to the app. Creates a Saved Version before applying. Blocks on validation errors unless force=true.
- `attach_agent_whatsapp`: Connect a platform WhatsApp number to one of the account's agents, so the owner can message that number and reach that agent. Requires the owner to be verified 
- `check_domain_verification`: Check Fine Structure custom-domain verification and SSL status for the configured custom domain, then save the latest status.
- `check_subdomain_available`: Check whether a platform subdomain can be claimed before calling set_app_subdomain. Returns available plus a status of available, invalid, reserved, taken, curr
- `compare_current_to_version`: Compare the current app files to a Saved Version and return compact per-file diffs.
- `compare_saved_versions`: Compare two Saved Versions and return per-file additions, removals, modifications, and compact diffs.
- `configure_domain_redirects`: Configure custom-domain redirect policy: primary domain, optional www/root redirect, and HTTPS enforcement.
- `configure_integration`: Store safe non-secret integration metadata for an app. Use set_secret for API keys/tokens.
- `confirm_owner_phone_verification`: Confirm the 6-digit code the owner received on WhatsApp from start_owner_phone_verification. On success the owner is verified: agents can message them, and plat
- `create_ab_test`: Create a native Fine Structure A/B test between existing app pages. Use update_app first if a variant page still needs to be generated. Creates a Saved Version 
- `create_agent`: Create an autonomous AI agent on the user's Fine Structure account: a standing worker, not a chat session. It gets the platform's default safe tool policy and i
- `create_app`: Create a new application from a natural language prompt. The AI generates a complete web app with pages, components, styling, and data models. Returns a job_id 
- `create_change_set`: Create a staged file change set. Add multiple file changes, validate them as one app state, then apply atomically.
- `create_entity_records`: Create/insert records in one app entity. Executes directly for the authenticated app owner and returns the created record ids.
- `create_entity_schema`: Create an entity schema file in entities/<Entity>.json. Creates a Saved Version before writing.
- `create_platform_request`: Open a request to the Fine Structure platform team: a bug, a feature request or a question about the platform itself (not about the user's app). Use it when som
- `delete_ab_test`: Delete a native A/B test from an app. Creates a Saved Version before the change.
- `delete_entity_records`: Delete exact records by ID or exact-match filters. Executes directly for the authenticated app owner; pass expected_count as a safety check to abort on a mismat
- `delete_secret`: Delete one app secret by key.
- `detach_agent_whatsapp`: Disconnect the owner's WhatsApp route from a platform number. Removes only this account's route; other accounts sharing the number keep theirs.
- `discard_change_set`: Discard a pending staged change set without changing app files.
- `get_ab_test_stats`: Get views, unique visitors, conversions, and conversion rates for an A/B test.
- `get_agent_conversation`: Read visible messages, answers and result links in an owned agent's conversation. Returns the newest page in chronological order. For older history, pass next_b
- `get_agent_task`: Check a durable task returned by send_agent_message or list_agent_tasks. Includes the latest execution status and pending approvals, including before a run star
- `get_agent_whatsapp`: Read the WhatsApp state of the connected account: whether the owner's phone is verified, which platform numbers they can connect, and which conversations alread
- `get_app_analytics`: Traffic analytics for an app's published site over a chosen window: total views, unique visitors, daily series, top pages, top referrer domains and device split
- `get_app_detail`: Deep introspection of an app: entities, pages, settings, integrations, environment variables, and file structure. Use this to understand what an app contains be
- `get_app_files`: Get the file tree for an app with paths and byte sizes.
- `get_app_links`: Return editor, preview, published path, subdomain, and custom-domain links plus whether each works for anonymous visitors, app users, or Studio users based on p
- `get_app_metadata`: Read the saved public HTML-shell identity: name, description, language and image URLs/dimensions. Same settings as Studio SEO/GEO.
- `get_app_security_audit`: Read recent server-side security audit events for an app.
- `get_app_security_context`: Return safe security context for one owned app: owner id/email, Studio collaborators, generated-app members, route policies, entity policies, function policies,
- `get_app_status`: Get app overview: files, published state, URL, active jobs.
- `get_domain_ssl_status`: Return SSL/certificate status and pending certificate validation DNS records for the app custom domain.
- `get_domain_verification`: Return the exact DNS records and instructions required to verify and route the app custom domain.
- `get_entities`: Get all entity (data model) schemas for an app, with record counts. Each entity has fields, types, and relationships.
- `get_errors`: Get recent runtime errors for an app (last 20). Useful for diagnosing issues before updating.
- `get_job_status`: Poll the status of an async generation job. Use this after create_app or update_app to know when the job is done. Returns status ('running' or 'done'), progress
- `get_pages`: Get all pages in an app with their file paths and sizes.
- `get_platform_guide`: Return a machine-readable Fine Structure / FSe2 guide for AI agents. Call this at the start of an MCP session to learn app files, entities, safe edit workflows,
- `get_platform_request`: One platform request with its full history: team replies, status changes (open | triaged | in_progress | needs_info | deployed | wont_fix) and what was deployed
- `get_preview_url`: Return editor preview and published/public URLs for an app.
- `get_recommended_workflow`: Return the recommended MCP tool sequence for a task type. Use this before creating apps, editing files, seeding data, publishing, setting up A/B tests, restorin
- `inspect_preview`: Return server-side preview context: URLs, persisted runtime/network errors, static clickable candidates, pages, and explicit live-browser availability.
- `invite_app_member`: Provision a generated-app runtime member with a role. This does not create a Studio collaborator, and the owner role cannot be assigned. password is required: a
- `invoke_function`: Run a backend function of an owned app exactly like the HTTP route and return its status and JSON. caller='owner' runs as the app owner; caller='anonymous' firs
- `list_ab_tests`: List the platform A/B tests configured for an app.
- `list_agent_conversations`: List recent visible conversations belonging to one of your agents. Use get_agent_conversation to read replies and results.
- `list_agent_tasks`: List scheduled tasks for one agent (or the whole account), including schedule, status and next_run_at.
- `list_agents`: List the AI agents on the user's account with id, name, role, status and FineMail address.
- `list_app_domains`: List an app's platform path, subdomain, and configured custom domain with verification, SSL, primary-domain, redirect, publish, and login-gating status.
- `list_app_members`: List generated-app runtime users/members for an app. This is separate from Studio project collaborators.
- `list_apps`: List owned and accepted Studio-shared applications, newest activity first. Returns up to `limit` apps per call plus the total count; page with `offset` when the
- `list_integrations`: List supported integrations and safe connected integration metadata for an app. Tokens/secrets are never returned.
- `list_platform_requests`: Your account's platform requests, newest activity first. Call it at the start of a session with since=<the updated_date you last saw> to learn what changed: rep
- `list_saved_versions`: List restorable Saved Versions for an app, including versions created by MCP writes.
- `list_secret_keys`: List secret key names for an app. Secret values are never returned.
- `patch_app_file`: Patch one file by replacing exact text. Safer than full overwrite for targeted edits. Creates a Saved Version before changing content. Paths follow the Fine Str
- `preview_saved_version`: Prepare an isolated read-only Saved Version preview, if enabled by the deployment. Returns compiled files for an offline sandbox, never restores files or reads 
- `publish_app`: Publish an app - freeze current state and make it live at a URL. Also configures whether the public URL is open, app-login gated, private, or inferred from the 
- `query_entity`: Query app data records for one entity with optional exact-match filters.
- `read_app_file`: Read one source file from an app's virtual filesystem. Paths follow the Fine Structure app file API, documented at https://finestructure.ai/api/mcp/docs.
- `read_app_files`: Read several source files from an app's virtual filesystem. Paths follow the Fine Structure app file API, documented at https://finestructure.ai/api/mcp/docs.
- `remove_app_member`: Remove a generated-app runtime member.
- `remove_custom_domain`: Remove the configured custom domain from the app and clean up the platform-side hostname registration when possible.
- `rename_app_file`: Rename or move one app source file atomically. Internally stages an upsert at new_path and a delete at old_path, validates the resulting app state, and creates 
- `reply_platform_request`: Add a reply or a finding to one of your platform requests without opening a new one, e.g. to answer a needs_info question (that reopens it).
- `restore_file_from_version`: Restore one file from a Saved Version instead of restoring the entire app. Creates a Saved Version before changing the file. Paths follow the Fine Structure app
- `schedule_agent_task`: Create a scheduled task for one of the user's agents. Supported schedule types: once (run_at ISO local time + timezone), interval (interval_minutes 5-1440), hou
- `seed_entity`: Compatibility tool for starter-record creation. Inserts directly for the authenticated app owner; by default it only seeds an empty entity (skip_if_not_empty).
- `send_agent_message`: Talk to an existing agent or assign it work using its normal tools, memory, permissions and team. Omit conversation_id to start a new owner conversation; supply
- `set_agent_owner_relay`: Set the owner's consent for one owned agent to relay reports from another owned agent (or all sources with '*'). Uses the same preference as the agent screen. D
- `set_app_metadata`: Update public HTML-shell metadata immediately, without AI, code edits, publishing or Saved Versions. Upload social_image/icon as base64 PNG/JPEG/WebP (max 5 MB,
- `set_app_subdomain`: Set or clear the app platform subdomain - the '<subdomain>.<base domain>' host Fine Structure already serves the app on. Runs the same ownership, format, reserv
- `set_entity_policy`: Replace server-side entity access policy. Optional action rules override read/write roles and can allow public create without public read, update, or delete. Om
- `set_function_policy`: Create or update the server-owned access policy of a backend function (functions/<name>.js). Without a policy a function answers only to the app owner's Studio 
- `set_primary_domain`: Set which app host should be treated as primary for generated links and custom-domain redirects.
- `set_route_policy`: Create or update a server-owned route policy for a generated app route.
- `set_secret`: Create or update one encrypted app secret. The secret value is never returned.
- `start_owner_phone_verification`: Send a 6-digit code over WhatsApp to the ACCOUNT OWNER's own phone. This is the one-time ownership proof required before a platform number can be connected, and
- `update_ab_test`: Update a native A/B test, including active state, variants, traffic, and conversion goal. Creates a Saved Version before the change.
- `update_app`: Update an existing application with a new prompt. The AI modifies the app based on your instructions. Creates a Saved Version before the update. Returns a job_i
- `update_app_member_role`: Update a generated-app runtime member role. This cannot assign owner and cannot change the Fine Structure account owner.
- `update_entity_metadata`: Set relationship/index metadata on an entity schema. This stores metadata in the schema file; DB index creation is automatic where supported by the platform.
- `update_entity_record`: Compatibility tool that updates one record by ID. Executes directly for the authenticated app owner.
- `update_entity_records`: Update exact records. Select explicit record_ids or exact-match filters and provide shared changes, or provide per-record updates. Executes directly for the aut
- `update_entity_schema`: Replace or shallow-merge an existing entity schema file. Creates a Saved Version before writing.
- `update_platform_request`: Platform team only: set the status of a request (open | triaged | in_progress | needs_info | deployed | wont_fix), attach the deployed commit and/or reply. depl
- `validate_app`: Run deterministic app checks: syntax, imports, routes/pages, entity schemas, missing entities, and recorded runtime errors.
- `validate_change_set`: Validate current app files plus staged change set files before applying.
- `validate_entity_relationships`: Validate entity relationship metadata and *_id references against existing entity schemas.
- `write_app_file`: Create or replace one file in an app's virtual filesystem. Creates a Saved Version before changing content. Paths and file model follow the Fine Structure app f

Measured by Glimind (https://glimind.com): MCP handshake + tool list only, no tool is ever called. CC BY 4.0.
