Publicar via metadados

Um método alternativo ao cadastro manual. Você publica um arquivo diretorio-dev.json no seu próprio domínio e o diretorio.dev descobre suas integrações automaticamente.

O que é isso?

Em vez de preencher o formulário de cadastro manual, você pode hospedar um arquivo JSON no seu site com as informações das suas integrações. O diretorio.dev lê esse arquivo e cria as integrações para você.

A vantagem é que qualquer atualização no arquivo do seu domínio é sincronizada automaticamente — você não precisa editar os dados aqui.

Prefere o método manual? Como cadastrar manualmente

Onde colocar o arquivo

Você precisa hospedar o arquivo diretorio-dev.json em algum lugar acessível pela internet. O diretorio.dev procura em três lugares, nesta ordem:

1º — Preferencial/.well-known/diretorio-dev.json

Crie uma pasta chamada .well-known na raiz do seu site e coloque o arquivo diretorio-dev.json dentro dela. O resultado é um arquivo acessível em https://seudominio.com/.well-known/diretorio-dev.json. Este é o local recomendado por ser um padrão da Internet (RFC 8615) e não poluir a raiz do seu site com arquivos soltos.

2º — Alternativo/diretorio-dev.json

Coloque o arquivo direto na raiz do seu domínio: https://seudominio.com/diretorio-dev.json. O diretorio.dev só tenta este caminho se não encontrar o arquivo no .well-known.

3º — PersonalizadoURL personalizada

Se você quiser (ou precisar) colocar o arquivo em um caminho diferente, tudo bem. Basta informar a URL completa no campo "URL do diretorio-dev.json" ao criar o projeto. Exemplo: https://meusite.com/qualquer/pasta/diretorio-dev.json

Basta criar o arquivo em um desses lugares. O diretorio.dev tenta na ordem: 1 2 3 até encontrar.

Fallbacks para outros formatos

Se você já publica outros formatos de metadados, o diretorio.dev também consegue ler:

MCP/.well-known/mcp/server-card.json

Formato do Model Context Protocol. Contém endpoint MCP, transporte e requisitos de autenticação. Útil se seu projeto já publica um Server Card para agentes de IA.

OpenAPI/openapi.json

Spec OpenAPI 3.0 ou 3.1 da sua API REST. O diretorio.dev extrai endpoints, métodos HTTP (GET, POST, etc.) e descrições automaticamente. Se você já publica OpenAPI, não precisa listar os endpoints manualmente no diretorio-dev.json.

Exemplo completo

Crie o arquivo no seu domínio com todas as integrações que você oferece. Abaixo um exemplo com os três tipos suportados e todos os campos disponíveis:

/.well-known/diretorio-dev.json
{
  "diretorio_dev": 1,
  "integracoes": [
    {
      "nome": "API Principal",
      "tipo": "api_rest",
      "descricao_curta": "API REST completa do produto — até 140 caracteres",
      "url_produto": "https://meusite.com",
      "categorias": ["Pagamentos", "Pix", "E-commerce", "Fiscal", "Logística", "RH", "Produtividade", "Dev Tools", "Dados & BI", "CRM", "Marketing", "Comunicação", "Jurídico", "Saúde", "Educação", "Finanças"],
      "docs_url": "https://docs.meusite.com/api",
      "api_base_url": "https://api.meusite.com",
      "api_endpoints": [
        { "metodo": "GET", "path": "/usuarios", "descricao": "Lista todos os usuários", "responses": [{ "code": "200", "descricao": "Lista de usuários" }, { "code": "401", "descricao": "Não autenticado" }] },
        { "metodo": "POST", "path": "/usuarios", "descricao": "Cria um novo usuário", "responses": [{ "code": "201", "descricao": "Usuário criado" }] },
        { "metodo": "GET", "path": "/usuarios/{id}", "descricao": "Busca usuário por ID", "responses": [{ "code": "200", "descricao": "Dados do usuário" }, { "code": "404", "descricao": "Usuário não encontrado" }] },
        { "metodo": "PATCH", "path": "/usuarios/{id}", "descricao": "Atualiza dados do usuário", "responses": [{ "code": "200", "descricao": "Usuário atualizado" }] },
        { "metodo": "DELETE", "path": "/usuarios/{id}", "descricao": "Remove um usuário", "responses": [{ "code": "204", "descricao": "Removido" }] }
      ],
      "funciona_com": ["Claude", "Cursor", "ChatGPT", "Windsurf"],
      "autenticacao": {
        "requer": true, "tipo": "api_key", "label": "Sua chave de API",
        "gerar_em": "https://meusite.com/dashboard/keys",
        "instrucoes": "Acesse o dashboard, vá em Configurações > API Keys e crie uma nova chave.",
        "header": "Authorization", "scheme": "Bearer"
      }
    },
    {
      "nome": "MCP Server", "tipo": "mcp",
      "descricao_curta": "Servidor MCP para agentes de IA",
      "url_produto": "https://meusite.com", "categorias": ["Dev Tools"],
      "docs_url": "https://docs.meusite.com/mcp",
      "mcp_url": "https://mcp.meusite.com", "transporte": "streamable-http",
      "tools": [
        { "nome": "listar_recursos", "descricao": "Lista todos os recursos disponíveis na plataforma" },
        { "nome": "buscar_dados", "descricao": "Busca dados com filtros personalizados" },
        { "nome": "executar_acao", "descricao": "Executa uma ação no sistema" }
      ],
      "funciona_com": ["Claude", "Cursor"],
      "autenticacao": { "requer": false }
    },
    {
      "nome": "GraphQL API", "tipo": "api_graphql",
      "descricao_curta": "API GraphQL para consultas flexíveis",
      "url_produto": "https://meusite.com", "categorias": ["Dev Tools", "Dados & BI"],
      "docs_url": "https://docs.meusite.com/graphql",
      "api_base_url": "https://api.meusite.com/graphql",
      "funciona_com": ["Claude", "ChatGPT"],
      "autenticacao": {
        "requer": true, "tipo": "oauth2", "label": "OAuth 2.0",
        "gerar_em": "https://meusite.com/dashboard/apps",
        "instrucoes": "Crie um aplicativo no dashboard para obter client_id e client_secret.",
        "header": "Authorization", "scheme": "Bearer"
      }
    }
  ]
}

Campos obrigatórios: diretorio_dev (valor 1), integracoes (array), nome, tipo e descricao_curta em cada integração. Todo o resto é opcional.

Campos disponíveis por tipo

CampoMCPAPI RESTGraphQLDescrição
nomeObrigatório
tipo"mcp", "api_rest" ou "api_graphql"
descricao_curtaObrigatório. Máx 140 caracteres
url_produtoURL do produto
categoriasArray. Ver lista abaixo
docs_urlURL da documentação
funciona_comArray. Ex: ["Claude", "Cursor"]
mcp_urlURL do servidor MCP
transporte"stdio", "sse" ou "streamable-http"
comando_instalacaoEx: npx @meusite/mcp
toolsArray de { nome, descricao }
api_base_urlURL base da API
api_endpointsArray de { metodo, path, descricao, responses }
autenticacaoObjeto (ver abaixo)

Campos de autenticação

O objeto autenticacao pode ter:

CampoTipoDescrição
requerbooleanSe true, a integração precisa de credenciais
tipostring"api_key", "oauth2", "personal_access_token" ou "service_account"
labelstringNome visível da credencial. Ex: "API Key"
gerar_emstringURL para gerar a credencial
instrucoesstringInstruções em markdown
headerstringNome do header HTTP. Ex: "Authorization"
schemestringScheme do header. Ex: "Bearer"

Gerar com IA

Se você usa Claude Code, Cursor ou qualquer assistente de IA, cole o prompt abaixo no seu agente. Ele vai analisar seu repositório e gerar o diretorio-dev.json automaticamente.

Prompt para IA
Você está trabalhando no repositório do meu produto.
Seu objetivo é gerar o arquivo /.well-known/diretorio-dev.json
para que meu produto seja descoberto no diretorio.dev,
o hub de integrações brasileiras.

Formato do arquivo:
{
  "diretorio_dev": 1,
  "integracoes": [
    {
      "nome": "Nome da integração",
      "tipo": "mcp" | "api_rest" | "api_graphql",
      "descricao_curta": "Resumo (máx 140 caracteres)",

      "url_produto": "https://meusite.com",
      "categorias": ["Pagamentos", "Pix", "E-commerce", "Fiscal", "Logística", "RH", "Produtividade", "Dev Tools", "Dados & BI", "CRM", "Marketing", "Comunicação", "Jurídico", "Saúde", "Educação", "Finanças"],  // Remova as que não se aplicam
      "docs_url": "https://docs.meusite.com",

      // Para MCP:
      "mcp_url": "https://meusite.com/mcp",
      "transporte": "streamable-http" | "sse" | "stdio",
      "comando_instalacao": "npx @meusite/mcp",
      "tools": [{ "nome": "ferramenta", "descricao": "O que faz" }],

      // Para API REST:
      "api_base_url": "https://api.meusite.com",
      "api_endpoints": [
        {
          "metodo": "GET" | "POST" | "PUT" | "PATCH" | "DELETE",
          "path": "/recursos",
          "descricao": "O que o endpoint faz",
          "responses": [
            { "code": "200", "descricao": "Resposta de sucesso" }
          ]
        }
      ],

      // Para API GraphQL:
      "api_base_url": "https://api.meusite.com/graphql",

      // Para todos os tipos:
      "funciona_com": ["Claude", "Cursor", "ChatGPT"],
      "autenticacao": {
        "requer": true | false,
        "tipo": "api_key" | "oauth2" | "personal_access_token" | "service_account",
        "label": "Nome da credencial",
        "gerar_em": "https://meusite.com/dashboard",
        "instrucoes": "Como gerar",
        "header": "Authorization",
        "scheme": "Bearer"
      }
    }
  ]
}

Instruções:
1. Leia o código-fonte, README e docs do meu produto.
2. Identifique todas as superfícies de integração:
   - APIs REST (endpoints, métodos, base URL)
   - Servidores MCP (URL, transporte, ferramentas)
   - APIs GraphQL (endpoint)
3. Para cada superfície, identifique como autentica,
   onde a credencial é gerada e como é enviada.
4. Gere UM arquivo com TODAS as integrações.
5. NÃO invente nada que não existe no repositório.
6. Publique o arquivo e me diga o caminho completo.

Depois de gerar, publique no seu domínio e cadastre o projeto no painel do diretorio.dev.

Categorias disponíveis

Para usar no campo categorias:

PagamentosPixE-commerceFiscalLogísticaRHProdutividadeDev ToolsDados & BICRMMarketingComunicaçãoJurídicoSaúdeEducaçãoFinanças

Como funciona na prática

1

Crie o diretorio-dev.json no seu domínio

Publique o arquivo com as integrações que você oferece. Use o exemplo acima como base e preencha todos os campos que se aplicam ao seu caso.

2

Crie uma conta e um projeto

Faça login no diretorio.dev, crie um projeto e informe o domínio onde o arquivo está hospedado.

3

Descoberta automática

O sistema lê seu arquivo e cria as integrações como pendentes. Você recebe notificação por email.

4

Moderação e publicação

As integrações passam pela moderação. Quando aprovadas, ficam visíveis no diretório.

5

Sincronização automática

A cada 6 horas o diretorio.dev varre novamente seu domínio. Se você atualizou o arquivo, as mudanças refletem automaticamente.

Quer publicar suas integrações?

Crie sua conta grátis em segundos.