Negotiated 2025-11-25. The bar is 2025-06-18 or newer.
Pass
HTTPS
The endpoint URL is https.
Performance
Not measured
Fast (p50)
Median latency 890 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.
Not measured
Consistent (p95)
95th percentile 890 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.
Not measured
Reliable (uptime)
1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.
Not measured
Stable tool list
Fewer than two successful probes in 30 days, so tool-list stability is not measured.
Access
Pass
Open access
tools/list succeeded with no credential, and the record declares none.
Not measured
Standard auth
Auth is not required, so the OAuth metadata check does not apply.
Not measured
Free tier cited
No publisher quote has been checked.
Tools
Pass
Tools described
Every tool description is at least 20 characters.
Pass
Valid input schemas
Every inputSchema is a JSON Schema object.
Fail
Parameters documented
414 of 576 parameters have a description (72%). The bar is 80%.
Pass
Safety hints
Every tool sets readOnlyHint or destructiveHint.
Publisher
Pass
Verified namespace
Listed in the Official MCP Registry.
Pass
Website matches publisher
The website host matches the reverse-domain namespace.
Fail
Source repo linked
No repository URL is on file.
Not measured
Repo owner matches
This namespace is not an io.github login, so the owner comparison does not apply.
Pass
Recently updated
Updated 2026-08-17T09:17:40.729239Z, within 180 days.
Not measured
Open-source licence
No GitHub repository to ask about a licence.
Start using Fine Structure
Connect to this server
Choose your client, copy the configuration, then enable the server in your client’s MCP settings.
Run this command in your terminal, then restart Claude Code.
Claude Code
claude mcp add --transport http fine-structure https://finestructure.ai/api/mcp
Capabilities
Tools 184
Showing 100 of 184 tools.
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 user to configure at their DNS provider.
Discovered 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, documented at https://finestructure.ai/api/mcp/docs.
Discovered add_knowledge_document
Add 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.
Discovered add_knowledge_note
Write a note into a notebook; agents and apps answer from it like from a document.
Discovered 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.
Discovered 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 ownership.
Discovered 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 client logs in with the same email and accepts the claim link.
Discovered agency_get_claim_status
Agency mode only. Inspect one handoff status without exposing the raw claim token.
Discovered agency_list_clients
Agency mode only. List client records and app handoff status for the authenticated agent.
Discovered apply_change_set
Apply a staged change set to the app. Creates a Saved Version before applying. Blocks on validation errors unless force=true.
Discovered apply_knowledge_redaction
Redact 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.
Discovered archive_agent_goal
Retire a goal: its runner stops and never runs again, and the goal stays readable. Use this when the owner asks to delete a goal.
Discovered archive_agent_task
Remove 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.
Discovered archive_agent_trigger
Retire a trigger: it never starts the agent again and stays readable. Use this when the owner asks to delete a trigger.
Discovered ask_knowledge_notebook
Ask 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.
Discovered 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 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.
Discovered cancel_agent_run
Cancel 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.
Discovered check_domain_verification
Check Fine Structure custom-domain verification and SSL status for the configured custom domain, then save the latest status.
Discovered 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, 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'.
Discovered compare_current_to_version
Compare the current app files to a Saved Version and return compact per-file diffs.
Discovered compare_saved_versions
Compare two Saved Versions and return per-file additions, removals, modifications, and compact diffs.
Store safe non-secret integration metadata for an app. Use set_secret for API keys/tokens.
Discovered 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 platform numbers become connectable.
Discovered 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 before the change.
Discovered 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 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.
Discovered create_agent_goal
Give 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.
Discovered create_agent_team
Create 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.
Discovered create_agent_trigger
Add 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.
Discovered 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 - poll get_job_status to track progress. When the job is done, the app is ready.
Discovered create_change_set
Create a staged file change set. Add multiple file changes, validate them as one app state, then apply atomically.
Discovered create_entity_records
Create/insert records in one app entity. Executes directly for the authenticated app owner and returns the created record ids.
Discovered create_entity_schema
Create an entity schema file in entities/<Entity>.json. Creates a Saved Version before writing.
Discovered create_knowledge_folder
Create a folder for notebooks, optionally inside another folder.
Discovered create_knowledge_notebook
Create an empty notebook, optionally inside a folder.
Discovered create_org_goal
Add a company-wide goal for the whole agent team to align to.
Discovered 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 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.
Discovered create_whatsapp_trigger
Save 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.
Discovered delete_ab_test
Delete a native A/B test from an app. Creates a Saved Version before the change.
Discovered 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 mismatch.
Discovered delete_secret
Delete one app secret by key.
Discovered 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.
Discovered disable_whatsapp_trigger
Switch a WhatsApp trigger off: new records no longer send its message. It stays saved.
Discovered discard_change_set
Discard a pending staged change set without changing app files.
Discovered get_ab_test_stats
Get views, unique visitors, conversions, and conversion rates for an A/B test.
Discovered get_agent
Read one agent: name, role, description, persona (its standing instructions), status, email address, WhatsApp number and which capability groups are switched on.
Discovered 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_before_id as before_id. For new replies, omit before_id.
Discovered 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 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.
Discovered 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 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.
Discovered 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.
Discovered 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 before updating it.
Discovered get_app_files
Get the file tree for an app with paths and byte sizes.
Discovered get_app_knowledge_access
Which of the owner's notebooks an app's AI may answer from, and the ones it could be given.
Discovered 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 publish and auth settings.
Discovered get_app_metadata
Read the saved public HTML-shell identity: name, description, language and image URLs/dimensions. Same settings as Studio SEO/GEO.
Discovered get_app_security_audit
Read recent server-side security audit events for an app.
Discovered 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, and recent security audit entries. Does not return secrets and does not grant access to other apps.
Discovered get_app_status
Get app overview: files, published state, URL, active jobs.
Discovered get_connection_access
Which of the owner's agents and apps may use one connection (from list_connections).
Discovered get_connection_status
Status 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.
Discovered get_credit_balance
The account's plan and both balances: build credits, which pay for creating and editing apps, and agent credits, which pay for agent runs.
Discovered get_domain_ssl_status
Return SSL/certificate status and pending certificate validation DNS records for the app custom domain.
Discovered get_domain_verification
Return the exact DNS records and instructions required to verify and route the app custom domain.
Discovered get_entities
Get all entity (data model) schemas for an app, with record counts. Each entity has fields, types, and relationships.
Discovered get_errors
Get recent runtime errors for an app (last 20). Useful for diagnosing issues before updating.
Discovered 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 events, and result summary when complete.
Discovered get_knowledge_access_log
Who opened, asked or changed the notebooks, newest first: people, apps and agents.
Discovered get_knowledge_answer
The state and, once ready, the answer of a question asked with ask_knowledge_notebook.
Discovered get_knowledge_chat
One conversation with a notebook: the questions and the answers with their sources.
Discovered get_knowledge_notebook_access
Who can use a notebook: the apps that answer from it and the owner's agents it is connected to.
Discovered get_knowledge_notebook_overview
A notebook's overview: the summary written from its sources, document counts by state, and which sources are ready.
Discovered get_knowledge_redaction_log
What was redacted in one document, by category and count, and whether the original was kept.
Discovered get_knowledge_redaction_policy
A notebook's automatic redaction policy for new uploads.
Discovered get_knowledge_redaction_run
A sensitive-data scan: per document its state and what was found (category, the text, the suggested replacement, confidence), and what was applied.
Discovered get_make_migration_report
Read every scenario in the owner's connected Make account and grade what moves to Fine Structure fully, partly or by hand. Read-only.
Discovered get_pages
Get all pages in an app with their file paths and sizes.
Discovered 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, validation, publishing, A/B testing, secrets, and platform rules.
Discovered 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 (commit, time). Pass since=<ISO timestamp> to get only the events after it.
Discovered get_preview_url
Return editor preview and published/public URLs for an app.
Discovered 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, restoring versions, or configuring secrets/integrations.
Discovered get_whatsapp_trigger_options
What a WhatsApp trigger can use in this app: the owner's WhatsApp numbers and flows, and the pages, entities and fields that create records.
Discovered import_knowledge_audio_url
Download a public audio file (a recording, a podcast episode) into a new notebook and transcribe it there.
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: 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.
Discovered 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' 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.
Discovered list_ab_tests
List the platform A/B tests configured for an app.
Discovered list_agent_activity
What 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.
Discovered list_agent_approvals
Actions 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.
Discovered list_agent_conversations
List recent visible conversations belonging to one of your agents. Use get_agent_conversation to read replies and results.
Discovered list_agent_goals
An agent's goals: objective, success criteria, plan, status, progress, current step and the background runner task that works on it.
Discovered list_agent_memories
What an agent has learned and kept: long-term facts and insights, newest first, optionally only those about one customer.
Discovered list_agent_tasks
List scheduled tasks for one agent (or the whole account), including schedule, status and next_run_at.
Discovered list_agent_templates
Ready-made single agent templates: role, description and suggested persona, for create_agent.
Discovered list_agent_triggers
What 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.
Discovered list_agents
List the AI agents on the user's account with id, name, role, status and FineMail address.
Discovered 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.
Discovered list_app_members
List generated-app runtime users/members for an app. This is separate from Studio project collaborators.
Discovered 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 account has more. Accepted editors can edit shared source; viewers can read it. Publishing, records, domains and security administration remain owner-only.
Discovered list_connectable_app_tools
What an agent could do with one third-party app once it is connected: its actions.
Discovered list_connection_catalog
Every service the platform can connect, with whether this account has connected it, whether one-click sign-in is available, and its connections.