FreeAgent MCP Server

MIT License
1
  • Linux
  • Apple

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Provides integration with FreeAgent accounting software, enabling time tracking through timeslips and timers, including listing, filtering, creating, updating, and deleting timeslips, as well as starting and stopping timers.

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.

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

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

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Un servidor MCP de Claude que le permite a Claude interactuar con su cuenta FreeAgent para realizar un seguimiento del tiempo, administrar temporizadores y manejar operaciones de control de tiempo.

  1. Features
    1. Prerequisites
      1. Installation
        1. Option 1: Direct Node.js Installation
        2. Option 2: Docker Installation
      2. Configuration
        1. For Node.js Installation:
        2. For Docker Installation:
      3. Usage
        1. List Timeslips
        2. Create Timeslip
        3. Timer Controls
      4. Development
        1. Node.js Development
        2. Docker Development
      5. Contributing
        1. License
          1. Acknowledgments
            ID: 2qsl0xvx2t