Skip to main content
Glama

Servidor MCP de FreeAgent

Un servidor MCP (Protocolo de Contexto de Modelo) de Claude para gestionar los registros de tiempo y los temporizadores de FreeAgent. Este servidor permite a Claude interactuar con su cuenta de FreeAgent para registrar el tiempo, administrar los temporizadores y gestionar las operaciones de registro de tiempo.

Licencia: MIT

Características

  • Listar y filtrar hojas de tiempo con datos anidados

  • Crear nuevos timeslips

  • Actualizar los registros de tiempo existentes

  • Temporizadores de inicio y parada

  • Eliminar resbalones de tiempo

  • Actualización automática del token OAuth

  • Manejo integral de errores

  • Compatibilidad con Docker

Related MCP server: MCP Claude Code

Prerrequisitos

  • Node.js 18+ (para uso directo de Node.js)

  • Docker y Docker Compose (para uso en contenedores)

  • Una cuenta FreeAgent con acceso a la API

  • Credenciales de OAuth desde el panel de desarrolladores de FreeAgent

Instalación

Opción 1: Instalación directa de Node.js

  1. Clonar el repositorio:

git clone https://github.com/yourusername/freeagent-mcp.git
cd freeagent-mcp
  1. Instalar dependencias:

npm install
  1. Obtenga sus tokens OAuth:

# Set your FreeAgent credentials
export FREEAGENT_CLIENT_ID="your_client_id"
export FREEAGENT_CLIENT_SECRET="your_client_secret"

# Run the OAuth setup script
node scripts/get-oauth-tokens.js

Opción 2: Instalación de Docker

  1. Clonar el repositorio:

git clone https://github.com/yourusername/freeagent-mcp.git
cd freeagent-mcp
  1. Crea tu archivo de entorno:

cp .env.example .env
# Edit .env with your FreeAgent credentials
  1. Construir imagen de Docker:

docker build -t freeagent-mcp .

Configuración

Agregue el servidor a su configuración de MCP (normalmente en %APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json ):

Para la instalación de Node.js:

{
  "mcpServers": {
    "freeagent": {
      "command": "node",
      "args": ["path/to/freeagent-mcp/build/index.js"],
      "env": {
        "FREEAGENT_CLIENT_ID": "your_client_id",
        "FREEAGENT_CLIENT_SECRET": "your_client_secret",
        "FREEAGENT_ACCESS_TOKEN": "your_access_token",
        "FREEAGENT_REFRESH_TOKEN": "your_refresh_token"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Para la instalación de Docker:

{
  "mcpServers": {
    "freeagent": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e", "FREEAGENT_CLIENT_ID",
        "-e", "FREEAGENT_CLIENT_SECRET",
        "-e", "FREEAGENT_ACCESS_TOKEN",
        "-e", "FREEAGENT_REFRESH_TOKEN",
        "freeagent-mcp"
      ],
      "env": {
        "FREEAGENT_CLIENT_ID": "your_client_id",
        "FREEAGENT_CLIENT_SECRET": "your_client_secret",
        "FREEAGENT_ACCESS_TOKEN": "your_access_token",
        "FREEAGENT_REFRESH_TOKEN": "your_refresh_token"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Uso

Una vez configurado, Claude puede utilizar las siguientes herramientas:

Lista de resbalones de tiempo

{
  "from_date": "2024-01-01",      // Start date (YYYY-MM-DD)
  "to_date": "2024-03-04",        // End date (YYYY-MM-DD)
  "updated_since": "2024-03-04T12:00:00Z",  // ISO datetime
  "view": "all",                  // "all", "unbilled", or "running"
  "user": "https://api.freeagent.com/v2/users/123",
  "task": "https://api.freeagent.com/v2/tasks/456",
  "project": "https://api.freeagent.com/v2/projects/789",
  "nested": true                  // Include nested resources
}

Crear Timeslip

{
  "task": "https://api.freeagent.com/v2/tasks/123",
  "user": "https://api.freeagent.com/v2/users/456",
  "project": "https://api.freeagent.com/v2/projects/789",
  "dated_on": "2024-03-04",
  "hours": "1.5",
  "comment": "Optional comment"
}

Controles del temporizador

// Start timer
{
  "id": "123"
}

// Stop timer
{
  "id": "123"
}

Desarrollo

Desarrollo con Node.js

# Build the project
npm run build

# Watch for changes
npm run watch

# Run tests (when implemented)
npm test

Desarrollo de Docker

# Build the Docker image
docker build -t freeagent-mcp .

Contribuyendo

  1. Bifurcar el repositorio

  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )

  3. Confirme sus cambios ( git commit -am 'Add some amazing feature' )

  4. Empujar a la rama ( git push origin feature/amazing-feature )

  5. Abrir una solicitud de extracción

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Expresiones de gratitud

  • FreeAgent por su excelente documentación API

  • El equipo de Claude para el SDK de MCP

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/markpitt/freeagent-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server