mcpserver.lol
registry/flowcastle
Connection check verified live · 20h ago

flowcastle

Build, edit, and deploy Telegram bots on FlowCastle's hosted visual flow platform.

Tools 36
GitHub stars 2
Installs / wk
Licence MIT
Transport streamable-http
Last checked 20h ago

Tools & capabilities

36 tools

Read from the running server on 20h ago.

apply_actions can modify data flowIdactions*applicationIdconversationId
Validate and apply a batch of flow-builder actions — the single write path for editing flows, blocks, variables, broadcasts, sequences, and folders. Call this directly; a separate…
create_application nameskipDefaultFlowspreferredLanguage
Create a new application (workspace) owned by the caller. Requires a personal API key (usr_...) — application-scoped keys cannot create applications. Seeds default flows unless ski…
create_contact botIdemailphonestatuslastNameusername +4
Create a contact manually — for imports or externally-sourced audiences; contacts who message a bot are created automatically. Requires the manage_broadcasts permission. platformId…
deploy_application botIdsapplicationId
Publish the workspace to its bots — the API equivalent of the dashboard's Deploy button. This is the step that makes edits live. apply_actions writes to the DRAFT graph. Until this…
get_action_schema read-only topicsactionsblockTypesactionKinds
Return the action-authoring contract that apply_actions batches are validated against. Read-only, needs no API key. Called with NO arguments it returns a compact INDEX: every creat…
get_application_context read-only applicationId
Return the full application-level automation context in one read-only call: every flow (with folders), connected bots, variables, sequences, and operations. This is the broad orien…
get_block_details read-only flowId*blockId*applicationId
Return the complete contents of one block: block data, action configs, HTTP request bodies, custom-code files, triggers, menu payloads, and media paths. Read-only. This is the heav…
get_broadcast_analytics read-only endDatestartDatebroadcastId*applicationId
Return engagement analytics for a broadcast: delivery breakdown by status plus per-message-block sent and clicked counts for its flow, over an optional date window. Read-only. Sent…
get_broadcast_details read-only broadcastId*applicationId
Return full details for a single broadcast: status, schedule, recurrence rule, linked flow, and delivery breakdown by status. Read-only. Call list_broadcasts first to find the broa…
get_contact read-only contactId*applicationId
Return one contact's full profile plus every contact-variable value stored for them. Read-only. Values may hold personal data; variables of type SECRET are always redacted. Call li…
get_contact_activity read-only limitendDatecontactId*startDateapplicationIdincludeFlowRuns
Return one contact's engagement history: goals they achieved and buttons they clicked, newest first, plus all-time goal totals. Read-only. This is the per-contact companion to get_…
get_design_guidelines read-only
Return the flow-design rules that validation does NOT enforce: when to split a branch into its own flow, how navigation and menus must be wired, and worked examples. Read-only, tak…
get_flow_context read-only flowId*applicationId
Return one flow's graph topology: its blocks, how they link, and a short summary per block. Read-only. Deliberately omits block data and action configs to stay cheap — once you kno…
get_flow_example read-only id*includeSchemaExample
Return one reusable flow example by id, optionally with a complete action batch you can adapt and pass to apply_actions. Read-only, needs no API key. Call search_flow_examples firs…
get_funnel_analytics read-only applicationId
Return the measured conversion funnel of the workspace's busiest entry flow over the last 30 days: how many new contacts entered, which blocks they reached, where most of them stop…
get_module_catalog read-only applicationId
Return a compact index of both installed and available marketplace modules, with each module's key, versions, description, actions, and triggers. Read-only. Start here when you nee…
get_module_details read-only moduleKey*applicationIdmoduleVersion
Return everything needed to use one module: action input fields and their types, trigger configuration, manual setup fields (credentials an operator must fill in the dashboard), an…
get_variable_context read-only limitqueryscopeapplicationIdincludeValues
Search variable definitions by scope and keyword. Read-only. Returns { variables, total, returned, truncated } — compare returned against total to detect a cut-off result set and r…
get_workspace_summary read-only flowIdapplicationId
Return a compact application, flow, sequence, operation, and bot summary — the cheapest way to orient in a workspace. Read-only, no side effects. Deliberately omits variables and f…
install_module moduleKey*applicationIdmoduleVersion*
Install an exact marketplace module version into an application and create any missing installed-template actions. Requires the manage_automation permission. Call get_module_catalo…
list_applications read-only
List the applications this API key can access, with the caller role and the permissions it grants. Start here when using a personal API key (usr_...): every other tool needs an exp…
list_broadcasts read-only pagebotIdlimitstatusisRecurringapplicationId
List broadcasts in the application with status, schedule, and delivery counts. Read-only. Filters combine as AND. Note that delivery counts report messages attempted, not confirmed…
list_contacts read-only pagebotIdlimitsearchstatusisActive +1
List and search contacts in the application, paginated, newest first. Read-only. Filters combine as AND; search matches name, username, email, phone, and platformId. Returns compac…
list_event_contacts read-only kind*pagebotIdlimitsearchblockId +7
The reverse lookup: which contacts triggered one analytics event — achieved a goal (kind GOAL + goalKey), clicked a button (BUTTON_CLICK + blockId, optionally buttonId/buttonIndex)…
list_watched_groups read-only botIdapplicationId
List the group/channel chats a telegram_mtproto userbot monitors. Read-only. The watched list is the single source of truth for which chats the userbot processes: messages from unl…
read_messages read-only botIdlimitcursorendDatecontactIddirection +2
Read the message transcript: what users sent the bot and what the bot sent back, newest first. Source is the runtime's own message ledger, written by the bot as it handled each tur…
run_flow_autotest read-only flowIds*scenariosapplicationId
Runs deterministic behavioural tests against flows that are ALREADY applied (compiles them to an AST and simulates a user). Call after apply_actions to verify a build; read `summar…
search_flow_examples read-only tagslimitquery
Search the library of reusable flow examples covering common business cases (lead capture, onboarding, payments, reminders). Read-only, needs no API key. Returns compact matches —…
search_flows read-only limitquery*applicationId
Find every flow and block whose contents contain a keyword. Read-only. Searches message text and its translations, button labels and URLs, action names and configs, action input/ou…
send_flow_to_contacts flowId*contactIds*applicationId
Run an EXISTING interactive flow for each listed contact right now, outside any trigger — as if each of them had just triggered it. Use it when the WHOLE message is the flow — its…
send_message textbotIdmediabuttonscontactIdplatformId +1
Send a message to ONE contact right now, outside any flow. For reaching many contacts use a broadcast instead. Target the contact with contactId (globally unique — preferred), or w…
set_watched_groups botIdgroups*applicationId
Replace a telegram_mtproto userbot's watched-groups list — the chats it monitors. Requires the manage_settings permission. SET semantics: send the COMPLETE desired list every time…
sync_dialog_contacts botIdkindslimitapplicationId
Import a telegram_mtproto userbot's existing chats as contacts — DM partners, groups, and channels — so everything the account already talks to becomes a valid send_message target…
update_application nameisActiveapplicationIddefaultLanguageincomingMessageFlowIdincomingMessageBehavior
Update application-level settings (name, active state, default language, incoming-message behavior). Requires the manage_settings permission in that application. Only the fields yo…
update_contact emailphonestatuslastNameusernamecontactId* +3
Update a contact's profile fields and/or contact-variable values. Requires the manage_broadcasts permission. Only the fields you pass are changed — omitted fields keep their curren…
validate_actions read-only flowIdactions*applicationIdconversationId
Dry-run validation of a proposed batch of flow-builder actions. Mutates nothing and is safe to repeat. OPTIONAL: apply_actions runs this exact validation itself and applies nothing…