LeashIndex Get the report

Index / storage

Fine Structure

ai-finestructure-fine-structure declares 184 capabilities across 184 tools, with 2 critical issues. One of them, no-revocation, is recorded for every server in the index because MCP has no field in which to declare a way to switch a tool off; a missing declaration is not evidence that the control is missing.

100/100 exposureHigh exposure

Manifest recorded 2026-11-08 from tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2. The date changes only when the manifest does. Not verified by a maintainer.

Issues

These describe what this server's manifest declares. A product can provide controls that MCP has no way to express — token revocation, an admin console, audit logs — and this page cannot see them. The absence of a declaration is not evidence that a control is absent.

critical · no-revocation · All 184 tools

184 of 184 tools declare no way for the customer to switch them off once granted. This applies to every tool because MCP has no field in which to declare a revocation mechanism; the product may provide one outside MCP that a manifest cannot show.

critical · irreversible-uncapped · 40 of 184 tools

40 tools are classified as irreversible or destructive and declare no limit. 37 of them are counted only because the server annotated them destructiveHint. In MCP that annotation marks a tool that may make destructive changes rather than only additive ones; it does not say the change cannot be undone.

high · no-expiry · All 184 tools

184 of 184 tools declare no expiry. This applies to every tool because MCP has no field in which to declare an expiry; the product may provide one outside MCP that a manifest cannot show.

high · no-audit-trail · All 184 tools

184 of 184 tools declare no record of their actions that the customer can read. This applies to every tool because MCP has no field in which to declare an audit requirement; the product may provide one outside MCP that a manifest cannot show.

high · uncapped-write · 53 of 184 tools

53 tools can modify data and declare no limit.

low · uncapped-read · 91 of 184 tools

91 tools can read data and declare no limit.

Declared capabilities

How each tool was read. declared means the server's own annotation said so — self-reported and unverified. inferred is from the tool's name. assumed means nothing indicated either way.

ToolRead asBasis
create_appwrite inferred
agency_create_clientwrite inferred
agency_list_clientsread declared
agency_create_client_appwrite inferred
agency_create_claim_linkwrite inferred
agency_get_claim_statusread declared
update_appwrite inferred
publish_appsend inferred
get_platform_guideread declared
get_recommended_workflowread declared
get_job_statusread declared
get_app_statusread declared
get_app_linksread declared
list_app_domainsread declared
set_app_subdomaindestructive declared
check_subdomain_availableread declared
add_custom_domaindestructive declared
get_domain_verificationread declared
check_domain_verificationread inferred
set_primary_domainwrite inferred
remove_custom_domaindestructive declared
get_domain_ssl_statusread declared
configure_domain_redirectswrite assumed
list_appsread declared
get_app_filesread declared
read_app_fileread declared
read_app_filesread declared
write_app_filewrite inferred
patch_app_filewrite inferred
rename_app_filewrite inferred
get_app_detailread declared
get_entitiesread declared
query_entityread declared
seed_entitywrite assumed
create_entity_recordsread inferred
update_entity_recorddestructive declared
update_entity_recordsdestructive declared
delete_entity_recordsdestructive declared
get_pagesread declared
get_errorsread declared
get_app_analyticsread declared
get_preview_urlread declared
list_saved_versionsread declared
create_change_setwrite inferred
add_file_changewrite inferred
validate_change_setread declared
apply_change_setwrite inferred
discard_change_setdestructive declared
validate_appread declared
inspect_previewread declared
get_app_security_contextread declared
set_route_policydestructive declared
set_function_policywrite inferred
invoke_functionwrite assumed
create_platform_requestwrite inferred
get_platform_requestread declared
list_platform_requestsread declared
reply_platform_requestwrite inferred
update_platform_requestwrite inferred
set_entity_policydestructive declared
list_app_membersread declared
invite_app_memberwrite assumed
update_app_member_roledestructive declared
remove_app_memberdestructive declared
get_app_security_auditread declared
compare_saved_versionsread declared
compare_current_to_versionread declared
restore_file_from_versiondestructive declared
create_entity_schemawrite inferred
update_entity_schemawrite inferred
validate_entity_relationshipsread declared
update_entity_metadatawrite inferred
list_secret_keysread declared
set_secretdestructive declared
delete_secretdestructive declared
list_integrationsread declared
configure_integrationwrite assumed
list_ab_testsread declared
create_ab_testwrite inferred
update_ab_testwrite inferred
delete_ab_testdestructive declared
get_ab_test_statsread declared
get_app_metadataread declared
set_app_metadatawrite inferred
preview_saved_versionread declared
set_agent_owner_relaywrite inferred
create_agentwrite inferred
list_agentsread declared
schedule_agent_taskwrite inferred
list_agent_tasksread declared
get_agent_whatsappread declared
start_owner_phone_verificationdestructive declared
confirm_owner_phone_verificationwrite assumed
attach_agent_whatsappwrite assumed
detach_agent_whatsappdestructive declared
list_agent_conversationsread declared
send_agent_messagedestructive declared
get_agent_conversationread declared
get_agent_taskread declared
get_agentread declared
update_agentdestructive declared
set_agent_statusdestructive declared
list_agent_activityread declared
list_agent_approvalsread declared
get_credit_balanceread declared
update_agent_taskdestructive declared
archive_agent_taskdestructive declared
run_agent_task_nowdestructive declared
stop_agent_taskdestructive declared
cancel_agent_rundestructive declared
list_agent_goalsread declared
create_agent_goalwrite inferred
update_agent_goaldestructive declared
archive_agent_goaldestructive declared
run_agent_goal_nowdestructive declared
list_org_goalsread declared
create_org_goalwrite inferred
update_org_goaldestructive declared
list_org_goal_updatesread declared
list_agent_triggersread declared
create_agent_triggerwrite inferred
update_agent_triggerdestructive declared
archive_agent_triggerdestructive declared
run_agent_trigger_nowdestructive declared
list_agent_memoriesread declared
list_team_templatesread declared
create_agent_teamwrite inferred
list_agent_templatesread declared
list_connectionsread declared
list_connection_catalogread declared
get_connection_accessread declared
get_connection_statusread declared
list_facebook_ad_accountsread declared
search_connectable_appsread declared
list_connectable_app_toolsread declared
get_make_migration_reportread declared
list_event_connectionsread declared
list_event_connection_eventsread declared
list_event_connection_revisionsread declared
preview_event_connectionread declared
pause_event_connectionwrite assumed
list_knowledge_notebooksread declared
list_knowledge_foldersread declared
list_knowledge_documentsread declared
get_knowledge_notebook_overviewread declared
read_knowledge_documentread declared
list_knowledge_notesread declared
list_knowledge_chatsread declared
get_knowledge_chatread declared
get_knowledge_answerread declared
get_knowledge_notebook_accessread declared
get_app_knowledge_accessread declared
list_knowledge_webhooksread declared
get_knowledge_redaction_runread declared
get_knowledge_redaction_policyread declared
get_knowledge_redaction_logread declared
get_knowledge_access_logread declared
list_failed_knowledge_documentsread declared
create_knowledge_notebookwrite inferred
rename_knowledge_notebookwrite inferred
create_knowledge_folderwrite inferred
update_knowledge_folderwrite inferred
move_knowledge_notebookwrite inferred
set_app_knowledge_accessdestructive declared
add_knowledge_notewrite inferred
update_knowledge_notedestructive declared
add_knowledge_documentwrite inferred
import_knowledge_audio_urlwrite assumed
rename_knowledge_documentwrite inferred
retry_knowledge_documentwrite assumed
ask_knowledge_notebookwrite assumed
set_knowledge_webhook_enabledwrite inferred
scan_knowledge_for_sensitive_datawrite assumed
apply_knowledge_redactionwrite assumed
revert_knowledge_redactiondestructive declared
set_knowledge_redaction_policydestructive declared
list_whatsapp_triggersread declared
get_whatsapp_trigger_optionsread declared
list_whatsapp_trigger_logsread declared
create_whatsapp_triggerwrite inferred
update_whatsapp_triggerdestructive declared
disable_whatsapp_triggerwrite assumed
send_whatsapp_trigger_testsend inferred
suggest_whatsapp_trigger_messagesend inferred

Record history

Earlier records for this server. A correction is added here, never written over the record it corrects.

RecordedExposureSource
2026-10-21100 tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2
2026-10-16100 tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2
2026-10-11100 tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2
2026-09-28100 tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2
2026-09-21100 tools/list on https://finestructure.ai/api/mcp, published in the official MCP registry as ai.finestructure/fine-structure 1.0.2
Answering this question about your own agent? The self-serve stack report applies the same reading to your own stack or server and gives you a dated document you can hand to a customer's security review. It is generated in your browser, with nobody to wait for. Buying one does not change this page, its score or its place in the index — see Independence.
Maintain this server? If this page misreads your manifest, or your server has changed, submit its current tools/list response and it will be re-scored and dated. Corrections are published alongside the original, not in place of it.