Apps inteligentes

Amplie seu app para o Gemini e a Pesquisa com a Connected Apps Platform

Alto-falantes

  • Kateryna Semenova

    Engenheiro sênior de relações com desenvolvedores

  • Mai Lowe

    Gerente de grupo de produtos

Sobre

Sobre a palestra

A nova Connected Apps Platform permite integrar os serviços do seu app diretamente ao Gemini, ao Modo IA na Pesquisa e ao sistema de inteligência do Android. Esta sessão oferece um guia prático para começar. Usando exemplos de código e aprendendo com estudos de caso reais, vamos analisar o ciclo de vida de desenvolvimento: criar, testar e publicar seu primeiro app conectado para alcançar os usuários nos fluxos de trabalho com tecnologia de IA.

Ao final desta sessão, você vai saber:

  • Integre seu serviço à Connected Apps Platform.
  • Teste sua integração em diferentes plataformas de IA.
  • Publique os recursos do seu app nos fluxos de trabalho de IA dos usuários.

Resumo

  • A Connected Apps Platform oferece um único ponto de entrada para iniciar capabilities de apps no Gemini e na Pesquisa usando esquemas declarativos. Ele será aberto em fases, começando com uma prévia para desenvolvedores dos EUA.
  • As integrações usam o padrão do Protocolo de Contexto de Modelo (MCP) por servidores remotos ou locais no dispositivo usando a biblioteca AppFunctions do Jetpack. Os servidores remotos também podem retornar uma interface personalizada renderizada em um iframe.
  • As confirmações são proporcionais ao risco para proteger a confiança do usuário. Os desenvolvedores marcam as ferramentas como somente leitura ou com destructiveHint, ajudando o Gemini a pedir confirmação explícita quando as ações modificam ou excluem dados.
  • O Modo de Desenvolvedor do Gemini permite inspecionar chamadas de ferramentas e latência em endpoints públicos. Ele já está disponível para desenvolvedores nos EUA.
  • O Google Connected Console lida com o lançamento de produção para desenvolvedores aprovados. Você configura endpoints, gerencia testadores em plataformas selecionadas e envia o app para revisão.

Recursos

Gemini Notebook

Tópicos

  • gemini
  • pesquisar
  • connected-apps
  • mcp
  • appfunctions
  • android

Transcrição

Introdução

  • Olá, pessoal.

  • Meu nome é Mai e sou líder de produto da plataforma de apps conectados ao Gemini.

  • Mais adiante, você também vai ouvir a Kate, nossa engenheira de DevRel.

  • Ela vai subir.

  • Por isso, hoje vamos falar sobre como você pode estender seu app para alguns dos produtos agênticos mais conhecidos do Google: o Gemini e a Pesquisa.

  • Vamos explicar como e por que os apps conectados são úteis e mágicos para nossos usuários.

  • E melhor ainda, vamos mostrar o que é preciso para criar um.

  • Então, vamos lá.

  • Sei que muitos de nós já percebemos que algo realmente enorme está acontecendo no ecossistema de apps.

  • A forma como as pessoas usam os dispositivos, buscam respostas e realizam tarefas não está apenas evoluindo.

  • Ele mudou radicalmente.

  • As pessoas não abrem mais navegadores e tocam na tela.

  • Eles estão conversando diretamente com assistentes como o Gemini.

  • Eles estão fazendo perguntas complexas ao Gemini, buscando respostas de forma multimodal na Pesquisa.

  • E elas esperam que os dispositivos Android não apenas entendam o que estão dizendo, mas também saibam o que querem fazer.

  • Pense em alguns dos seus próprios fluxos de trabalho que você pode fazer em um dia qualquer.

  • Digamos que você peça ao Gemini para ajudar a pensar em algumas opções para um fim de semana divertido com amigos em um lugar específico e em um horário específico.

  • Os modelos atuais podem processar esse plano em segundos.

  • É incrível.

  • É organizado.

  • E depois?

  • Ela termina.

  • O usuário se depara com um obstáculo e fica sem saber o que fazer, apenas com um plano e nada confirmado.

  • O modelo sabe o que fazer, mas não tem as mãos para fazer.

  • Por isso, você precisa copiar e colar as informações da conversa com o Gemini em um app ou outro.

  • Às vezes, se você estiver em um dispositivo móvel, fica muito difícil.

  • Depois, você precisa se lembrar de tudo e digitar as informações.

  • Esse salto cognitivo e esse atrito quebram totalmente a magia.

  • E o que isso significa para vocês?

  • Isso significa que você tem uma demanda de usuários com alta intenção que está presa em um balão de diálogo em vez de direcionar usuários valiosos e engajados para seu app.

  • É por isso que os apps conectados são revolucionários: eles nos ajudam a alcançar os usuários exatamente onde eles estão.

  • E, no momento, eles passam muito tempo conversando com assistentes como o Gemini.

  • Quando um usuário expressa uma intenção real de ação, esse é um momento extremamente valioso na jornada dele.

  • Eles não estão navegando de forma passiva.

  • Elas têm um objetivo explícito que querem alcançar agora.

  • Ao permitir integrações entre apps e esses modelos generativos, assistentes como o Gemini vão além de responder perguntas e passam a realizar tarefas.

  • Quando o usuário pede uma lista de tarefas priorizada, quer alugar um carro para uma próxima viagem ou comprar os ingredientes de uma receita que acabou de encontrar, seu app não fica no final da página como um link estático.

  • Você pode ajudar a trazer a magia e executar essa ação na hora.

  • E quero deixar uma coisa bem clara, porque sei que todos os desenvolvedores e líderes de produto estão pensando nisso: os apps conectados não servem para abstrair seu app.

  • Sua marca, sua lógica de negócios, seus relacionamentos autenticados e suas experiências de interface personalizadas pertencem a você.

  • Os apps conectados integram seus serviços a uma superfície de API agêntica, para que os produtos agênticos do Google possam direcionar usuários com alta intenção diretamente para seu produto.

Connected Apps Platform

  • Por isso, hoje, neste momento, tenho o prazer de anunciar oficialmente o lançamento da nossa Connected Apps Platform.

  • No passado, para alcançar usuários em todos os produtos do Google, era preciso fazer uma integração diferente para cada um deles.

  • Se você quisesse uma ação ou um atalho de app Android, precisava criar um.

  • Uma integração de pesquisa, outra.

  • Mas queremos que tudo seja o mais fácil e incrível possível para você.

  • Por isso, padronizamos a integração para oferecer um único ponto de entrada para lançar seu app em vários produtos de agentes do Google.

  • Agora, você cria a funcionalidade do seu app uma vez usando esquemas declarativos padrão e, pronto, ela aparece em dois dos nossos principais produtos: o Gemini e a Pesquisa.

  • E mais produtos serão lançados em breve.

  • Vamos falar sobre esse alcance e o que ele significa para você.

  • Você não precisa criar vários plug-ins personalizados, gerenciar quatro consoles de desenvolvedor diferentes e manter vários handshakes autenticados só para alcançar os usuários do Google no Android, no Gemini e na Pesquisa.

  • Com nossa plataforma unificada, você cria e registra as definições de ferramentas uma única vez.

  • Você escolhe os produtos do Google que quer usar, e nós oferecemos um único botão de lançamento no nosso novo Google Connected Console.

  • Quando você publica, seus recursos ficam disponíveis para qualquer pessoa que use o Gemini ou a Pesquisa.

  • Seja digitando no Gemini no laptop, fazendo uma série de consultas na Pesquisa na Web ou usando os recursos do assistente no Android, os usuários poderão usar seu app no momento mais importante, onde quer que estejam.

  • Por isso, vamos abrir nossa plataforma em fases, começando com o pré-lançamento.

  • Prometo que toda a equipe está trabalhando muito para disponibilizar todos os recursos para o maior número possível de pessoas o mais rápido possível.

  • Nesta fase do pré-lançamento, estamos abrindo a plataforma apenas para desenvolvedores dos EUA.

  • Você pode se inscrever usando um formulário de acesso, que está disponível no nosso guia para desenvolvedores em developers.google.com/connected-apps. Se você for um desenvolvedor do Google Play, também poderá encontrá-lo na página inicial do Google Play Console.

  • Então, a próxima pergunta seria: é muito difícil criar um desses?

  • Se você tiver uma API REST ou intents do Android, já está em um bom ponto de partida.

  • Estamos desenvolvendo com base em conceitos de desenvolvedor conhecidos.

  • Nossa plataforma se integra ao Protocolo de Contexto de Modelo (MCP, na sigla em inglês) padrão por meio de MCPs baseados em servidor e nativos do Android.

  • Para melhorar ainda mais, estamos lançando hoje um novo recurso no Gemini chamado Modo de Desenvolvedor, disponível para todos nos EUA.

  • Isso permite que você teste seu app no Gemini e receba feedback em tempo real sobre estados de erro, latência e respostas do modelo.

  • Em breve, você poderá gerar seus próprios conjuntos de avaliação, receber benchmarks e scorecards de métricas de qualidade.

  • Vai ser incrível.

  • Não importa qual seja seu acesso à plataforma, você sempre pode testar o app no Modo de Desenvolvedor.

  • Sei que vocês estão ansiosos por mais detalhes, e a Kate vai subir ao palco logo depois de mim para falar sobre isso em alguns minutos.

Confiança, privacidade e controle do usuário

  • Primeiro, preciso falar sobre algo que é cada vez mais importante: a confiança do usuário.

  • Sempre que falamos sobre agentes agindo em nome de alguém, a primeira pergunta costuma ser: "Como manter o usuário no controle?"

  • Vamos analisar isso em alguns conceitos simples.

  • Primeiro, nossas confirmações são proporcionais ao risco.

  • Não vamos colocar um pop-up na frente de cada chamada de ferramenta.

  • Procurar algo, verificar a disponibilidade do cardápio, rastrear um pedido, tudo isso precisa ser fácil.

  • Mas quando uma ação tem consequências reais, como editar algo compartilhado, concluir uma reserva ou excluir algo que o usuário não pode recuperar facilmente, o modelo pede um "sim" explícito antes de prosseguir.

  • Segundo, os dados sensíveis são mostrados, não ocultados.

  • Por isso, nossos produtos são projetados para verificar quais informações pessoais podem ser compartilhadas com seu app.

  • Se algo sensível for detectado, mostramos ao usuário exatamente o que está sendo compartilhado, para que ele decida se quer continuar com o app ou não naquele momento.

  • Terceiro, quando pedimos, somos específicos.

  • Não fazemos uma pergunta vaga como "Você tem certeza?", mas mostramos qual app e o que está sendo enviado ou alterado.

  • Dessa forma, a confirmação ajuda o usuário a realmente decidir, em vez de ser apenas algo em que ele clica aleatoriamente.

  • E como ninguém quer uma jornada cheia de confirmações, os usuários estão tendo mais controle sobre a frequência com que são solicitados.

  • No app do Gemini, por exemplo, os usuários podem escolher por app e até por ação se querem permitir a ação o tempo todo ou não.

  • Para você, isso significa que pedimos que marque suas ferramentas de forma honesta.

  • Marque o que é somente leitura, o que muda e o que exclui dados.

  • Esses indicadores ajudam nossos produtos a decidir quando trazer o usuário.

  • A Kate vai mostrar exatamente como fazer isso em alguns minutos.

Experiências de parceiros e caminho para a produção

  • Vamos voltar àquela jornada de fim de semana que estávamos falando, a parte do planejamento.

  • Lembra como isso era difícil e fragmentado?

  • Você tinha um plano ótimo para um grupo de amigos, mas aí se deparou com um obstáculo: precisou copiar e colar informações, alternando entre vários apps.

  • A Viator e a Ticketmaster são duas das nossas primeiras parcerias incríveis e viram uma oportunidade real de atender o usuário onde ele está.

  • Eles decidiram fazer uma parceria com a gente e remover essa barreira, permitindo que esse usuário com alta intenção acesse o app diretamente pelo Gemini.

  • Por causa dos apps conectados que esses parceiros criaram, toda a jornada é muito mais simples e tranquila.

  • Vamos conferir.

  • O usuário conecta os apps e pede ao Gemini para encontrar um tour gastronômico diurno na Viator e alguns ingressos de show na Ticketmaster para um grupo de 4 pessoas.

  • O Gemini reconhece a capacidade, chama as ferramentas da Viator e da Ticketmaster diretamente com o tamanho do grupo, as datas e as preferências corretas já preenchidas.

  • Sem sair da conversa, os dois apps mostram a disponibilidade em tempo real e oferecem experiências ricas e interativas diretamente no chat para o usuário.

  • Em vez de chegar a esse beco sem saída e ter que lidar com várias guias, a Viator e a Ticketmaster são exemplos de parceiros que permitem que os usuários façam o que precisam assim que descobrem o que querem, explorando paradas de tours gastronômicos, escolhendo assentos em shows e passando da descoberta à ação de forma totalmente integrada.

  • A era dos Acessos rápidos aos apps estáticos está chegando ao fim, pessoal, dando lugar a experiências inteligentes, proativas e agênticas.

  • Seus usuários já estão interagindo com a Pesquisa e o Gemini, pedindo ajuda.

  • Juntos, podemos ajudá-los a ir além das respostas e oferecer experiências realmente incríveis e mágicas.

  • E é isso.

  • Agora, vou passar a palavra para a Kate, que vai mostrar exatamente como criar um app conectado.

  • Venha aqui.

  • Olá, pessoal.

  • Sou Kate, engenheira de relações com desenvolvedores, e ajudo desenvolvedores como você a fazer a integração com a Plataforma de Apps Conectados.

  • Por isso, vou mostrar como testar, criar e implantar seu app conectado.

  • Como a Mai mencionou, há dois métodos principais de integração com a Connected Apps Platform: pelo servidor MCP remoto usando o protocolo MCP ou pelo MCP do Android, em que é possível criar o servidor MCP remoto no dispositivo usando a biblioteca AppFunctions.

  • Recomendamos o uso de servidores MCP remotos quando você quiser fazer a integração entre plataformas como Android, iOS e Web.

  • Também recebemos feedback de alguns desenvolvedores que preferem a execução local, quando os dados do app estão disponíveis apenas no dispositivo.

  • Para esses casos de uso, recomendamos usar o MCP do Android com a biblioteca AppFunctions do Jetpack.

  • Confira também a palestra dedicada em que Dan e Sarah explicam em detalhes como fazer a integração com a Plataforma de Apps Conectados usando as AppFunctions e o MCP para Android.

Integração e demonstração do servidor MCP remoto

  • Agora vamos aprender a criar um servidor MCP remoto.

  • Para mostrar como isso funciona na prática, criamos o app conectado oficial do AndroidDevSummit.

  • Vou mostrar como isso funciona.

  • Vamos voltar para uma demonstração ao vivo.

  • Imagine perguntar: "AndroidDevSummit, me fale mais sobre as sessões de XR".

  • No momento, o Gemini se conecta ao servidor MCP que criamos para esse app conectado.

  • Ele encontra a ferramenta certa para chamar e usa os dados dela para criar uma resposta fácil de entender.

  • Então, ele encontra as informações sobre as sessões relacionadas à XR aqui para o dia 1 e o dia 2 e, no final, renderiza nosso widget personalizado para o AndroidDevSummit com o bot do Android.

  • Então, você pode interagir com esse widget no Gemini.

  • Você pode conferir a programação, por exemplo, mudar o local ou filtrar por dia.

  • Também é possível filtrar por diferentes temas, como sessões relacionadas à XR, e conferir os detalhes e os palestrantes.

  • Então, uau!

  • Tudo dentro do Gemini, sua experiência de marca personalizada, e os usuários não precisam mudar, não precisam ir e encontrar outras informações em um app diferente, tudo em um só lugar sem interagir, sem nenhuma mudança ou sair do próprio app.

  • Vamos voltar aos slides.

Desenvolvimento de servidores MCP e interface personalizada

  • Vamos ver como criar esses apps conectados.

  • É muito fácil iniciar o servidor MCP com a biblioteca FastMCP, mas há quatro práticas recomendadas muito importantes a serem seguidas.

  • Primeiro, você precisa fornecer instruções explícitas ao servidor.

    from mcp.server.fastmcp import FastMCP
    
    mcp = FastMCP(
        name="ADS-MCP",
        instructions=(
            "A Model Context Protocol server providing event "
            "overview, schedules, sessions, speakers, and "
            "sandbox demos for the Android Developer Summit "
        ),
    )
  • Ao inicializar o servidor MCP, sempre defina instruções claras, descrevendo o domínio e os recursos dos apps conectados.

  • A Plataforma de Apps Conectados usa essas instruções para saber quando delegar ao seu servidor.

  • Além disso, o Google Connected Console, que vou mostrar mais tarde, também valida explicitamente se essas instruções estão presentes.

  • Em segundo lugar, adicione anotações de ferramentas para segurança e controle.

    @mcp.tool(
        title="List Sessions",
    
        annotations=ToolAnnotations(
            readOnlyHint=True,
            destructiveHint=False,
        ),
    
        meta={ … },
    )
    def list_sessions( … )
    …
  • Para nosso servidor ADS, temos estas duas anotações.

  • É importante que o modelo saiba quando sua ferramenta é somente leitura ou modifica dados.

  • Portanto, se você tiver ferramentas que editam ou excluem informações do usuário, sempre use esse destructiveHint para marcar as operações de edição ou exclusão.

  • Dessa forma, a Connected Apps Platform vai saber que precisa mostrar uma mensagem de confirmação ao usuário para que ele conclua a ação.

  • Também é possível configurar suas ferramentas no Google Connected Console, que vou mostrar mais adiante.

  • E, em terceiro lugar, esquemas com tipos bem definidos e docstrings semânticas.

    def list_sessions(
        track: Optional[str] = None,
        location: Optional[str] = None,
    ) -> List[Dict[str, Any]]:
        """Lists all sessions, optionally filtered by track
        (e.g. 'Tools and performance', 'Apps Foundation',
        'AI experiences', 'Android XR') or location
        (e.g. 'MTV', 'Mountain View', 'London', 'LON').
        """
        …
  • Trate as docstrings de parâmetros como parte do comando.

  • Nesta ferramenta list_sessions, documentamos explicitamente os valores esperados, como ferramentas e desempenho, ou MTV versus Londres para localização.

  • O fator mais importante para a chamada de ferramenta precisa são esquemas claros e descritivos.

  • E o último, vinculação de metadados de recursos da interface.

    @mcp.tool(
        …
        meta={
            "ui": {
                "resourceUri": "ui://ads-mcp/summit-app",
            },
            …
        },
    )
    def list_sessions(…)
    …
  • Confira nossa definição de interface no meta.

  • Esses metadados são a ponte que instrui o Gemini a vincular a saída da ferramenta diretamente ao nosso recurso de interface personalizada aqui.

  • Isso nos leva à renderização da interface.

    @mcp.resource(
        "ui://ads-mcp/summit-app",
        name="summit-app",
        mime_type="text/html",
    )
    def get_summit_ui() -> ResourceResult:
        """Renders the interactive ADS 2026 dashboard."""
        return ResourceResult([
            ResourceContent(
                _build_summit_ui_html(),
                mime_type="text/html",
            )
        ])
  • A Connected Apps Platform oferece uma maneira de renderizar interfaces do usuário avançadas do seu servidor MCP usando a interface dos apps MCP.

  • E quando você quiser flexibilidade total para uma interface personalizada e que expresse a marca, como o Android Dev Summit, poderá expor o recurso de interface do MCP.

  • O Gemini pode renderizar em um iframe seguro e em sandbox.

Fluxo de trabalho de teste e validação

  • Em seguida, vou mostrar como testar e implantar o app conectado, diretamente da sua máquina local para a produção.

  • Sim.

  • Vamos ver como desenvolver e testar localmente.

  • Durante o desenvolvimento, é fácil ativar o servidor localmente usando o primeiro comando.

    ./venv/bin/python server.py
    npx @modelcontextprotocol/inspector
  • Depois, use o MCP Inspector para depurar o servidor, conferir as ferramentas disponíveis e interagir com a interface.

  • Este é apenas um exemplo de como o MCP Inspector aparece no Android Dev Summit.

  • Assim, você pode ver as ferramentas, a interface e testar localmente.

  • Em seguida, você precisa implantar o servidor MCP em um endpoint remoto para ter acesso e validá-lo no Modo de Desenvolvimento do Gemini.

  • É possível hospedar o endpoint do MCP em qualquer infraestrutura ou provedor de nuvem.

  • Mas se você preferir o Google Cloud, é muito simples usar com a CLI do Google Cloud.

  • Basta usar este comando simples para implantar e seu app vai estar disponível remotamente.

    gcloud run deploy ads-mcp-server
  • A próxima etapa é validar seu endpoint público no Modo de Desenvolvedor do Gemini.

  • Vamos voltar para uma demonstração ao vivo, e vou mostrar como usar o modo de desenvolvimento na prática.

  • É fácil encontrar o modo de desenvolvedor. Basta acessar as configurações e clicar em "Modo de desenvolvedor".

  • Em seguida, use para escolher qual app conectado você quer testar.

  • Por exemplo, você pode criar um novo servidor fornecendo um URL de servidor MCP aqui.

  • Já criei um para testes, chamado ADS MCP, com meu endpoint de teste.

  • E quero testar como ele funciona com o Gemini de ponta a ponta.

  • Vamos perguntar algo.

  • "ADS MCP, me fale mais sobre o evento."

  • Agora, o Gemini chama nosso servidor MCP, e você também pode ver qual ferramenta está sendo chamada no Modo de Desenvolvedor.

  • Por exemplo, para este comando específico, "Conte mais sobre o evento", a função get_summit_info foi chamada.

  • E também é possível ver a resposta que foi bem-sucedida.

  • E você pode ver a latência.

  • Também é possível ver todos os detalhes da solicitação e da resposta.

  • Por exemplo, para nossa resposta, temos muitas informações.

  • Você também pode ampliar um pouco e ver como, por exemplo, depurar as informações necessárias e conferir se tudo está correto.

  • Você também pode copiar o link, o que é muito conveniente se quiser compartilhar com seu colega de equipe.

  • Também é possível exportar todo o log de eventos e compartilhar, se necessário.

  • Também é possível explorar outras ferramentas disponíveis. No Modo de Desenvolvedor, você pode acessar informações sobre o Summit, listar sessões e usar outras ferramentas.

  • Também é possível mudar o ambiente para simular diferentes contextos de usuário.

  • Por exemplo, é possível mudar o horário ou as preferências, como idiomas, e também configurar a autenticação.

  • Esse foi o Modo de Desenvolvedor.

  • E sim, você pode começar a criar seu servidor MCP hoje mesmo e testá-lo com o Modo de Desenvolvedor, a partir de hoje.

  • Ele já está disponível para todo mundo.

  • Vamos voltar aos slides.

  • Ok.

  • Digamos que você já tenha testado com o Modo de Desenvolvedor e tudo esteja funcionando. O que fazer em seguida?

  • Para acessar nossa plataforma, você precisa se inscrever e preencher este formulário de interesse.

  • Ele também está disponível na nossa documentação e no Google Connected Console.

Preparação para produção e recursos

  • Depois que o envio for aprovado, você terá acesso ao Google Connected Console, onde poderá preparar o aplicativo para o lançamento em produção.

  • No console, basta seguir algumas etapas para preparar o app.

  • Primeiro, você precisa criar um novo app conectado e dar um nome a ele.

  • Depois, basta selecionar os recursos e a categoria.

  • Por exemplo, neste exemplo, selecionamos produtividade e clicamos em "Criar".

  • Em seguida, nos detalhes do app, você precisa fornecer dados públicos, como nome de exibição, ícone, descrição voltada ao usuário, recursos do app, limitações, exemplos de comandos e outros dados.

  • Ao configurar o servidor MCP, você precisa fornecer o endpoint.

  • Você precisa verificar se esse domínio pertence a você e também pode configurar credenciais para ferramentas de sincronização.

  • O Google Console faz um snapshot do seu esquema MCP. Portanto, sempre que você fizer mudanças no esquema, será necessário voltar e reimplantar.

  • Depois disso, basta configurar a disponibilidade do app.

  • Você pode escolher em quais regiões o app vai ficar disponível, além de idiomas, plataformas e outras configurações de ferramentas individuais.

  • Depois, basta pressionar "Push changes" e enviar para a revisão do Gemini Stage.

  • Também é possível adicionar contas de teste em "Gerenciar testadores".

  • E teste imediatamente ao vivo com essas contas de teste na Web, em dispositivos móveis ou em qualquer plataforma selecionada antes, como o Gemini ou a Pesquisa, e envie para a prévia final.

  • E quando o app estiver pronto, basta enviá-lo para produção globalmente para seus usuários ou para regiões selecionadas, apenas enviando esse botão.

  • Pronto.

  • Estamos ansiosos para ver o que você vai criar com a Plataforma de Apps Conectados, seja expondo os recursos do seu app pelo servidor MCP remoto ou pelo MCP do Android.

  • Será um prazer ajudar você a criar essas integrações incríveis.

  • Basta seguir esta documentação e nossos exemplos disponíveis usando este código de barras.

  • E agradecemos demais a presença de vocês hoje.

  • Divirta-se com os códigos!

Código

Snippets de código

Snippet em Python aos 14:56 em "Desenvolvimento de servidores MCP e interface personalizada"
from mcp.server.fastmcp import FastMCP

mcp = FastMCP(
    name="ADS-MCP",
    instructions=(
        "A Model Context Protocol server providing event "
        "overview, schedules, sessions, speakers, and "
        "sandbox demos for the Android Developer Summit "
    ),
)
Snippet em Python aos 15:22 em "Desenvolvimento de servidores MCP e interface personalizada"
@mcp.tool(
    title="List Sessions",

    annotations=ToolAnnotations(
        readOnlyHint=True,
        destructiveHint=False,
    ),

    meta={ … },
)
def list_sessions( … )
…
Snippet em Python aos 16:08 em "Desenvolvimento de servidores MCP e interface personalizada"
def list_sessions(
    track: Optional[str] = None,
    location: Optional[str] = None,
) -> List[Dict[str, Any]]:
    """Lists all sessions, optionally filtered by track
    (e.g. 'Tools and performance', 'Apps Foundation',
    'AI experiences', 'Android XR') or location
    (e.g. 'MTV', 'Mountain View', 'London', 'LON').
    """
    …
Snippet em Python aos 16:32 em "Desenvolvimento de servidores MCP e interface personalizada"
@mcp.tool(
    …
    meta={
        "ui": {
            "resourceUri": "ui://ads-mcp/summit-app",
        },
        …
    },
)
def list_sessions(…)
…
Snippet de Python aos 16:49 em "Desenvolvimento de servidor MCP e interface personalizada"
@mcp.resource(
    "ui://ads-mcp/summit-app",
    name="summit-app",
    mime_type="text/html",
)
def get_summit_ui() -> ResourceResult:
    """Renders the interactive ADS 2026 dashboard."""
    return ResourceResult([
        ResourceContent(
            _build_summit_ui_html(),
            mime_type="text/html",
        )
    ])
Snippet de shell em 17:29 em "Fluxo de trabalho de teste e validação"
./venv/bin/python server.py
npx @modelcontextprotocol/inspector
Snippet do shell em 18:16 em "Fluxo de trabalho de teste e validação"
gcloud run deploy ads-mcp-server