FreeAgent MCP サーバー
FreeAgentのタイムスリップとタイマーを管理するためのClaude MCP(Model Context Protocol)サーバー。このサーバーにより、ClaudeはFreeAgentアカウントと連携して、時間を追跡し、タイマーを管理し、タイムスリップの操作を処理できます。
特徴
ネストされたデータを含むタイムスリップの一覧表示とフィルタリング
新しいタイムスリップを作成する
既存のタイムスリップを更新する
タイマーの開始と停止
タイムスリップを削除する
OAuthトークンの自動更新
包括的なエラー処理
Dockerサポート
Related MCP server: MCP Claude Code
前提条件
Node.js 18+ (Node.js を直接使用する場合)
Docker と Docker Compose (コンテナ化して使用する場合)
APIアクセス可能なFreeAgentアカウント
FreeAgent 開発者ダッシュボードからの OAuth 認証情報
インストール
オプション1: Node.jsの直接インストール
リポジトリをクローンします。
git clone https://github.com/yourusername/freeagent-mcp.git
cd freeagent-mcp依存関係をインストールします:
npm installOAuth トークンを取得します。
# 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オプション2: Dockerのインストール
リポジトリをクローンします。
git clone https://github.com/yourusername/freeagent-mcp.git
cd freeagent-mcp環境ファイルを作成します。
cp .env.example .env
# Edit .env with your FreeAgent credentialsDocker イメージをビルドします。
docker build -t freeagent-mcp .構成
サーバーを MCP 設定に追加します (通常は%APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.jsonにあります)。
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": []
}
}
}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": []
}
}
}使用法
設定が完了すると、Claude は次のツールを使用できるようになります。
タイムスリップ一覧
{
"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
}タイムスリップを作成
{
"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"
}タイマーコントロール
// Start timer
{
"id": "123"
}
// Stop timer
{
"id": "123"
}発達
Node.js開発
# Build the project
npm run build
# Watch for changes
npm run watch
# Run tests (when implemented)
npm testDocker開発
# Build the Docker image
docker build -t freeagent-mcp .貢献
リポジトリをフォークする
機能ブランチを作成します(
git checkout -b feature/amazing-feature)変更をコミットします (
git commit -am 'Add some amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
謝辞
優れたAPIドキュメントを提供するFreeAgent
MCP SDKのClaudeチーム
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.