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
Verwandte Server
Agent Collaboration
A dynamic server for managing multi-agent collaboration within tmux sessions, featuring flexible pane configurations and auto-detection.
Kash Business management
Kash.click management assistant. Connect your assistant to your business complete sales history, clients, payments, tax information, employees, points of sales.
YuQue MCP
An MCP server for interacting with the YuQue knowledge base, enabling AI assistants to perform operations on documents and information.
WordPress MCP Server
A secure bridge between AI assistants and WordPress, enabling site management and content operations through natural language.
Confluence MCP
An MCP server that enables AI assistants to interact with Confluence content through a standardized interface.
ChartPane
Renders interactive Chart.js charts and dashboards inline in AI conversations.
Google Workspace
Interact with Google Workspace services like Gmail and Google Calendar.
Synter Ads
Cross-platform ad campaign management for AI agents across Google, Meta, LinkedIn, Reddit, TikTok, and more. 140+ tools with read/write access.
JIRA
Interact with JIRA to search for issues using JQL and retrieve detailed issue information.
Tachikoma Router Management MCP
Manage various router types using natural language. Requires router credentials to be configured.