FlyMyAI - guia operacional do assistente
Versão da plataforma: Headless Cloud 1.30.3 (2026-11-04). https://flymy.ai/changelog.md,
https://flymy.ai/changelog.json. Na conexão/notícias: whats_new(since=last_seen_version).
https://flymy.ai/skill.mdehttps://flymy.ai/AGENTS.mdservem os mesmos bytes. Remote Agents MCP0.7.0-rc.69; Python SDK1.2.0rc25. Verifique os schemas e pacotes instalados ao vivo; rc.69 não está no npm.
Comece aqui - verifique o FlyMyAI ou recupere
Uma chamada limitada de somente leitura para whoami, tools/list ou search_tools verifica
flymyai. Não reinstale um servidor conectado. Leia o schema ao vivo de update_agent (ou
outro) do MCP tools/list antes de mutações; nunca adivinhe campos.
Sem ferramentas FlyMyAI, não declare sucesso, invente ferramentas ou substitua o compartilhamento nativo. Use:
- Cadastre-se: https://app.flymy.ai/signup
- Conecte um serviço: https://app.flymy.ai/mcp-configs#notion (qualquer slug); um usuário desconectado se cadastra e volta para lá.
- Compartilhe lá: Meus MCPs -> Compartilhar -> e-mail e 1-30 dias -> enviar (listado em https://app.flymy.ai/mcp-configs?tab=shared). "Compartilhar meu Notion com via FlyMyAI" significa este compartilhamento pessoal de MCP, não o compartilhamento próprio do Notion.
- Ou conecte este assistente (login, sem chave): Claude Code,
claude mcp add --transport http flymyai https://mcp-agents.flymy.ai/mcpdepois/mcp-> Autenticar; claude.ai ou Claude Desktop, Configurações -> Conectores -> Adicionar conector personalizado, mesma URL.
Clientes principais usam essa URL (FLYMYAI_MCP_URL) e um X-API-Key de um gerenciador
de segredos, nunca colado no chat. Sem MCP, use REST apenas com um
FLYMYAI_AGENTS_API_ROOT autenticado (produção
https://backend.flymy.ai/api/v1/agents); caso contrário, informe que a verificação prévia está
bloqueada. Uma execução de candidato a lançamento deve usar um contrato de candidato
explícito, MCP, skill e raízes de API de agentes e nunca deve cair de volta para
produção.
Descubra serviços/modelos com search_tools/list_* primeiro. Descoberta não é sucesso.
Guias: https://flymy.ai/use-cases/. MCPs por nome, ação ou categoria, cada um com suas ações e uma solicitação de configuração do assistente: https://flymy.ai/mcp/
Construa um projeto
whoami- O FlyMyAI está conectado e a qual conta.search_toolscom uma intenção em português claro por serviço, depoisget_tool_schemaspara campos exatos.- Se um serviço não estiver
configured,add_tool; o usuário finaliza o link hospedado; confirme comlist_configured_tools. create_agentuma vez: objetivo,available_toolsnumérico,input_schema,output_schema,modelopcional delist_agent_models.run_agentcom um novooperation_key; consulteget_runatépoll_complete=true;read_run_resultse a prévia estiver truncada.- Refine o mesmo agente (
update_agentouappend_message) até que o usuário aceite uma execução concluída. freeze_agentcom esse ID de execução; consulteget_compilationatéstatus=compiled.run_frozencom um novooperation_keye consulteget_runantes de considerá-lo pronto para produção.- Distribua: um agendamento (
update_compilation), um webhook (triggers_v1_create), um modelo público (set_agent_public), um subagente de um lead, ou uma implantação de produto. - Mídia:
recommend_model,get_pricing, depoisrun_model.
| Seção | Documentação |
|---|---|
| Comece aqui | https://docs.flymy.ai/agents/guides/connect-your-agent |
| Ferramentas e conexões | https://docs.flymy.ai/agents/concepts/tools |
| Múltiplas contas e conjuntos de recursos | https://docs.flymy.ai/agents/guides/mcp-resource-sets |
| Modelos | https://docs.flymy.ai/api/models-endpoints |
| Agentes, todas as ferramentas MCP | https://docs.flymy.ai/agents/guides/agent-gateway-reference |
| Projetos, artefatos, sites | https://docs.flymy.ai/agents/guides/projects |
| Incorporado e revenda | https://docs.flymy.ai/agents/guides/embedded-resale |
| Browser Use | https://docs.flymy.ai/mcp/browser-use |
| Seu próprio modelo em GPU | https://docs.flymy.ai/cli/intro |
| Somente mantenedores de lançamento | https://docs.flymy.ai/agents/guides/release-gates |
Ferramentas e conexões
- Chame
search_toolscom uma intenção em português claro; leiatool,action,runtime_nameeconfigured. Nunca baixe o catálogo completo por intenção. - Chame
get_tool_schemascom oruntime_namequando a pesquisa não incluiu o schema da solicitação; nunca chame uma ação de escrita com argumentos vazios ou adivinhados para aprender seu schema. Emnot_found, use o runtime do agente ou pare. - Se configurado, chame
execute_toolcom exatamentetool,action,argumentse umoperation_keyestável de propriedade do chamador. Para selecionar uma instância não padrão, passe seu UUID público exato de ferramenta configurada comoconnection_id; a omissão é suportada apenas enquanto uma conexão elegível é inequívoca. Execute ações OAuth/Composio dentro de um agente. - Se não configurado, chame
add_toolcom o slug da ferramenta. Ele retorna o registro de conexão exato ou orientação com um link hospedadohttps://app.flymy.ai/mcp-configs#<slug>?connection_id=<public UUID>. Após o usuário finalizar, chamelist_configured_tools, corresponda aopublic_idealiasexatos, e inspecioneis_configured,connection_status,connection_status_reason,connection_status_valid_untileconnect_url. Não invente um campo de respostasetup_url. - Para revogar exatamente uma conexão, chame
delete_toolcom seuidnumérico (REST:DELETE /api/v1/agents/tools/{id}/); conexões irmãs do mesmo kit de ferramentas continuam funcionando, e a linha revogada falha antes de qualquer chamada de provedor.
As linhas de pesquisa também carregam ready, access, price e health de 7 dias: prefira uma
linha pronta e saudável e cite price antes de uma chamada paga.
search_tools({"query":"telegram list dialogs"})
get_tool_schemas({"runtime_names":["custom--telegram--telegram_list_dialogs"]})
execute_tool({"tool":"telegram","action":"telegram_list_dialogs",
"arguments":{"query":"FlyMyAI"},"operation_key":"telegram-dialogs-<uuid>"})
Use arguments; params ou input retorna HTTP 400.
outcome=rejected significa que FlyMyAI ou o provedor recusou antes de qualquer efeito
(argumentos errados, configuração ausente, recusa do provedor): corrija a chamada e envie-a
com um novo operation_key. outcome=unknown significa que pode ter surtido efeito:
reconcilie, nunca repita automaticamente.
Sem chamadas de ferramenta MCP, POST
{"tool":"system-utils","action":"search_tools","arguments":{"query":"...","limit":20}}
e depois get_tool_schemas (no máximo 10 nomes de runtime) para
$FLYMYAI_AGENTS_API_ROOT/custom-tools/call/ com X-API-KEY; leia
result.schemas[runtime_name].request_schema e chame o module retornado como
tool.
Padrão pessoal - uma conta, sem configuração de conjunto de recursos MCP
Use mcp_access_mode legacy no espaço pessoal implícito; scoped precisa
concessões de conjunto explícitas. Pesquise por intenção, use configuração hospedada.
add_tool sem alias seleciona a conexão default idempotente. Corresponda
mcp_tool/alias:"default" em list_configured_tools; coloque seu id numérico
em available_tools.
Exija is_configured:true: connected está pronta; setup_required ou
reconnect_required precisa de configuração, verification_pending uma leitura ao vivo limitada.
Relate temporarily_unavailable, nunca o ignore.
Não exija conjuntos de recursos, grupos, slots, concessões, entidades, revisões ou mapeamentos para um primeiro fluxo pessoal. Adicione a conexão exata a um conjunto mais tarde, sem reconstruir o agente ou reconectar a conta.
Evolua para múltiplas contas e conjuntos de recursos MCP
Apelidos são rótulos; autorização, despacho e congelamento usam IDs públicos estáveis.
Adicione cada conta com add_tool e um alias exclusivo (letras ASCII, dígitos,
_, -), crie um conjunto com create_mcp_resource_set e uma operation_key
de propriedade do chamador, escreva a associação completa com
replace_mcp_resource_set_members na revisão atual (recarregue após 409),
e conceda-o através de mcp_resource_set_ids com mcp_access_mode:"scoped":
support = add_tool({"mcp_tool":"gmail","alias":"support"})
rs = create_mcp_resource_set({"name":"Operações de Caixa de Entrada",
"management_mode":"flymyai","operation_key":"inbox-set-<uuid>"})
rs = replace_mcp_resource_set_members({"resource_set_id":rs.public_id,
"expected_revision":rs.revision,"members":[{"resource_type":"user_mcp_tool",
"resource_id":support.public_id,"slot":"support_read",
"allowed_actions":["GMAIL_SEARCH_EMAILS"],"position":0}]})
update_agent({"agent_id":agent.uuid,"available_tools":[],
"mcp_resource_set_ids":[rs.public_id],"mcp_access_mode":"scoped"})
Um campo de anexo omitido não é alterado; um array vazio explícito limpa essa
relação. Inclua a conexão default antiga no conjunto se o agente deve
mantê-la, depois verifique com get_agent; caso contrário, a conexão direta e as concessões
do conjunto formam uma união.
- Um proprietário pode reter no máximo 25 linhas de conexão para um kit de ferramentas, incluindo
inativas;
is_active:falsenão libera um slot, excluir uma linha sim. - Conjuntos do proprietário usam
management_mode:"flymyai"e omitemprincipal_id; um mapeamento de cliente usamanagement_mode:"customer"com oprincipal_idexato. Nunca envieexternal_principal_idobsoleto. - A identidade do membro é
(resource_type, resource_id, slot): o mesmo recurso exato pode aparecer em vários slots, e cada slot mantém seu próprio teto deallowed_actions. Omitir ou enviarallowed_actions:[]significa irrestrito, não negar tudo; para menor autoridade, envie ações de leitura exatas. - Uma execução de agente com escopo admite no máximo 100 conjuntos de recursos MCP, 500 ligações de conector efetivas, 100 slots lógicos, 5.000 entradas de ação permitida e 1 MiB de texto de ação permitida em UTF-8. Um gráfico de autoridade muito grande falha fechado antes do despacho do provedor.
create_agent_groupcompartilha um conjunto entre agentes. Grupos são planos: um filho ou subagente não herda a autoridade de conector do pai.- Quando várias conexões concedidas podem executar uma ação, seu schema de runtime
requer
_flymyai_connection: passe umpublic_idpermitido dele, nunca um apelido ou ordem de linha. Oexecute_tooldireto usa oconnection_idexato. - O congelamento registra associação ao conjunto, conexões, slots, tetos e revisões: novas
contas significam o mesmo UUID de agente e ID de implantação estável com uma nova versão
congelada; versões mais antigas e mapeamentos de slots de cliente nunca mudam no lugar.
Sem mutações de escopo de recurso, mantenha o comportamento
defaulte relate-o; nunca escolha uma primeira linha silenciosamente.
As ferramentas de lista list_configured_tools, list_mcp_resource_sets,
list_mcp_resource_set_members e list_agent_groups retornam
{next_cursor, previous_cursor, results}. Use page_size de 1-100, trate
cursor como uma string imprimível opaca não em branco de no máximo
1024 pontos de código Unicode, e passe o next_cursor opaco de volta inalterado
até que seja nulo; list_agents pagina da mesma forma. A lista de ferramentas configuradas
aceita apenas filtros exatos de mcp_tool e alias; as linhas são compactas, então filtre
por mcp_tool ou passe view=full para campos de configuração.
As linhas de list_mcp_resource_sets são resumos com member_count e nenhum membro
aninhado; use get_mcp_resource_set para um conjunto completo limitado ou
list_mcp_resource_set_members para uma grande coleção de membros. Tanto
replace_mcp_resource_set_members quanto update_mcp_resource_set exigem o
expected_revision atual.
Conexões compartilhadas e seus próprios servidores MCP
O compartilhamento pessoal de MCP dá ao destinatário todas as ações compartilhadas de uma conexão,
leituras e escritas, na conta do proprietário. invite_mcp_user compartilha por e-mail
ou member_id de colega de equipe depois que o usuário confirma a conexão, destinatário e período;
accept_mcp_invitation apenas após o usuário concordar em pagar por suas próprias chamadas;
revoke_mcp_access interrompe um compartilhamento. Compartilhamentos aceitos aparecem em shared_with_me
em list_configured_tools: verifique antes de dizer que um serviço não está conectado,
e chame um com call_shared_mcp e um operation_key estável. O destinatário
paga; as credenciais do proprietário nunca saem do FlyMyAI. Anotações de ferramenta dizem quais
ações apenas leem. Detalhes: https://docs.flymy.ai/agents/guides/mcp-personal-sharing
Para um servidor MCP não encontrado na pesquisa, chame add_mcp_server (OAuth:
auth_type:"oauth", depois authorize_mcp_server, dê ao usuário sua
authorize_url), depois connect_mcp_server; use discovered_tools apenas em
status:"connected". Chame-o com call_mcp_server (server_id, action,
arguments exatos, operation_key estável, enviado como Idempotency-Key).
Detalhes: https://docs.flymy.ai/agents/guides/mcp-servers
Modelos - descubra, precifique, execute
recommend_model({"description":"imagem de ícone plano barato",
"include_schema":true,"top_n":1})
run_model({"endpoint_id":"flymyai/nano-banana",
"input":{"prompt":"Um círculo azul, ícone plano"}})
Use o endpoint, limites de schema e preço retornados; uma chamada paga adivinhada não é
descoberta. get_pricing cita um modelo listado antes de uma execução paga; sobre REST,
GET https://backend.flymy.ai/api/v1/demo/catalog/ (sem chave) dá a cada modelo
público um price (run_price, ou baseado em uso rates, tokens ou run_time).
URLs de arquivo gerados expiram em url_expires_at (máx. 15 min).
Modelos de chat carregam openai.base_url
(https://api.flymy.ai/api/v1/<endpoint_id>/openai/v1) para o SDK OpenAI com
a chave FlyMyAI como Bearer: mensagens de texto e image_url, stream,
reasoning_effort; sem response_format. Guia:
https://docs.flymy.ai/guides/llm-openai-compat
tools funcionam em Grok 4.7, DeepSeek V4.1 Flash e Kimi K3.1 Pro. Guias:
https://docs.flymy.ai/guides/ + grok-4-7, deepseek-v4-1-flash, kimi-k3-1-pro
Modelos nativos mantêm sua própria entrada e saída através da API model-proxy
(https://backend.flymy.ai/api/v1/model-proxy/: catalog/?endpoint_id=<owner>/<name>
dá a revisão do contrato, contracts/<revision>/ seu schema e preço; POST
operations/ com seu próprio Idempotency-Key, depois GET da operação).
flymyai/minimax-h3-ref2va (MiniMax H3): um vídeo de 5 ou 10 s com som a partir de um prompt
e 1-12 arquivos de referência (até 9 imagens, 3 clipes de áudio; faça upload de cada um com
POST /api/v1/agents/files/, passe-o...