Agentify
A multi-client AI agent monitoring and control system with automatic task completion detection.
Agentify MCP Server
๐ค A simple MCP server for AI task tracking and webhook notifications
Track when AI starts and completes tasks, with real-time webhook notifications for all activities.
๐ Features
task-started- Tool to call when starting any taskauto-task-tracker- Automatic tracking for long-running taskstask-completed- Tool to call when completing any task- Webhook Notifications - Real-time webhook delivery for all tool calls
- Environment Variable Configuration - Dynamic webhook URL management
๐ฆ Installation
# Global installation
npm install -g agentify-mcp
# Or run with npx
npx agentify-mcp
โ๏ธ Webhook Configuration
1. Using Webhook.site (Recommended)
- Visit webhook.site
- Copy the auto-generated unique URL
- Set it up using one of the methods below
2. Environment Variable Setup
export AGENTIFY_WEBHOOK_URL="https://webhook.site/your-unique-id"
# or
export WEBHOOK_URL="https://webhook.site/your-unique-id"
agentify-mcp
3. Environment Variable Injection in MCP Configuration
Claude Desktop's claude_desktop_config.json:
{
"mcpServers": {
"agentify": {
"command": "agentify-mcp",
"env": {
"AGENTIFY_WEBHOOK_URL": "https://webhook.site/your-unique-id",
"LOG_LEVEL": "info"
}
}
}
}
4. Configuration File Locations
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
๐ง Usage
AI Tool Call Examples
AI will automatically call tools like this:
// When starting a task
task_started({
taskDescription: 'Starting React component refactoring',
});
// When completing a task
task_completed({
taskDescription: 'Completed React component refactoring',
outcome: 'success',
details: '20% performance improvement',
});
Runtime Status Check
When the server starts, you can see the status:
๐ Agentify MCP Server
๐ Webhook: โ
Enabled # When URL is configured
๐ Log Level: info
Or:
๐ Webhook: โ Disabled # When URL is not configured
๐ก Webhook Payload
All tool calls send webhooks in this format:
{
"timestamp": "2024-01-01T12:00:00.000Z",
"event": "tool_called",
"toolName": "task-started",
"arguments": {
"taskDescription": "Starting React component refactoring"
}
}
{
"timestamp": "2024-01-01T12:00:00.000Z",
"event": "tool_completed",
"toolName": "task-completed",
"arguments": {
"taskDescription": "Completed React component refactoring",
"outcome": "success"
},
"result": {
"content": [{ "type": "text", "text": "โ
Task Completed..." }]
},
"duration": 150
}
๐ ๏ธ Developer Configuration
Programmatic Setup
import { AgentifyMCPServer } from 'agentify-mcp';
const server = new AgentifyMCPServer({
webhookUrl: 'https://webhook.site/your-unique-id',
logLevel: 'info',
});
await server.start();
Runtime Dynamic Configuration
const server = new AgentifyMCPServer();
// Set webhook URL later
server.setWebhookUrl('https://webhook.site/your-unique-id');
// Check webhook status
console.log(server.isWebhookEnabled()); // true/false
Local Development
git clone https://github.com/agentify/agentify-mcp.git
cd agentify-mcp
npm install
# Run in development mode
npm run dev
# Build
npm run build
# Run tests
npm test
# Type checking
npm run typecheck
# Linting
npm run lint
๐ Troubleshooting
Webhook Not Working
-
Check Environment Variables
echo $AGENTIFY_WEBHOOK_URL -
Restart Claude Desktop
- Completely restart Claude Desktop after environment variable changes
-
Test with Webhook.site
- Check if requests are received in real-time
MCP Connection Issues
- Check configuration file path
- Verify JSON syntax
- Confirm command path (
agentify-mcpornpx agentify-mcp)
๐ก๏ธ Security
- Webhook URLs are masked in logs
- Secure management of sensitive information via environment variables
- Runtime URL changes supported
๐ Usage Examples
Basic Execution
# Run without webhook
agentify-mcp
# Run with webhook
AGENTIFY_WEBHOOK_URL="https://webhook.site/abc123" agentify-mcp
Using with Claude Desktop
- Generate URL from Webhook.site
- Add configuration to
claude_desktop_config.json - Restart Claude Desktop
- Receive real-time notifications whenever AI performs tasks
๐งช Testing
# Run all tests
npm test
# Run tests in watch mode
npm run test:watch
# Generate coverage report
npm run test:coverage
๐ API Reference
AgentifyMCPServer
Constructor Options
interface ServerConfig {
webhookUrl?: string;
logLevel?: 'debug' | 'info' | 'warn' | 'error';
}
Methods
start(): Promise<void>- Start the MCP serverstop(): Promise<void>- Stop the MCP serversetWebhookUrl(url: string): void- Set or update webhook URLgetWebhookUrl(): string | undefined- Get current webhook URL statusisWebhookEnabled(): boolean- Check if webhook is enabled
Available Tools
task-started
- Description: Call when starting any task or work
- Parameters:
taskDescription(string): Brief description of what was started
auto-task-tracker
- Description: Automatically monitors long-running task progress
- Parameters:
taskThresholdSeconds(number, optional): Auto-trigger threshold in seconds (default: 30)
task-completed
- Description: Call when finishing any task or work
- Parameters:
taskDescription(string): Brief description of what was completedoutcome('success' | 'partial' | 'failed'): Task completion outcomedetails(string, optional): Additional completion details
๐ License
MIT License - see the LICENSE file for details.
๐ Links
๐ Stats
Related Servers
ClickUp
Integrate AI assistants with ClickUp for productivity and project management.
Liquidium MCP Server
Tools for PostHog analytics, annotations, and project management.
Obsidian
Interact with your Obsidian vault using the Local REST API plugin, enabling LLMs to access and manage your notes.
Lattice HQ
Interact with the Lattice performance management platform.
Anki MCP Server
Interact with Anki flashcard software using LLMs via the AnkiConnect add-on.
Browser Use
An AI-driven server for browser automation using natural language commands, implementing the Model Context Protocol (MCP).
Todoist
Manage tasks, projects, labels, and comments on Todoist using its API.
YouTube Uploader MCP
Upload videos to YouTube using OAuth2 authentication. Requires a Google OAuth 2.0 client secret file.
Adobe Express
Integrate with Adobe Express using LLMs to streamline creative tasks and workflows.
n8n Video Compilation
Automate AI-powered video compilation workflows using n8n.