> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Servidor MCP do Replit

> Conecte seu cliente MCP ao Replit para criar, atualizar e gerenciar aplicativos de forma programática.

<Note>
  O Servidor MCP do Replit está em **beta**. As ferramentas e o comportamento podem mudar.
</Note>

O servidor MCP do Replit permite que clientes externos criem, atualizem e gerenciem aplicações full-stack no Replit usando o [Model Context Protocol](https://modelcontextprotocol.io). Alimentado pelo Replit Agent, ele transforma prompts em linguagem natural em aplicativos ativos e implantados.

Esta página é a referência para desenvolvedores que desejam conectar seu próprio cliente MCP. Quer usar o Replit a partir de uma ferramenta que você já usa? Consulte [Replit no Claude](/pt/references/platforms/claude), [Replit no Slack](/pt/references/platforms/slack) ou [Replit no ChatGPT](/pt/references/platforms/chatgpt).

## Detalhes do servidor

| Propriedade      | Valor                                                          |
| ---------------- | -------------------------------------------------------------- |
| **URL**          | `https://replit-mcp.com/server/mcp`                            |
| **Transporte**   | HTTP com Streaming                                             |
| **Autenticação** | OAuth 2.0 (gerenciado automaticamente por clientes e SDKs MCP) |

### Requisitos

**Para desenvolvedores:**

* Um cliente ou SDK MCP que suporte transporte HTTP com Streaming

**Para criadores (usuários finais):**

* Uma conta no Replit (Free, Core, Pro ou Enterprise)

### Autenticação

O servidor usa OAuth 2.1 com PKCE. Clientes MCP como o Claude Code gerenciam todo o fluxo automaticamente. Se você estiver desenvolvendo com um SDK de cliente MCP, ele gerencia a descoberta, o registro dinâmico de cliente, PKCE e a troca de tokens — você fornece a UX (redirecionamento de navegador, manipulador de callback, armazenamento de tokens). Consulte a [especificação de autorização MCP](https://modelcontextprotocol.io/specification/2025-03-26/basic/authorization) para detalhes.

### Conectando

Configure a URL do servidor no seu cliente MCP. Os criadores concluirão o fluxo de consentimento OAuth na primeira conexão.

**MCP SDK (TypeScript):**

```typescript TypeScript (MCP SDK) theme={null}
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const transport = new StreamableHTTPClientTransport(
  new URL("https://replit-mcp.com/server/mcp"),
  { authProvider: yourOAuthProvider } // Implemente a interface OAuthClientProvider
);

const client = new Client({ name: "my-client", version: "1.0.0" });
await client.connect(transport);
```

Consulte a [documentação do MCP TypeScript SDK](https://modelcontextprotocol.io/sdk/js) para detalhes. O SDK gerencia o fluxo OAuth interno automaticamente.

**Claude Code:**

```bash Claude Code theme={null}
claude mcp add --transport http replit https://replit-mcp.com/server/mcp
```

***

## Ferramentas

O servidor expõe três ferramentas públicas.

### `create_app_from_prompt`

Cria um novo App do Replit a partir de uma descrição em linguagem natural. O Replit Agent começa a criar o aplicativo imediatamente.

| Parâmetro              | Tipo           | Obrigatório | Descrição                                                                                                                                                                                                                 |
| ---------------------- | -------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `appDescription`       | string         | Sim         | Descrição em linguagem natural do aplicativo a ser criado.                                                                                                                                                                |
| `app_stack`            | string (enum)  | Sim         | Um dos seguintes: `"react_website"`, `"mobile_app"`, `"design"`, `"slides"`, `"animation"`, `"data_visualization"`, `"3d_game"`, `"document"`, `"spreadsheet"`. Use `"react_website"` para a maioria dos aplicativos web. |
| `userSpecifiedAppName` | string \| null | Não         | Nome do aplicativo, se fornecido pelo usuário.                                                                                                                                                                            |
| `userQuotes`           | string \| null | Não         | Citações exatas do usuário não completamente capturadas em `appDescription`.                                                                                                                                              |
| `attachmentSummary`    | string \| null | Não         | Resumo dos detalhes essenciais de anexos.                                                                                                                                                                                 |

**Resposta:**

```json theme={null}
{
  "phase": "creating",
  "replId": "d44d994b-96e1-4a1c-8085-88401b870a9a",
  "turnId": "turn-id",
  "replUrl": "https://replit.com/@username/App-Name",
  "user": { "id": 12345, "username": "username" }
}
```

O Agent cria o aplicativo de forma assíncrona — direcione o criador para o `replUrl` para acompanhar o progresso. Use `replId` e `replUrl` em chamadas subsequentes de ferramentas.

### `update_app_using_prompt`

Faz alterações em um App do Replit existente. Use isso para adicionar recursos, corrigir bugs ou iterar no aplicativo após sua criação.

| Parâmetro           | Tipo           | Obrigatório | Descrição                                                         |
| ------------------- | -------------- | ----------- | ----------------------------------------------------------------- |
| `replId`            | string (UUID)  | Sim         | O `replId` de `create_app_from_prompt`.                           |
| `changeDescription` | string         | Sim         | Descrição da alteração a ser feita.                               |
| `replUrl`           | string         | Não         | O `replUrl` de `create_app_from_prompt`.                          |
| `userQuotes`        | string \| null | Não         | Citações exatas do usuário não capturadas em `changeDescription`. |
| `attachmentSummary` | string \| null | Não         | Resumo dos detalhes do anexo.                                     |

### `ask_question`

Faz uma pergunta ao Replit Agent sobre o aplicativo atual. Funciona no modo de discussão — não modificará o aplicativo. Use para verificar o status de criação, perguntar sobre a stack tecnológica ou transmitir perguntas dos criadores.

| Parâmetro  | Tipo          | Obrigatório | Descrição                                 |
| ---------- | ------------- | ----------- | ----------------------------------------- |
| `replId`   | string (UUID) | Sim         | O `replId` de `create_app_from_prompt`.   |
| `question` | string        | Sim         | A pergunta a ser enviada ao Replit Agent. |

***

## Solução de problemas

| Erro                                              | Causa                                                                                                                           | Solução                                                                                                                                                                                                                         |
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `MCP error -32001: Request timed out`             | A chamada da ferramenta demorou mais do que a janela de timeout do MCP. A operação ainda está sendo executada em segundo plano. | Direcione o usuário para o `replUrl`. Não tente novamente.                                                                                                                                                                      |
| `"Replit was not able to build your Replit App."` | O token de acesso não está com escopo definido para o recurso do servidor MCP.                                                  | Verifique se seu provedor de autenticação está configurado corretamente. Se estiver criando um fluxo OAuth personalizado, certifique-se de que o parâmetro `resource` esteja definido como `https://replit-mcp.com/server/mcp`. |
| `"Not authenticated"`                             | Nenhuma sessão ou token válido.                                                                                                 | Autentique-se novamente pelo fluxo OAuth.                                                                                                                                                                                       |
