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
Похожие серверы
Obsidian MCP Server
An MCP server that allows AI assistants to read from and write to your local Obsidian vault.
Tally MCP Server
Provides AI assistants with secure access to Tally form management capabilities.
Feishu/Lark OpenAPI
Connect AI agents with the Feishu/Lark platform for automation, including document processing, conversation management, and calendar scheduling.
TalkToAnki
Seamlessly integrate the Anki flashcard application with AI assistants. Requires Anki desktop with the AnkiConnect plugin.
ffl-mcp
Give AI a "send file" capability via P2P (Local-first)
Multi-Model Advisor
Queries multiple Ollama models to combine their responses, offering diverse AI perspectives on a single question.
AnkiConnect
Connect Claude with AnkiConnect to create and review flashcards using natural language.
JIRA
Integrate Atlassian JIRA into any MCP-compatible application to manage issues and projects.
Google Docs
An MCP server for integrating with and managing Google Docs.
CData Jira Service Management
A read-only server to query live Jira Service Management data via a simple MCP interface, powered by CData.