OpenConnector

Gateway MCP de código aberto e auto-hospedável que permite que agentes de IA descubram e executem ações de SaaS com gerenciamento de credenciais OAuth/chave de API, tokens de runtime com escopo e políticas de ação.

Documentação

OpenConnector é um gateway de conectores de código aberto para agentes de IA e uma alternativa ao Pipedream/Composio. Conecte contas de aplicativos de usuários uma vez e exponha um catálogo compartilhado com mais de 1.000 provedores e mais de 10.000 Actions pré-construídas para agentes e aplicações.

OOMOLSelf-hostedMore platforms
OAuth gerenciado e runtime hospedado, prontos para uso. Sem necessidade de deploy ou configuração de apps OAuth.Execute localmente ou na sua própria infraestrutura com Docker ou Node.js. Você gerencia o armazenamento e os apps OAuth.Cloudflare, Fly.io, RepoCloud, nibrun, NEXUS AI, e outros.
🚀 OOMOL HostedSelf-hostMais plataformas

Use o Connector SDK no código do aplicativo, o oo CLI como relay local do agente, MCP em hosts de agentes, HTTP/OpenAPI em clientes personalizados e o Web Console para administração e depuração.

  • Mantenha credenciais, escopos, schemas, políticas e logs de execução dentro de um runtime inspecionável.
  • Execute localmente, na sua própria infraestrutura ou através do runtime hospedado da OOMOL.
  • Use os mesmos IDs de provedores, IDs de Actions, schemas e contratos em implantações de código aberto e SaaS comerciais.

O Que Ele Oferece

  • Um catálogo de conectores funcional em produtos como GitHub, Gmail, Notion, BigQuery, Google Analytics, Supabase, Airtable, Slack e outros.
  • Tratamento de credenciais para chaves de API, OAuth2, credenciais personalizadas e provedores sem autenticação.
  • Contratos de Actions inspecionáveis: schemas de requisição/resposta, escopos necessários e código-fonte do executor carregado sob demanda.
  • Controles de runtime para identidade de conexão, escopos, tokens de runtime, políticas de permissão/bloqueio de Actions, trânsito temporário de arquivos e logs de execução com dados sensíveis ocultos.
  • Opções de implantação para Docker local ou Node.js com estado em SQLite ou PostgreSQL e armazenamento de trânsito local ou compatível com S3, além do runtime hospedado da OOMOL. Plataformas gerenciadas adicionais estão listadas em opções de implantação.

Onde Ele Se Encaixa

OpenConnector se encaixa em produtos onde agentes precisam de acesso durável às ferramentas que os usuários já usam, sem entregar credenciais do provedor ao processo do agente.

  • Produtos de agentes que precisam de acesso reutilizável em aplicativos de trabalho, ferramentas de desenvolvimento, sistemas de dados, plataformas de comunicação e serviços de IA.
  • Produtos que adicionam fluxos de trabalho de agentes e precisam de contratos de Actions estáveis e inspecionáveis para acesso a aplicativos de usuários.
  • Equipes que querem autenticação hospedada para agilidade, mantendo um caminho para controle de runtime privado ou self-hosted.

Ferramentas para Desenvolvedores

FerramentaFinalidade
Connector SDKCliente HTTP TypeScript leve. Use OpenConnector para runtimes self-hosted, ou Connector / ProjectConnector para conexões pessoais e SaaS de usuários finais hospedadas pela OOMOL.
oo CLIRelay local do agente para Actions de conectores. oo connector pode pesquisar, inspecionar e executar Actions em runtimes OpenConnector hospedados pela OOMOL ou self-hosted.
MCPExponha Actions de aplicativos a hosts de agentes compatíveis com MCP através de http://localhost:3000/mcp.
HTTP / OpenAPIChame /v1/actions/* diretamente ou inspecione o documento /openapi.json gerado.

Detalhes de endpoints, envelopes de resposta, cabeçalhos de autenticação, ferramentas MCP e exemplos de guias de Actions estão em docs/runtime-api.md.

Pré-visualização do Dashboard

OpenConnector inclui um Dashboard local para navegar por conectores, configurar credenciais, criar tokens de runtime e inspecionar o uso do runtime.

Catálogo de Conectores

Use o catálogo de conectores para ver os serviços disponíveis, pesquisar provedores e abrir suas Actions e configuração de credenciais em um só lugar.

OpenConnector connector catalog dashboard

Visão Geral de Uso

Use a página Visão Geral após a implantação para monitorar a prontidão do runtime, provedores disponíveis, Actions executáveis, falhas recentes, tendências de chamadas de ferramentas e chamadas recentes.

OpenConnector runtime overview dashboard

Nomes de provedores e marcas registradas pertencem aos seus respectivos proprietários e são usados apenas para identificação e interoperabilidade.

Como Funciona

flowchart LR
  Agent["AI Agent / App"] -->|"SDK / CLI / MCP / HTTP"| Gateway["OpenConnector Gateway"]
  Gateway --> Auth["Credential & OAuth Boundary"]
  Gateway --> Catalog["Provider Catalog"]
  Gateway --> Actions["Open-source Action Executors"]
  Gateway --> Policy["Tokens, Scopes, Allow/Block Policy"]
  Gateway --> Logs["Run Logs"]
  Actions --> Providers["1,000+ Providers"]
  Console["Web Console"] --> Gateway
  Cloudflare["Cloudflare Workers, D1, R2"] -. deploy .-> Gateway

Aplicativos e agentes descobrem Actions, inspecionam schemas e escopos, selecionam um alias de conexão e executam através do gateway. Segredos do provedor permanecem atrás do limite do runtime; os agentes recebem os metadados, rótulos seguros de conta e resultados de execução necessários para a execução.

Caminhos de Uso

CaminhoMelhor paraInclui
Self-host de código abertoDesenvolvedores e equipes que querem controle totalRuntime Docker ou Node local, estado em SQLite ou PostgreSQL, arquivos de trânsito locais ou compatíveis com S3, MCP, HTTP, OpenAPI e Web Console
Kubernetes (Helm)Equipes que executam seus próprios clustersChart Helm endurecido com SQLite ou PostgreSQL com suporte a PVC e hooks de migração, Ingress, autoscaling e alternâncias de NetworkPolicy
OOMOLEquipes que querem que usuários autorizem contas imediatamenteApps OAuth fornecidos pela OOMOL, créditos Connect mensais incluídos e infraestrutura de runtime hospedada; os mesmos contratos de provedor e Action mantêm um caminho aberto para implantação privada ou self-hosted posterior

Início Rápido

[!NOTE] Isso inicia um runtime self-hosted. Provedores OAuth exigem credenciais de cliente OAuth de apps que você registra nesses provedores. Para permitir que usuários autorizem provedores suportados sem configurar seus próprios apps OAuth, use conectores hospedados pela OOMOL.

Inicie o runtime a partir da imagem publicada com Docker Compose:

docker compose up

Isso baixa ghcr.io/oomol-lab/open-connector:latest. Para compilar a partir do código-fonte:

docker compose -f docker-compose.yml -f docker-compose.build.yml up --build

Abra o console local e a referência de API gerada:

http://localhost:3000
http://localhost:3000/docs

Execute uma Action sem autenticação para verificar o runtime:

curl -s -X POST http://localhost:3000/v1/actions/hackernews.get_top_stories \
  -H 'content-type: application/json' \
  -d '{"input":{}}'

Veja docs/quickstart.md para a configuração local completa, primeira conexão de provedor, fluxo OAuth e configurações de runtime.

Conectar um Provedor

GitHub é o exemplo mais simples com credenciais porque pode usar um token de acesso pessoal:

curl -s -X PUT http://localhost:3000/api/connections/github \
  -H 'content-type: application/json' \
  -d '{"authType":"api_key","values":{"apiKey":"github_pat_..."}}'

curl -s -X POST http://localhost:3000/v1/actions/github.get_current_user \
  -H 'content-type: application/json' \
  -d '{"input":{}}'

Para apps OAuth2, conexões nomeadas, criptografia de credenciais, renovação de tokens e políticas de ações, veja docs/credentials.md e docs/configuration.md.

Web Console

Para desenvolvimento local baseado em npm, abra http://localhost:5173; o servidor de desenvolvimento do Web Console faz proxy de requisições de API para o runtime em http://localhost:3000. Para Docker ou um runtime Node compilado, o console é servido de http://localhost:3000.

O console suporta navegação de provedores, configuração de chaves de API e clientes OAuth, criação de tokens de runtime, inspeção de schemas de Actions, depuração de Actions, revisão de execuções recentes e acesso ao OpenAPI gerado e metadados MCP.

Armazenamento PostgreSQL no Runtime

O runtime Node usa SQLite por padrão e pode usar PostgreSQL 15 ou mais recente quando OOMOL_CONNECT_DATABASE_URL está configurado. Migrações PostgreSQL são explícitas: execute npm run runtime:migrate antes de iniciar uma versão com migrações pendentes. A inicialização do servidor apenas verifica a prontidão do schema e nunca aplica DDL PostgreSQL. Veja docs/configuration.md para configuração, permissões, TLS e requisitos de múltiplas instâncias. A imagem Docker expõe o mesmo runner como seu subcomando migrate; veja docs/docker-ghcr.md.

Imagem Docker (GHCR)

Execute OpenConnector a partir de uma imagem pré-compilada no GitHub Packages (GHCR): ghcr.io/oomol-lab/open-connector. Use latest para a versão mais recente, uma versão fixada para produção, ou tip para o build main mais recente.

Veja docs/docker-ghcr.md para tags, pull e execução.

Um Bot de IA Pronto para Uso com Leina

Se você quer um bot de IA que pode usar imediatamente, experimente Leina. Leina conecta-se a mais de 1.500 aplicativos SaaS e permite personalizar seu próprio agente de IA escolhendo suas conexões de aplicativos, habilidades e base de conhecimento para se adequar aos fluxos de trabalho da sua equipe.

Use-o no Slack, Microsoft Teams, Discord ou Telegram para encontrar informações, compilar relatórios semanais, organizar feedback de clientes e preparar acompanhamentos de vendas através dos aplicativos que você autorizar.

Documentação

Desenvolvimento

Use Node.js 22 ou mais recente:

npm install
npm run dev

O runtime de API local escuta em http://localhost:3000. O servidor de desenvolvimento do Web Console escuta em http://localhost:5173 e faz proxy de requisições de API para o runtime.

Antes de abrir um pull request:

npm run fix-check
npm test

O código do provedor está em src/providers/<service>. Veja CONTRIBUTING.md para regras de contribuição de provedores.

Escopo da Licença

Salvo indicação em contrário, o código-fonte, os scripts, o scaffolding de projeto gerado, os testes e a documentação criados para este repositório são licenciados sob a Apache License, Versão 2.0. Consulte LICENSE.txt.

A licença Apache-2.0 deste repositório não concede direitos a produtos de terceiros, provedores, aplicativos, APIs, marcas registradas, marcas de serviço, nomes comerciais, logotipos, ícones, ativos de marca, documentação, capturas de tela ou outros materiais protegidos por direitos autorais de seus respectivos titulares.

Nomes de provedores e aplicativos, metadados, links, escopos, permissões e logotipos/ícones opcionais estão incluídos apenas para identificar serviços e permitir interoperabilidade. Todos os direitos de marca e produto de terceiros permanecem com seus respectivos titulares. A inclusão neste catálogo não implica endosso, patrocínio, parceria, certificação ou verificação por parte desses titulares.

Se você contribuir com metadados ou ativos de provedores, envie apenas material que você tenha o direito de enviar. Prefira vincular a ativos públicos oficiais em vez de copiar arquivos de marca para este repositório.

Comunidade

Mantenha issues e pull requests focados, respeitosos e acionáveis. A participação neste projeto é regida por CODE_OF_CONDUCT.md.

Suporte ao OpenConnector

Se o OpenConnector for útil para você, dar uma ⭐ ajuda mais desenvolvedores a descobrirem o projeto.

How to star OpenConnector on GitHub

Contribuidores

Obrigado a todos que ajudaram a construir o OpenConnector. Quer se juntar a eles? Consulte CONTRIBUTING.md.

OpenConnector contributors

Histórico de Estrelas

Star history