Desenvolvedores

MCP e assistentes de IA

O servidor MCP do Gradiently dá a um assistente de IA ferramentas para buscar Marks, criar marcas e designs, editá-los e renderizá-los. Ele roda em um único endereço e usa sua chave de API.

Atualizado em 1 de outubro de 2026

O Model Context Protocol é um padrão aberto para dar ferramentas a assistentes de IA. O Gradiently mantém um servidor MCP hospedado em https://gradiently.design/api/mcp. Conecte uma vez com uma chave de API, e seu assistente pode chamar as ferramentas do Gradiently enquanto você conversa com ele. Cada ferramenta faz as mesmas requisições à API que o seu próprio código faria, então tem as mesmas permissões, licenças, créditos e limites.

Antes de conectar

  • Crie uma chave em Configurações › API e agentes (veja Chaves de API e escopos). A chave decide em qual workspace o assistente trabalha e quais ferramentas vão funcionar.
  • Toda requisição ao servidor precisa levar a chave como Authorization: Bearer gr_live_…, inclusive a primeira. Sem ela, o servidor responde 401.
  • O servidor usa Streamable HTTP, sem estado, com respostas em JSON. Ele não precisa de sessão e não tem um fluxo de eventos separado para abrir.
  • O servidor aceita só chaves de API. Ele não oferece login por OAuth.

Conectar o Claude Code

Adicione o Gradiently como servidor remoto por HTTP, com sua chave no cabeçalho. Guarde a chave em uma variável de ambiente para que ela nunca vá parar no histórico do shell nem em um arquivo com commit.

bash
export GRADIENTLY_API_KEY="gr_live_…"

claude mcp add --transport http gradiently https://gradiently.design/api/mcp \
  --header "Authorization: Bearer $GRADIENTLY_API_KEY"

Abra uma nova sessão do Claude Code e peça para ele listar as ferramentas do Gradiently para testar a conexão. Se ele informar um erro de autenticação, a chave foi digitada errado, foi revogada, ou quem a criou não é mais proprietário ou admin do workspace.

Outros clientes

Qualquer cliente que consiga adicionar um servidor MCP remoto por Streamable HTTP e enviar um cabeçalho de requisição personalizado pode usar o Gradiently com a mesma URL e o mesmo cabeçalho. Se o seu consegue ou não depende do cliente e da versão dele.

  • Claude Desktop e claude.ai adicionam servidores remotos como conectores personalizados. Se o formulário do conector permitir definir um cabeçalho Authorization, use a URL e o cabeçalho acima. Se ele só oferecer login por OAuth, o Gradiently ainda não pode ser conectado ali.
  • ChatGPT e outros assistentes: a mesma regra. Onde o cliente aceita servidores MCP remotos com um cabeçalho bearer, conecte com a URL e sua chave.
  • Clientes configurados por um arquivo JSON costumam aceitar o formato abaixo, que também aparece em Configurações, em Conectar um cliente MCP. Confira a documentação do seu cliente para ver o formato exato.
json
{
  "mcpServers": {
    "gradiently": {
      "url": "https://gradiently.design/api/mcp",
      "headers": { "Authorization": "Bearer gr_live_…" }
    }
  }
}

Como as ferramentas se comportam

  • Cada ferramenta devolve o resultado como texto JSON. Quando algo falha, a ferramenta devolve a mensagem de erro da API, como um escopo faltando ou um modelo desconhecido.
  • As ferramentas que precisam de uma marca aceitam um personality opcional (o id ou o slug dela). Sem ele, usam a primeira marca do workspace.
  • As ferramentas que salvam um design devolvem o link do Studio, o endereço /studio/<id> do design em gradiently.design.
  • Várias ferramentas primeiro consultam suas marcas por /api/me, que precisa de workspaces:read e designs:read. Essas ferramentas listam os dois escopos abaixo.
  • Uma chamada de ferramenta conta para o limite de requisições da sua chave uma vez pela requisição MCP e uma vez para cada requisição à API que a ferramenta faz.

Marks

FerramentaO que fazEntradasEscopos
search_marksBusca no Mercado público por nome ou código. Devolve cores, materiais, status e titular.q, tone (dark ou light), limit (de 1 a 120, padrão 24), todos opcionaismarks:read
get_markUm Mark e a receita completa dele.code (um código ou um id)marks:read
list_marksOs Marks mantidos para este workspace, com o estado da licença, e seus rascunhos nele.nenhumamarks:read
claim_markReserva um Mark disponível. Quem criou a chave fica com ele, nunca o workspace.codemarks:read, marks:claim
make_markMonta uma receita de Mark a partir de uma intenção, ou edita uma, com revisão de cor e legibilidade e o Mark mais próximo no Mercado. Não salva nada.spec, ou recipe e editmarks:read
save_markSalva uma receita como seu Mark privado em rascunho, ou atualiza um rascunho seu. Devolve o link da Forge.name, recipe, id (opcional)brand:generate
export_markRenderiza um Mark sozinho como PNG, com até 4096 px de lado.mark, width, height, personalityworkspaces:read, designs:read, designs:write
list_mark_versionsAs versões salvas de um rascunho, da mais recente à mais antiga. Só quem criou o Mark as vê.mark, cursormarks:read
save_mark_versionGuarda um rascunho como está agora, ou uma receita dada, como uma versão com nome.mark, label, recipebrand:generate
restore_mark_versionVolta uma versão para o rascunho. O estado atual é guardado antes como versão.mark, versionbrand:generate
update_mark_versionRenomeia ou marca uma versão com estrela. As versões com estrela são mantidas.mark, version, label, starredbrand:generate
delete_mark_versionExclui uma versão, nunca a publicada.mark, versionbrand:generate

Uma reserva que exige pagamento falha com uma mensagem dizendo que precisa de checkout; conclua no Gradiently. Uma chave não pode pagar por nada.

Marcas e workspace

FerramentaO que fazEntradasEscopos
generate_brandCria propostas de marca a partir de um nome e uma descrição. A mesma entrada sempre gera as mesmas propostas.input: name, description, industry, tone, colours, count, noncebrand:generate
adopt_brandTransforma uma proposta em um Mark em rascunho, uma marca e três designs iniciais, em uma única etapa.input (sem alteração), keybrand:generate
list_personalitiesAs marcas do workspace, com os ids delas.nenhumaworkspaces:read, designs:read
create_personalityCria uma marca com nome.namepersonalities:write
get_brand_profileO que uma marca é, para quem ela é, o tom de voz, o que fazer e o que evitar, e as fontes.personalityworkspaces:read, designs:read
update_brand_profileSubstitui o perfil de uma marca. O Designer lê esse perfil antes de cada design.personality, profileworkspaces:read, designs:read, personalities:write
my_workspaceVocê, as marcas do workspace com os códigos dos Marks delas, e os Marks mantidos para ele.nenhumaworkspaces:read, designs:read, marks:read
list_workspacesO workspace da chave e a sua função nele.cursorworkspaces:read
invite_memberEnvia por e-mail um convite de sete dias para entrar no workspace.workspaceId, email, role (admin, editor ou viewer)members:write

tone aceita até três destes: calm, bold, warm, cool, playful, luxe, natural, technical, editorial e nocturnal; uma requisição com mais é recusada. colours aceita até oito cores hex e count pede de uma a oito propostas; acima disso, a requisição também é recusada. Para adotar uma proposta, envie exatamente a entrada que a gerou junto com a key da proposta: o servidor cria a proposta de novo a partir dessa entrada e nunca confia em uma receita enviada pelo cliente.

Criar designs

FerramentaO que fazEntradasEscopos
designPede ao próprio Designer do Gradiently para criar um design, ou alterar um, a partir de um pedido em palavras simples. Ele lê o perfil da marca e o Mark, cria, revisa e salva.request, personality, size, designId, scope, selectionworkspaces:read, designs:read, designs:write
create_designsCria um conjunto de até doze designs a partir de um único briefing, em segundo plano.brief, items (size, brief, title), title, personality, mark, waitworkspaces:read, designs:read, designs:write
get_design_setO progresso de um conjunto e o link do Studio de cada design assim que ele existir.iddesigns:read
stop_design_setPara um conjunto em andamento. Os designs já feitos continuam salvos.iddesigns:write
compose_designDiagrama o seu texto com o motor de layout e salva. Devolve os problemas da revisão para corrigir.composition, personality, designId, titleworkspaces:read, designs:read, designs:write
find_templatesBusca nos designs feitos à mão pelo Gradiently. Devolve até seis, com uma imagem e os espaços de cada um.query, sizequalquer chave
use_templateCria um design salvo a partir de um modelo, mantendo a composição dele.template, text, photos, icons, hide, personality, designIdworkspaces:read, designs:read, designs:write
list_templatesOs ids dos modelos iniciais com os ids dos elementos de texto deles, e todos os tamanhos predefinidos.nenhumaqualquer chave
create_designCria um design a partir do id de um modelo inicial, de um tamanho predefinido e de texto indexado pelo id do elemento.template, size, copy, look, personalityworkspaces:read, designs:read, designs:write

design e create_designs gastam os créditos de IA do workspace, como o Designer faz no Studio. Quando o saldo é baixo demais, elas falham com uma mensagem avisando; faça uma recarga em Configurações › Créditos de IA. No máximo dois conjuntos rodam ao mesmo tempo por pessoa, e um conjunto concluído fica disponível para leitura por uns vinte minutos. Os designs em si continuam salvos.

Uma composição indica um size (o id de um tamanho predefinido, como ig-post, x-post ou li-banner, ou {w, h} em pixels), um layout (statement, editorial, poster, split, stat, quote, list, event ou minimal) e blocks na ordem de leitura, cada um com um role, como headline, body ou cta, e o seu text.

json
{
  "composition": {
    "size": "ig-post",
    "layout": "event",
    "blocks": [
      { "role": "eyebrow", "text": "Summer supper club" },
      { "role": "headline", "text": "Long table on the roof" },
      { "role": "details", "text": "", "items": ["Saturday 21 June", "7pm till late"] },
      { "role": "cta", "text": "Book a seat" }
    ]
  }
}
Entrada para compose_design. A resposta traz o id do design, o link do Studio, os problemas da revisão e os elementos que foram colocados.

Editar e exportar

FerramentaO que fazEntradasEscopos
list_designsOs designs salvos de uma marca, com links do Studio.personalityworkspaces:read, designs:read
get_designO tamanho, as páginas e cada elemento de um design com as propriedades dele. Filtre designs longos por página, tipo, nome ou texto.id, page, kind, name, textdesigns:read
edit_designAltera um design com até 100 operações, como uma pessoa faria no Studio, e salva.id, ops, pagedesigns:write
update_design_textSubstitui as palavras dos elementos de texto escolhidos e mantém o layout.id, text (id do elemento para as palavras)designs:read, designs:write
resize_copiesSalva cópias em até oito outros tamanhos, reorganizadas como o Studio faz. O original não muda.id, sizesdesigns:read, designs:write
wear_markColoca um Mark em um design, ou o torna o Mark de uma marca para os novos designs.mark, e design ou personalityveja abaixo
render_designRenderiza um design salvo em PNG ou PDF com o motor do Studio. Devolve o arquivo em base64.id, width, height, format, pagedesigns:read
export_design_linkPublica um link de visualização, /d/<id>, que qualquer pessoa com ele pode abrir.iddesigns:write

wear_mark em um design precisa de designs:read e designs:write. Tornar um Mark o Mark de uma marca precisa de workspaces:read, designs:read e personalities:write, e de um Mark que seja seu com uma licença ativa. Indicar o Mark pelo código também precisa de marks:read.

render_design aceita width e height de 1 a 4096 pixels e format png ou pdf. page conta a partir de 0: o PNG renderiza a primeira página por padrão e o PDF, todas as páginas. Um PDF mantém cada página no tamanho dela no Studio, então o tamanho que você pedir precisa ser o mesmo. Renderizar exige a mesma licença de exportação do Mark do design que o Studio exige, e nunca publica nem altera o design.

Exemplos de pedidos

  • “Encontre no Mercado Marks escuros com cromado e me mostre os três mais próximos de um azul-petróleo profundo.” Usa search_marks.
  • “Gere direções de marca para a Hearth, uma padaria de bairro, calma e acolhedora, e adote a que tiver a paleta mais suave.” Usa generate_brand e adopt_brand.
  • “Forje um Mark chamado Night Harbour: um fundo vazio, do azul-marinho ao laranja de lâmpada de sódio, uma camada discreta de granulação. Corrija o que a revisão apontar e depois salve.” Usa make_mark e save_mark.
  • “Mude o título do design 4f1c… para ‘Portas abertas às sete’ e faça cópias para um story do Instagram e um post do X.” Usa get_design, update_design_text e resize_copies.
  • “Renderize o design 4f1c… como PNG de 1080 por 1350 e salve em launch.png.” Usa render_design.
  • “Crie um pôster para a nossa festa de solstício no terraço, 21 de junho, do pôr do sol ao nascer do sol.” Usa design, que precisa de workspaces:read.

A referência completa dos endpoints por trás dessas ferramentas está em Referência da API. Para qualquer outra coisa, envie uma solicitação.

Precisa de ajuda?

Envie uma solicitação com o tópico API e MCP, e uma pessoa vai responder.

Enviar uma solicitação