Fine Structure
ai.finestructure/fine-structureVersion 1.0.2Build and host full-stack apps from a prompt, with agents that reach you on WhatsApp and email.
Status
Responds580 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 13:29 UTC
- Latency
- 580 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://finestructure.ai/api/mcpResponds580 msNo sign-in
Claude Code
claude mcp add --transport http fine-structure https://finestructure.ai/api/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: fine-structure
Remote MCP server URL: https://finestructure.ai/api/mcpCursor
{
"mcpServers": {
"fine-structure": {
"url": "https://finestructure.ai/api/mcp"
}
}
}VS Code
code --add-mcp '{"name":"fine-structure","type":"http","url":"https://finestructure.ai/api/mcp"}'Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
184 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
add_custom_domainAttach or replace the app custom domain through the same Fine Structure Studio custom-domain flow. Returns exact DNS verification and routing records for the user to configure at their DNS provider. | Yes | No | No | Yes |
add_file_changeStage 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, documented at https://finestructure.ai/api/mcp/docs. | No | No | No | No |
add_knowledge_documentAdd a document to a notebook: plain text, or a file (PDF, Word, a spreadsheet, an image or audio) as base64. It is processed in the background (audio is transcribed); list_knowledge_documents shows when it is ready. The same file twice is recognised. | No | No | No | No |
add_knowledge_noteWrite a note into a notebook; agents and apps answer from it like from a document. | No | No | No | No |
agency_create_claim_linkAgency 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. | No | No | No | No |
agency_create_clientAgency 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 ownership. | No | No | No | No |
agency_create_client_appAgency 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 client logs in with the same email and accepts the claim link. | No | No | No | No |
agency_get_claim_statusAgency mode only. Inspect one handoff status without exposing the raw claim token. | No | Yes | Yes | No |
agency_list_clientsAgency mode only. List client records and app handoff status for the authenticated agent. | No | Yes | Yes | No |
apply_change_setApply a staged change set to the app. Creates a Saved Version before applying. Blocks on validation errors unless force=true. | No | No | No | No |
apply_knowledge_redactionRedact the chosen findings of a scan: approved maps each document id to the finding ids to replace. The original text is kept, so revert_knowledge_redaction can undo it. | No | No | No | No |
archive_agent_goalRetire a goal: its runner stops and never runs again, and the goal stays readable. Use this when the owner asks to delete a goal. | Yes | No | No | No |
archive_agent_taskRemove a scheduled task from the agent's schedule. It never runs again and stays readable in the history. Use this when the owner asks to delete or cancel a task. | Yes | No | No | No |
archive_agent_triggerRetire a trigger: it never starts the agent again and stays readable. Use this when the owner asks to delete a trigger. | Yes | No | No | No |
ask_knowledge_notebookAsk a notebook a question; the answer comes from its documents, with sources. Waits up to 25 seconds for the answer, otherwise returns the query_job_id for get_knowledge_answer. Without chat_session_id a new conversation starts. | No | No | No | No |
attach_agent_whatsappConnect 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 first. Take phone_number_id from get_agent_whatsapp. A number already used by another account is still valid to connect: it answers only this owner's verified phone. | No | No | No | Yes |
cancel_agent_runCancel one run in progress, for example a reply the agent is still working on. Work it handed to other agents is cancelled with it. Take run_id from list_agent_activity or get_agent_task. | Yes | No | No | No |
check_domain_verificationCheck Fine Structure custom-domain verification and SSL status for the configured custom domain, then save the latest status. | No | No | No | Yes |
check_subdomain_availableCheck whether a platform subdomain can be claimed before calling set_app_subdomain. Returns available plus a status of available, invalid, reserved, taken, current, or empty, with the exact reason. Pass app_id (an app you own) to have that app's own current subdomain reported as 'current' instead of 'taken'. | No | Yes | Yes | No |
compare_current_to_versionCompare the current app files to a Saved Version and return compact per-file diffs. | No | Yes | Yes | No |
compare_saved_versionsCompare two Saved Versions and return per-file additions, removals, modifications, and compact diffs. | No | Yes | Yes | No |
configure_domain_redirectsConfigure custom-domain redirect policy: primary domain, optional www/root redirect, and HTTPS enforcement. | No | No | No | Yes |
configure_integrationStore safe non-secret integration metadata for an app. Use set_secret for API keys/tokens. | No | No | No | No |
confirm_owner_phone_verificationConfirm 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 platform numbers become connectable. | No | No | No | No |
create_ab_testCreate 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 before the change. | No | No | No | Yes |
create_agentCreate 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 its own email address, it can read and write the app database, and once the owner phone is verified (see get_agent_whatsapp) it can message its owner on WhatsApp and by email through the platform system channels. Pair it with schedule_agent_task for recurring work such as following up new leads on WhatsApp each morning, watching an app for runtime errors, or sending a weekly summary. Messaging anyone other than the verified owner requires a channel the owner connects in the Fine Structure Studio. | No | No | No | Yes |
create_agent_goalGive an agent a goal to pursue on its own. It works on it every interval_minutes, at most max_iterations times, under its own permissions, so a step can message people the agent is allowed to reach. Each step uses agent credits. | No | No | No | Yes |
create_agent_teamCreate a whole team of agents from a template, wired to work together, optionally adapted to the owner's requirements and company name. The new agents start active with the platform's default safe permissions and can message only their verified owner until channels are connected in Fine Structure. | No | No | No | Yes |
create_agent_triggerAdd a trigger that starts the agent with these instructions: event (event_type such as lead.created, with an optional source), schedule (a schedule object) or watch. Each start is a run under the agent's permissions and uses agent credits. Its approval rules stay as set in Fine Structure, and a webhook trigger, whose URL is a secret, is made on the agent's screen. | No | No | No | Yes |
create_appCreate 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 - poll get_job_status to track progress. When the job is done, the app is ready. | No | No | No | No |
create_change_setCreate a staged file change set. Add multiple file changes, validate them as one app state, then apply atomically. | No | No | No | No |
create_entity_recordsCreate/insert records in one app entity. Executes directly for the authenticated app owner and returns the created record ids. | No | No | No | No |
create_entity_schemaCreate an entity schema file in entities/<Entity>.json. Creates a Saved Version before writing. | No | No | No | No |
create_knowledge_folderCreate a folder for notebooks, optionally inside another folder. | No | No | No | No |
create_knowledge_notebookCreate an empty notebook, optionally inside a folder. | No | No | No | No |
create_org_goalAdd a company-wide goal for the whole agent team to align to. | No | No | No | No |
create_platform_requestOpen 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 something in the platform blocks you instead of working around it. Give a reproduction the team can run (invoke_function / curl / the exact tool call and result), what you expected, and how the team will know it is closed. Credential-looking values are redacted. Returns request_id and a Studio URL; the team's replies, status changes and deployments come back through get_platform_request / list_platform_requests. Limits: 20 per account per day, 32 KB. | No | No | No | No |
create_whatsapp_triggerSave a WhatsApp trigger for record-created events. It is saved switched off and messages no one. Switching it on is done by the owner on the app's Automations screen in Fine Structure. | No | No | No | No |
delete_ab_testDelete a native A/B test from an app. Creates a Saved Version before the change. | Yes | No | No | Yes |
delete_entity_recordsDelete 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 mismatch. | Yes | No | No | No |
delete_secretDelete one app secret by key. | Yes | No | No | No |
detach_agent_whatsappDisconnect the owner's WhatsApp route from a platform number. Removes only this account's route; other accounts sharing the number keep theirs. | Yes | No | No | Yes |
disable_whatsapp_triggerSwitch a WhatsApp trigger off: new records no longer send its message. It stays saved. | No | No | No | No |
discard_change_setDiscard a pending staged change set without changing app files. | Yes | No | No | No |
get_ab_test_statsGet views, unique visitors, conversions, and conversion rates for an A/B test. | No | Yes | Yes | No |
get_agentRead one agent: name, role, description, persona (its standing instructions), status, email address, WhatsApp number and which capability groups are switched on. | No | Yes | Yes | No |
get_agent_conversationRead visible messages, answers and result links in an owned agent's conversation. Returns the newest page in chronological order. For older history, pass next_before_id as before_id. For new replies, omit before_id. | No | Yes | Yes | No |
get_agent_taskCheck a durable task returned by send_agent_message or list_agent_tasks. Includes the latest execution status and pending approvals, including before a run starts. Task scheduling state is separate from run outcome. Read the conversation for the actual answer; accepted/queued is not completed. Approvals must still be decided by the owner in Fine Structure. | No | Yes | Yes | No |
get_agent_whatsappRead the WhatsApp state of the connected account: whether the owner's phone is verified, which platform numbers they can connect, and which conversations already route to which agent. Call this first whenever the user asks to talk to an agent on WhatsApp, and repeat its next_step to them. | No | Yes | Yes | No |
get_app_analyticsTraffic 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. | No | Yes | Yes | No |
get_app_detailDeep introspection of an app: entities, pages, settings, integrations, environment variables, and file structure. Use this to understand what an app contains before updating it. | No | Yes | Yes | No |
get_app_filesGet the file tree for an app with paths and byte sizes. | No | Yes | Yes | No |
get_app_knowledge_accessWhich of the owner's notebooks an app's AI may answer from, and the ones it could be given. | No | Yes | Yes | No |
get_app_linksReturn editor, preview, published path, subdomain, and custom-domain links plus whether each works for anonymous visitors, app users, or Studio users based on publish and auth settings. | No | Yes | Yes | No |
get_app_metadataRead the saved public HTML-shell identity: name, description, language and image URLs/dimensions. Same settings as Studio SEO/GEO. | No | Yes | Yes | No |
get_app_security_auditRead recent server-side security audit events for an app. | No | Yes | Yes | No |
get_app_security_contextReturn safe security context for one owned app: owner id/email, Studio collaborators, generated-app members, route policies, entity policies, function policies, and recent security audit entries. Does not return secrets and does not grant access to other apps. | No | Yes | Yes | No |
get_app_statusGet app overview: files, published state, URL, active jobs. | No | Yes | Yes | No |
get_connection_accessWhich of the owner's agents and apps may use one connection (from list_connections). | No | Yes | Yes | No |
get_connection_statusStatus of the account-level connections: Facebook, Google Drive, TikTok and the social accounts connected through Zernio (Instagram, LinkedIn and others), including any that need to be reconnected. refresh true asks Zernio for the live state. | No | Yes | Yes | Yes |
get_credit_balanceThe account's plan and both balances: build credits, which pay for creating and editing apps, and agent credits, which pay for agent runs. | No | Yes | Yes | No |
get_domain_ssl_statusReturn SSL/certificate status and pending certificate validation DNS records for the app custom domain. | No | Yes | Yes | Yes |
get_domain_verificationReturn the exact DNS records and instructions required to verify and route the app custom domain. | No | Yes | Yes | No |
get_entitiesGet all entity (data model) schemas for an app, with record counts. Each entity has fields, types, and relationships. | No | Yes | Yes | No |
get_errorsGet recent runtime errors for an app (last 20). Useful for diagnosing issues before updating. | No | Yes | Yes | No |
get_job_statusPoll 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 events, and result summary when complete. | No | Yes | Yes | No |
get_knowledge_access_logWho opened, asked or changed the notebooks, newest first: people, apps and agents. | No | Yes | Yes | No |
get_knowledge_answerThe state and, once ready, the answer of a question asked with ask_knowledge_notebook. | No | Yes | Yes | No |
get_knowledge_chatOne conversation with a notebook: the questions and the answers with their sources. | No | Yes | Yes | No |
get_knowledge_notebook_accessWho can use a notebook: the apps that answer from it and the owner's agents it is connected to. | No | Yes | Yes | No |
get_knowledge_notebook_overviewA notebook's overview: the summary written from its sources, document counts by state, and which sources are ready. | No | Yes | Yes | No |
get_knowledge_redaction_logWhat was redacted in one document, by category and count, and whether the original was kept. | No | Yes | Yes | No |
get_knowledge_redaction_policyA notebook's automatic redaction policy for new uploads. | No | Yes | Yes | No |
get_knowledge_redaction_runA sensitive-data scan: per document its state and what was found (category, the text, the suggested replacement, confidence), and what was applied. | No | Yes | Yes | No |
get_make_migration_reportRead every scenario in the owner's connected Make account and grade what moves to Fine Structure fully, partly or by hand. Read-only. | No | Yes | Yes | Yes |
get_pagesGet all pages in an app with their file paths and sizes. | No | Yes | Yes | No |
get_platform_guideReturn 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, validation, publishing, A/B testing, secrets, and platform rules. | No | Yes | Yes | No |
get_platform_requestOne platform request with its full history: team replies, status changes (open | triaged | in_progress | needs_info | deployed | wont_fix) and what was deployed (commit, time). Pass since=<ISO timestamp> to get only the events after it. | No | Yes | Yes | No |
get_preview_urlReturn editor preview and published/public URLs for an app. | No | Yes | Yes | No |
get_recommended_workflowReturn the recommended MCP tool sequence for a task type. Use this before creating apps, editing files, seeding data, publishing, setting up A/B tests, restoring versions, or configuring secrets/integrations. | No | Yes | Yes | No |
get_whatsapp_trigger_optionsWhat a WhatsApp trigger can use in this app: the owner's WhatsApp numbers and flows, and the pages, entities and fields that create records. | No | Yes | Yes | No |
import_knowledge_audio_urlDownload a public audio file (a recording, a podcast episode) into a new notebook and transcribe it there. | No | No | No | Yes |
inspect_previewReturn server-side preview context: URLs, persisted runtime/network errors, static clickable candidates, pages, and explicit live-browser availability. | No | Yes | Yes | No |
invite_app_memberProvision 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: ask the account owner which password the member should get. This tool never generates one, because a generated password would come back in the result and that is a live credential in the conversation transcript. | No | No | No | No |
invoke_functionRun 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' first evaluates the function policy as a public visitor and returns the 401/403 decision without running when access would be denied. Use it to verify a function (secrets, outbound calls, policy) before wiring it into the app. | No | No | No | No |
list_ab_testsList the platform A/B tests configured for an app. | No | Yes | Yes | No |
list_agent_activityWhat the account's agents did, newest first: each run with its agent, status, the tools it called, agent credits used and any error. Read the run's conversation with get_agent_conversation for the full answer. | No | Yes | Yes | No |
list_agent_approvalsActions the agents are holding until the owner approves them, such as a message to a customer or a payment. Each comes with a plain description and a review link. The owner approves or rejects them in Fine Structure. | No | Yes | Yes | No |
list_agent_conversationsList recent visible conversations belonging to one of your agents. Use get_agent_conversation to read replies and results. | No | Yes | Yes | No |
list_agent_goalsAn agent's goals: objective, success criteria, plan, status, progress, current step and the background runner task that works on it. | No | Yes | Yes | No |
list_agent_memoriesWhat an agent has learned and kept: long-term facts and insights, newest first, optionally only those about one customer. | No | Yes | Yes | No |
list_agent_tasksList scheduled tasks for one agent (or the whole account), including schedule, status and next_run_at. | No | Yes | Yes | No |
list_agent_templatesReady-made single agent templates: role, description and suggested persona, for create_agent. | No | Yes | Yes | No |
list_agent_triggersWhat starts an agent on its own: event, schedule, watch and webhook triggers, with their instructions, status and last fire. A webhook's URL carries its secret and is shown only on the agent's screen. | No | Yes | Yes | No |
list_agentsList the AI agents on the user's account with id, name, role, status and FineMail address. | No | Yes | Yes | No |
list_app_domainsList an app's platform path, subdomain, and configured custom domain with verification, SSL, primary-domain, redirect, publish, and login-gating status. | No | Yes | Yes | No |
list_app_membersList generated-app runtime users/members for an app. This is separate from Studio project collaborators. | No | Yes | Yes | No |
list_appsList 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 account has more. Accepted editors can edit shared source; viewers can read it. Publishing, records, domains and security administration remain owner-only. | No | Yes | Yes | No |
list_connectable_app_toolsWhat an agent could do with one third-party app once it is connected: its actions. | No | Yes | Yes | Yes |
list_connection_catalogEvery service the platform can connect, with whether this account has connected it, whether one-click sign-in is available, and its connections. | No | Yes | Yes | No |
list_connectionsThe account's connected accounts and services (each mailbox, Drive view, MCP server, app account and so on is one connection), and whether Google Drive, Facebook and a mailbox are connected. Connecting, disconnecting and sharing a connection with an agent are done on the Connections screen in Fine Structure: https://finestructure.ai/connections | No | Yes | Yes | Yes |
list_event_connection_eventsThe latest 100 events a source received and what each did: status, step results, errors. | No | Yes | Yes | No |
list_event_connection_revisionsThe saved versions of a source's configuration. | No | Yes | Yes | No |
list_event_connectionsIncoming-events sources: external systems that send events to the account (a form, a shop, a payment provider), each with its status (draft, active, paused) and its mapping steps. | No | Yes | Yes | No |
list_facebook_ad_accountsThe ad accounts the connected Facebook account reaches, and which of them agents may use (an empty allowed list means all). | No | Yes | Yes | Yes |
list_failed_knowledge_documentsDocuments whose processing failed, with the error, so they can be retried or replaced. | No | Yes | Yes | No |
list_integrationsList supported integrations and safe connected integration metadata for an app. Tokens/secrets are never returned. | No | Yes | Yes | No |
list_knowledge_chatsThe conversations held with a notebook, newest first. | No | Yes | Yes | No |
list_knowledge_documentsThe documents (sources) of a notebook: name, type, status (queued, processing, ready, failed), size and error. | No | Yes | Yes | No |
list_knowledge_foldersThe folders the notebooks are filed in, nested. | No | Yes | Yes | No |
list_knowledge_notebooksThe knowledge notebooks of the owner's Business Brain, or of one app: title, folder, how many documents and their state. Agents and apps answer from notebooks they are given. | No | Yes | Yes | No |
list_knowledge_notesThe notes written in a notebook, with their full text. | No | Yes | Yes | No |
list_knowledge_webhooksThe ingest webhooks that let an external system add files to a notebook, with their state. Their URLs are secrets and are shown only on the Brain screen, where webhooks are created. | No | Yes | Yes | No |
list_org_goal_updatesThe progress notes agents wrote on a company-wide goal, newest first. | No | Yes | Yes | No |
list_org_goalsThe owner's company-wide goals, the shared objectives every agent aligns to, with progress. | No | Yes | Yes | No |
list_platform_requestsYour 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: replies, needs_info questions to answer, deployments with their commit. Filters: app_id, status. | No | Yes | Yes | No |
list_saved_versionsList restorable Saved Versions for an app, including versions created by MCP writes. | No | Yes | Yes | No |
list_secret_keysList secret key names for an app. Secret values are never returned. | No | Yes | Yes | No |
list_team_templatesReady-made agent teams (for example a sales or a support company) that create_agent_team builds in one step, with each member's role. | No | Yes | Yes | No |
list_whatsapp_trigger_logsWhat the app's WhatsApp triggers sent, newest first, with the outcome of each send. | No | Yes | Yes | No |
list_whatsapp_triggersThe app's WhatsApp triggers: the message sent to a customer when a record is created, the page and entity, the phone field, the sending number and whether it is on. | No | Yes | Yes | No |
move_knowledge_notebookFile a notebook in a folder; an empty or missing folder_id moves it to the top. | No | No | No | No |
patch_app_filePatch one file by replacing exact text. Safer than full overwrite for targeted edits. Creates a Saved Version before changing content. Paths follow the Fine Structure app file API, documented at https://finestructure.ai/api/mcp/docs. | No | No | No | No |
pause_event_connectionPause an incoming-events source: events that arrive are kept and wait, and none is processed until the owner activates it again on the Connections screen. | No | No | No | No |
preview_event_connectionDry run: show what a source would do with a sample event (its identity, which steps match, the mapped contact fields). Nothing is written or sent. | No | Yes | Yes | No |
preview_saved_versionPrepare an isolated read-only Saved Version preview, if enabled by the deployment. Returns compiled files for an offline sandbox, never restores files or reads live records. Never execute the returned program with host credentials. Requires app access and versions:read. | No | Yes | Yes | No |
publish_appPublish 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 app. | No | No | No | Yes |
query_entityQuery app data records for one entity with optional exact-match filters. | No | Yes | Yes | No |
read_app_fileRead 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. | No | Yes | Yes | No |
read_app_filesRead 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. | No | Yes | Yes | No |
read_knowledge_documentThe text extracted from one document (or the transcript of an audio file), in pages: offset and max_chars select the part, and the reply says how long the whole text is. | No | Yes | Yes | No |
remove_app_memberRemove a person's access to the app. They are blocked, as with block_app_member: their sessions end and the address can neither sign in nor sign up again. Nothing is deleted, and unblock_app_member gives the access back. | Yes | No | No | No |
remove_custom_domainRemove the configured custom domain from the app and clean up the platform-side hostname registration when possible. | Yes | No | No | Yes |
rename_app_fileRename 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 a Saved Version before applying. | No | No | No | No |
rename_knowledge_documentSet the name a document is shown under (its file name stays); an empty name clears it. | No | No | No | No |
rename_knowledge_notebookChange a notebook's title; its documents and notes stay as they are. | No | No | No | No |
reply_platform_requestAdd 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). | No | No | No | No |
restore_file_from_versionRestore 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 file API, documented at https://finestructure.ai/api/mcp/docs. | Yes | No | No | No |
retry_knowledge_documentProcess a document again after it failed or stalled. | No | No | No | No |
revert_knowledge_redactionUndo an applied redaction: the documents get their original text back. | Yes | No | No | No |
run_agent_goal_nowWork one step of a goal now, outside its interval, under the agent's permissions; it can message people and uses agent credits. Waits up to 15 seconds, then returns running true while the step goes on. | Yes | No | No | Yes |
run_agent_task_nowStart one run of a scheduled task now, outside its schedule. The run does what the task's instructions say under the agent's permissions, so it can message people and it uses agent credits. Waits up to 15 seconds: it returns the finished task, or running true while the run goes on. Follow it with get_agent_task. | Yes | No | No | Yes |
run_agent_trigger_nowFire a trigger once now as a test: the agent runs its instructions under its permissions, so it can message people and uses agent credits. Returns at once with the task that runs it; follow it with get_agent_task. | Yes | No | No | Yes |
scan_knowledge_for_sensitive_dataScan documents for personal or sensitive information, or for what the owner's instructions describe. Only finds; nothing changes until apply_knowledge_redaction. Runs in the background; read it with get_knowledge_redaction_run. | No | No | No | No |
schedule_agent_taskCreate 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), hourly, daily (time HH:MM + timezone), weekly (time + timezone + days_of_week 0=Sunday..6), cron (5-field expression + timezone), manual (only runs on demand). Returns the normalized schedule and the computed next_run_at so you can read the fire time back to the user in their timezone. For 'tell me when a new X comes in' (a lead, an order, a signup, any record of an app entity) do not poll with a plain interval: set watch, and the task costs nothing until a new record arrives. | No | No | No | Yes |
search_connectable_appsThird-party apps an agent can be connected to (thousands, through the apps lane), with the account's own connections. Search by name. | No | Yes | Yes | Yes |
seed_entityCompatibility tool for starter-record creation. Inserts directly for the authenticated app owner; by default it only seeds an empty entity (skip_if_not_empty). | No | No | No | No |
send_agent_messageTalk 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 it to continue one. Returns acceptance and a durable task_id immediately, NOT a completed answer. Poll get_agent_task and read get_agent_conversation for the actual response. Work continues after MCP disconnects. A follow-up in a busy conversation uses the normal queue. Customer conversations are readable but cannot be impersonated by this tool. | Yes | No | No | Yes |
send_whatsapp_trigger_testSend a saved trigger's message once to the owner's own verified WhatsApp number, rendered with a sample record, from the trigger's sending number. It never goes to anyone else. | No | No | No | Yes |
set_agent_owner_relaySet 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. Does not send a message or grant access to customer conversations. | No | No | No | No |
set_agent_statusPause, resume or archive an agent. paused: it stops working and keeps its setup. archived: it is retired from the account; use this when the owner asks to delete an agent. active: it works again. Tasks that came due while it was paused or archived were paused themselves and stay paused: the result lists them, and update_agent_task with status active resumes each one. | Yes | No | No | Yes |
set_app_knowledge_accessChoose which of the owner's notebooks an app's AI may answer from. The list replaces the current one; an empty list gives it none. | Yes | No | No | No |
set_app_metadataUpdate 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, 4096px); null clears an image. Language sets HTML lang/dir and OG locale. For per-page cards, write optional seo.json and publish it; dynamic entries may read only explicitly public entity records. | No | No | No | No |
set_app_subdomainSet or clear the app platform subdomain - the '<subdomain>.<base domain>' host Fine Structure already serves the app on. Runs the same ownership, format, reserved-name and uniqueness checks as the Studio subdomain field because it calls the same model function. Replacing a subdomain takes effect immediately and creates NO redirect: the previous name stops resolving to this app and is released for anyone to claim. Pass an empty subdomain to clear it. For a domain the user owns, use add_custom_domain instead. | Yes | No | No | Yes |
set_entity_policyReplace server-side entity access policy. Optional action rules override read/write roles and can allow public create without public read, update, or delete. Omitting rules replaces any existing action rules with read/write role behavior. | Yes | No | No | Yes |
set_function_policyCreate 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 token (401 for app visitors and webhooks). Recipes: anonymous checkout step or inbound webhook/IPN -> require_auth=false; signed-in members -> require_auth=true + allowed_roles (e.g. ['authenticated'] or ['admin','staff']); webhook with a shared secret -> require_secret=true + secret_name (an app secret) that the caller sends in secret_header. allowed_hosts fences the function's outbound network to those hosts plus the platform backend; omit it for open egress. | No | No | No | No |
set_knowledge_redaction_policySet a notebook's automatic redaction for new uploads: on or off, what to find (instructions), whether findings above min_confidence are applied at once. Originals are always kept. | Yes | No | No | No |
set_knowledge_webhook_enabledTurn an ingest webhook off (posts are refused) or on again. | No | No | No | Yes |
set_primary_domainSet which app host should be treated as primary for generated links and custom-domain redirects. | No | No | No | Yes |
set_route_policyCreate or update a server-owned route policy for a generated app route. | Yes | No | No | Yes |
set_secretCreate or update one encrypted app secret. The secret value is never returned. | Yes | No | No | No |
start_owner_phone_verificationSend 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 it also unlocks agents messaging the owner. Ask the user for their own WhatsApp number first and send only to that. No WhatsApp Business account is involved. | Yes | No | No | Yes |
stop_agent_taskStop a task now: pause its schedule and cancel the run in progress, which stops at its next safe point. Safe to repeat. Resume it later with update_agent_task status active. | Yes | No | No | No |
suggest_whatsapp_trigger_messageHave the AI write a WhatsApp message for a trigger from the page it follows, the app's brain and the record fields. Returns text to review; nothing is saved or sent. | No | No | No | No |
update_ab_testUpdate a native A/B test, including active state, variants, traffic, and conversion goal. Creates a Saved Version before the change. | No | No | No | Yes |
update_agentEdit an agent's name, role, description or persona (its standing instructions). Only the fields given change; the previous text is replaced. Capabilities, channels and approvals stay as they are and are changed in Fine Structure. | Yes | No | No | No |
update_agent_goalChange a goal's title, objective, success criteria, plan, iteration cap or status. paused stops its runner, active starts it again, completed and archived end it. Only the fields given change. | Yes | No | No | Yes |
update_agent_taskChange a scheduled task: title, instructions, schedule (same shape as schedule_agent_task), max_runs, or status active/paused. Only the fields given change. Returns the next run in UTC and in the schedule's timezone. | Yes | No | No | Yes |
update_agent_triggerChange a trigger's name, type, event, source, instructions, schedule or status (active or paused). Only the fields given change. Archive it with archive_agent_trigger. | Yes | No | No | Yes |
update_appUpdate 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_id - poll get_job_status to track progress. | No | No | No | No |
update_app_member_roleUpdate a generated-app runtime member role. This cannot assign owner and cannot change the Fine Structure account owner. | Yes | No | No | No |
update_entity_metadataSet relationship/index metadata on an entity schema. This stores metadata in the schema file; DB index creation is automatic where supported by the platform. | No | No | No | No |
update_entity_recordCompatibility tool that updates one record by ID. Executes directly for the authenticated app owner. | Yes | No | No | No |
update_entity_recordsUpdate exact records. Select explicit record_ids or exact-match filters and provide shared changes, or provide per-record updates. Executes directly for the authenticated app owner; expected_count aborts the write on a mismatch. | Yes | No | No | No |
update_entity_schemaReplace or shallow-merge an existing entity schema file. Creates a Saved Version before writing. | No | No | No | No |
update_knowledge_folderRename a folder, or move it: parent_id is the new parent, an empty string moves it to the top. | No | No | No | No |
update_knowledge_noteReplace the text of a note in a notebook with new text. | Yes | No | No | No |
update_org_goalChange a company-wide goal's title, objective, status (active, paused, done, cancelled) or progress (0-100). Only the fields given change. | Yes | No | No | No |
update_platform_requestPlatform team only: set the status of a request (open | triaged | in_progress | needs_info | deployed | wont_fix), attach the deployed commit and/or reply. deployed and needs_info mail the requester. | No | No | No | No |
update_whatsapp_triggerChange a trigger that is switched off: page, entity, fields, message, number or flow. Only the fields given change. A trigger that is on is turned off first with disable_whatsapp_trigger. | Yes | No | No | No |
validate_appRun deterministic app checks: syntax, imports, routes/pages, entity schemas, missing entities, and recorded runtime errors. | No | Yes | Yes | No |
validate_change_setValidate current app files plus staged change set files before applying. | No | Yes | Yes | No |
validate_entity_relationshipsValidate entity relationship metadata and *_id references against existing entity schemas. | No | Yes | Yes | No |
write_app_fileCreate 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 file API, documented at https://finestructure.ai/api/mcp/docs. | No | No | No | No |
Details
- Registry status
- Active
- Published
- Aug 17, 2026
- Updated
- Aug 17, 2026
- Repository
- Not given
- Categories (suggested)
- CommunicationSecuritySuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared