Terra

Acesse e gerencie dados de dispositivos vestíveis e aplicativos de saúde através da API Terra.

Documentação

Servidor MCP de Configuração Terra

Um servidor Model Context Protocol que permite que LLMs configurem o painel TerraAPI.

Início Rápido

Comece rapidamente com uma destas opções de instalação:

Para usuários do Cursor: Install MCP Server

Para usuários do VS Code: Install with UV in VS Code

Ferramentas Disponíveis

  • terra_get_integrations
    • Descrição: Obter lista de integrações disponíveis.
    • Parâmetros: Nenhum
  • terra_get_detailed_integrations
    • Descrição: Recuperar uma lista detalhada de integrações suportadas, filtrada pelas integrações habilitadas do desenvolvedor e pelo requisito de uso do SDK.
    • Parâmetros:
      • sdk (Opcional[bool]): Se verdadeiro, permite que integrações SDK sejam incluídas na resposta.
  • get_destinations
    • Descrição: Obter destinos.
    • Parâmetros: Nenhum
  • get_developer_destination_credentials
    • Descrição: Obter credenciais de destino do desenvolvedor.
    • Parâmetros:
      • destination (str): O destino para obter as credenciais.
  • delete_destination
    • Descrição: Excluir um destino.
    • Parâmetros:
      • destination (str): O destino a ser excluído.
      • dev_id (Opcional[str]): ID do desenvolvedor. Se não for fornecido, usa a variável de ambiente.
  • set_destination_state
    • Descrição: Definir o estado do destino (ativo ou inativo).
    • Parâmetros:
      • destination (str): O destino a ser atualizado.
      • active (bool): Se o destino deve estar ativo ou não.
  • add_developer_destination
    • Descrição: Adicionar destino do desenvolvedor.
    • Parâmetros:
      • destination (str): O tipo de destino a ser adicionado (ex.: 's3', 'sql', 'webhook').
      • scheme (str): O esquema (ex.: 's3/postgres/https/mysql').
      • host (str): O host (ex.: 'webhook.site', 'eu-west-2', 'localhost').
      • path (Opcional[str]): O caminho (ex.: nome do bucket, nome do banco de dados, caminho do webhook sem '/' inicial).
      • user (Opcional[str]): Nome de usuário para credenciais.
      • password (Opcional[str]): Senha para credenciais.
      • port (Opcional[int]): Porta do serviço, se necessário.
      • query (Opcional[str]): String de consulta, se necessário.
      • certificate (Opcional[str]): Certificado para determinados destinos como GCS.
      • complete_destination (bool, padrão: True): Se verdadeiro, faz ping no destino antes de adicionar.
  • ping_developer_destination
    • Descrição: Fazer ping em um destino do desenvolvedor para verificar se está acessível.
    • Parâmetros:
      • destination (str): O tipo de destino para fazer ping.
      • scheme (str): O esquema (ex.: 's3/postgres/https/mysql').
      • host (str): O host (ex.: 'webhook.site', 'eu-west-2', 'localhost').
      • path (Opcional[str]): O caminho (ex.: nome do bucket, nome do banco de dados, caminho do webhook).
      • user (Opcional[str]): Nome de usuário para credenciais.
      • password (Opcional[str]): Senha para credenciais.
      • port (Opcional[int]): Porta do serviço, se necessário.
      • query (Opcional[str]): String de consulta, se necessário.
      • certificate (Opcional[str]): Certificado para determinados destinos como GCS.
  • set_provider_keys
    • Descrição: Definir chaves do provedor.
    • Parâmetros:
      • resource (str): O recurso do provedor.
      • client_id (str): O ID do cliente para o provedor.
      • client_secret (str): O segredo do cliente para o provedor.
      • redirect_url (Opcional[str]): A URL de redirecionamento para o provedor.
  • get_provider_keys
    • Descrição: Obter chaves do provedor.
    • Parâmetros:
      • resource (str): O recurso do provedor.
  • get_developer_providers
    • Descrição: Obter provedores do desenvolvedor.
    • Parâmetros: Nenhum
  • add_providers
    • Descrição: Adicionar provedores.
    • Parâmetros:
      • providers (lista[str]): lista de provedores a serem adicionados.
  • deactivate_provider
    • Descrição: Excluir provedor.
    • Parâmetros:
      • provider (str): O provedor a ser desativado.
  • set_provider_state
    • Descrição: Definir o estado do provedor (ativo ou inativo).
    • Parâmetros:
      • provider (str): O provedor a ser atualizado.
      • active (bool): Se o provedor deve estar ativo ou não.
  • get_providers_by_popularity
    • Descrição: Obter provedores classificados por popularidade.
    • Parâmetros: Nenhum
  • add_custom_credentials
    • Descrição: Adicionar credenciais personalizadas para um provedor.
    • Parâmetros:
      • provider (str): O provedor para adicionar credenciais.
      • client_id (str): O ID do cliente.
      • client_secret (str): O segredo do cliente.
      • redirect_url (Opcional[str]): A URL de redirecionamento.
  • get_custom_credentials
    • Descrição: Obter credenciais personalizadas para um provedor.
    • Parâmetros:
      • provider (str): O provedor para obter as credenciais.

Instalação

[!NOTA] Você precisará do seu TERRA_API_KEY e TERRA_DEV_ID, que estão disponíveis no painel

Usando uv (recomendado)

Ao usar uv, nenhuma instalação específica é necessária. Usaremos uvx para executar diretamente o terramcp.

Instalação do uv

Mac / Linux

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Usando PIP

Alternativamente, você pode instalar o terramcp via pip:

pip install terramcp

Após a instalação, você pode executá-lo como um script usando:

python -m terramcp

Configuração

Configurar para Claude.app

Adicione às suas configurações do Claude:

Usando uvx
{
  "mcpServers": {
    "terramcp": {
      "command": "uvx",
      "args": ["terramcp"],
      "env": {
        "TERRA_API_KEY": "your_api_key_here",
        "TERRA_DEV_ID": "your-dev-id-here"
      }
    }
  }
}
Usando instalação via pip
{
  "mcpServers": {
    "terramcp": {
      "command": "python",
      "args": ["-m", "terramcp"],
      "env": {
        "TERRA_API_KEY": "your_api_key_here",
        "TERRA_DEV_ID": "your-dev-id-here"
      }
    }
  }
}

Configurar para Zed

Adicione ao seu arquivo settings.json do Zed:

Usando uvx
"context_servers": [
  "terramcp": {
    "command": "uvx",
    "args": ["terramcp"],
    "env": {
        "TERRA_API_KEY": "your_api_key_here",
        "TERRA_DEV_ID": "your-dev-id-here"
    }
  }
],
Usando instalação via pip
"context_servers": {
  "terramcp": {
    "command": "python",
    "args": ["-m", "terramcp"],
    "env": {
        "TERRA_API_KEY": "your_api_key_here",
        "TERRA_DEV_ID": "your-dev-id-here"
    }
  }
},

Configurar para VS Code

Para instalação rápida, use um dos botões de instalação com um clique abaixo...

Install with UV in VS Code Install with UV in VS Code Insiders

Para instalação manual, adicione o seguinte bloco JSON ao seu arquivo de Configurações do Usuário (JSON) no VS Code. Você pode fazer isso pressionando Ctrl + Shift + P e digitando Preferences: Open User Settings (JSON) .

Opcionalmente, você pode adicioná-lo a um arquivo chamado .vscode/mcp.json no seu espaço de trabalho. Isso permitirá que você compartilhe a configuração com outras pessoas.

Observe que a chave mcp é necessária ao usar o arquivo mcp.json.

Usando uvx
{
  "mcp": {
    "servers": {
      "terramcp": {
        "command": "uvx",
        "args": ["terramcp"],
        "env": {
            "TERRA_API_KEY": "your_api_key_here",
            "TERRA_DEV_ID": "your-dev-id-here"
        }
      }
    }
  }
}

Depuração

Você pode usar o inspetor MCP para depurar o servidor. Para instalações via uvx:

npx @modelcontextprotocol/inspector uvx terramcp

Ou se você instalou o pacote em um diretório específico ou está desenvolvendo nele:

cd path/to/servers/src/terramcp
npx @modelcontextprotocol/inspector uv run terramcp

Licença

terramcp é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.