Skip to main content
Glama

MoCo MCP Server

by niondigital

📊 MOCO MCP Server

A Model Context Protocol (MCP) server that provides employee read access to the MOCO API for time tracking, project management, holiday tracking, and presence monitoring.

⚡ Quick Start

npx -y @niondigital/moco-mcp

That's it! The server will start and be ready to connect to your MCP client.

🚀 Installation

Prerequisites

  • Node.js ≥ 18.0.0
  • MOCO account with API access
  • MOCO API key and subdomain

MCP Client Integration

Add to your Claude Desktop claude_desktop_config.json file:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "moco": { "command": "npx", "args": ["-y", "@niondigital/moco-mcp"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }

Add to your Cursor settings:

MacOS: ~/Library/Application Support/Cursor/User/settings.json
Windows: %APPDATA%\Cursor\User\settings.json
Linux: ~/.config/Cursor/User/settings.json

{ "mcpServers": { "moco": { "command": "npx", "args": ["-y", "@niondigital/moco-mcp"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }

Add to your Windsurf MCP configuration:

{ "mcpServers": { "moco": { "command": "npx", "args": ["-y", "@niondigital/moco-mcp"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }

Add the MCP server to Claude Code:

claude mcp add -e MOCO_API_KEY="your-moco-api-key" -e MOCO_SUBDOMAIN="your-subdomain" moco -- npx -y @niondigital/moco-mcp

Configure Gemini CLI with MCP support:

{ "mcpServers": { "moco": { "command": "npx", "args": ["-y", "@niondigital/moco-mcp"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }
  1. Go to Kiro > MCP Servers
  2. Add new MCP server by clicking + Add
  3. Paste the configuration below:
{ "mcpServers": { "moco": { "command": "npx", "args": [ "-y", "@niondigital/moco-mcp" ], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" }, "disabled": false, "autoApprove": [] } } }
  1. Click Save to apply changes
  1. Go to Program (right side) > Install > Edit mcp.json
  2. Paste the configuration below:
{ "mcpServers": { "moco": { "command": "npx", "args": ["-y", "@niondigital/moco-mcp"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }
  1. Click Save to apply changes
  2. Toggle MCP server on/off from the right hand side (under Program) or by clicking the plug icon at the bottom of the chat box

🔑 MoCo API Setup

Getting Your API Credentials

  1. Log into your MoCo account
  2. Navigate to API settings:
    • Go to ProfileIntegrations
    • Or visit: https://niondigital.mocoapp.com/profile/integrations
  3. Copy the listed API key
  4. Note your subdomain:
    • From your MoCo URL: https://yourcompany.mocoapp.com
    • Your subdomain is: yourcompany

Environment Variables

You can set environment variables in several ways:

Option 1: System Environment Variables

export MOCO_API_KEY="your-moco-api-key" export MOCO_SUBDOMAIN="your-subdomain"

Option 2: .env File (for local development)

MOCO_API_KEY=your-moco-api-key MOCO_SUBDOMAIN=your-subdomain

Option 3: MCP Client Configuration (recommended) Use the env section in your MCP client configuration as shown above.

🛠️ Available Tools

ToolDescriptionParameters
get_activitiesGet activities within a date range with summation and optional project filteringstartDate, endDate (ISO 8601), projectId (optional)
get_user_projectsList all assigned projects or search by queryquery (optional)
get_user_project_tasksGet all tasks for a specific assigned projectprojectId
get_user_holidaysGet holiday overview for a year with calculationsyear
get_user_presencesGet presence data within a date range with daily summariesstartDate, endDate (ISO 8601)
get_user_sick_daysGet sick days overview for a year with calculationsyear
get_public_holidaysGet public holidays for a year with working days calculationsyear

🎯 Available Prompts

The MoCo MCP server provides 8 intelligent prompts that orchestrate multiple tools to deliver comprehensive insights:

PromptDescriptionKey Parameters
weekly_time_reportGenerates detailed weekly time tracking report with project breakdownweek_start, include_billable_analysis
vacation_planning_assistantAssists with vacation planning by analyzing available days and holidaysplanned_start_date, planned_end_date
personal_productivity_insightsAnalyzes work habits and provides productivity recommendationsanalysis_period, focus_area
monthly_business_reviewCreates comprehensive business reports with trends and metricsmonth, year, include_comparisons
smart_work_life_balance_advisorEvaluates work-life balance with personalized recommendationsanalysis_weeks, target_hours_per_week
project_time_analysisDetailed project time analysis with efficiency metricsproject_ids, time_period
team_capacity_overviewTeam capacity planning with absence and resource analysisplanning_horizon, include_holidays
work_hours_compliance_checkCompliance check for working time regulationscheck_period, max_weekly_hours, max_daily_hours

Prompt Examples

Weekly Time Report:

{ "name": "weekly_time_report", "arguments": { "week_start": "2024-01-15", "include_billable_analysis": true } }

Vacation Planning:

{ "name": "vacation_planning_assistant", "arguments": { "planned_start_date": "2024-07-15", "planned_end_date": "2024-07-29" } }

Work-Life Balance Analysis:

{ "name": "smart_work_life_balance_advisor", "arguments": { "analysis_weeks": 6, "target_hours_per_week": 40 } }

Compliance Check:

{ "name": "work_hours_compliance_check", "arguments": { "check_period": "last_month", "max_weekly_hours": 48, "max_daily_hours": 10 } }

📝 Tool Examples

Get Activities

Filter all activities in a date range:

{ "name": "get_activities", "arguments": { "startDate": "2024-01-01", "endDate": "2024-01-31" } }

Filter activities for a specific project:

{ "name": "get_activities", "arguments": { "startDate": "2024-01-01", "endDate": "2024-01-31", "projectId": 123456 } }

Sample Output:

Activities from 2024-01-01 to 2024-01-31: 2024-01-15: Project 123 (Website Redesign): Task 456 (Frontend Development): 4.5h (4:30) Task 789 (Backend API): 3.25h (3:15) Project total: 7.75h (7:45) Daily total: 7.75h (7:45) Grand total: 7.75h (7:45)

Get User Projects

List all assigned projects:

{ "name": "get_user_projects", "arguments": {} }

Search projects:

{ "name": "get_user_projects", "arguments": { "query": "website" } }

Get User Project Tasks

{ "name": "get_user_project_tasks", "arguments": { "projectId": 123456 } }

Get User Holidays

{ "name": "get_user_holidays", "arguments": { "year": 2024 } }

Sample Output:

Holiday overview for 2024: Taken holiday days: - 2024-03-15: 1.0 day - 2024-04-22: 0.5 day - 2024-07-08: 1.0 day Summary: - Taken vacation: 2.5 days - Annual entitlement: 25 days - Utilization: 10% (2.5/25) - Remaining vacation: 22.5 days

Get User Presences

{ "name": "get_user_presences", "arguments": { "startDate": "2024-01-01", "endDate": "2024-01-07" } }

Sample Output:

Presences from 2024-01-01 to 2024-01-07: Daily presences: - 2024-01-01: 8.25h (8:15) - 2024-01-02: 7.5h (7:30) - 2024-01-03: 8.0h (8:00) Grand total: 23.75h (23:45) Statistics: - Working days: 3 - Average per day: 7.92h (7:55)

Get User Sick Days

{ "name": "get_user_sick_days", "arguments": { "year": 2024 } }

Get Public Holidays

{ "name": "get_public_holidays", "arguments": { "year": 2024 } }

Sample Output:

Public holidays for 2024: Holiday dates: - 2024-01-01: New Year's Day - 2024-04-01: Good Friday - 2024-04-03: Easter Monday - 2024-05-01: Labor Day - 2024-05-09: Ascension Day - 2024-05-20: Whit Monday - 2024-10-03: German Unity Day - 2024-12-25: Christmas Day - 2024-12-26: Boxing Day Summary: - Total public holidays: 9 days - Approximate working days: 251 days

🔧 Advanced Configuration

If you want to run from source:

git clone https://github.com/niondigital/moco-mcp.git cd moco-mcp npm install npm run build npm start

Then configure your MCP client to use the local path:

{ "mcpServers": { "moco": { "command": "node", "args": ["/path/to/moco-mcp/dist/index.js"], "env": { "MOCO_API_KEY": "your-moco-api-key", "MOCO_SUBDOMAIN": "your-subdomain" } } } }
FROM node:18-alpine WORKDIR /app RUN npm install -g @niondigital/moco-mcp ENV MOCO_API_KEY="" ENV MOCO_SUBDOMAIN="" CMD ["@niondigital/moco-mcp"]

🔍 Troubleshooting

Common Issues

❌ Authentication Error:

API authentication failed. Please check MOCO_API_KEY.
  • Verify your API key is correct and has necessary permissions
  • Check if the API key is properly set in environment variables
  • Ensure the key hasn't expired

❌ Subdomain Error:

MOCO_SUBDOMAIN should only contain the subdomain name
  • Use only the subdomain part: company (not company.mocoapp.com)
  • Remove https:// and .mocoapp.com from the subdomain

❌ Node.js Version Error:

This package requires Node.js >= 18.0.0
  • Update Node.js to version 18 or higher
  • Check your version: node --version

❌ npx Connection Issues:

Error: Cannot find module '@niondigital/moco-mcp'
  • Ensure you have internet connection
  • Try: npx --yes @niondigital/moco-mcp
  • Clear npx cache: npx clear-npx-cache

❌ MCP Client Not Finding Tools:

  • Restart your MCP client after configuration changes
  • Check that environment variables are properly set
  • Verify JSON configuration syntax is correct

Debug Mode

For debugging, you can run the server with additional logging:

NODE_ENV=development npx -y @niondigital/moco-mcp

Testing Connection

You can test the server manually:

echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}' | npx -y @niondigital/moco-mcp

🌟 Features

  • ✅ Read-only Access: Safe API integration with no data modification
  • 🔄 Automatic Pagination: Handles large datasets seamlessly
  • 📊 Smart Aggregation: Automatic summation by date, project, and task
  • 🎯 Project Filtering: Filter activities by specific projects
  • ⚡ Fast Performance: Efficient API calls with proper caching
  • 🛡️ Type Safety: Full TypeScript implementation
  • 🧩 Comprehensive Tools: 7 specialized tools for different use cases
  • 🎯 Intelligent Prompts: 8 AI-powered prompts for complex analysis and insights
  • 📅 Date Validation: Automatic date format validation
  • 🔍 Error Handling: User-friendly error messages
  • 🌐 Multi-Client Support: Works with all major MCP clients

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature-name
  3. Make your changes and add tests
  4. Run tests: npm test
  5. Submit a pull request

📄 License

MIT License - see LICENSE file for details.

🆘 Support

📈 Changelog

v1.0.0

  • ✨ Initial release with 7 MCP tools
  • 🚀 NPM package with npx support
  • 📚 Multi-client installation guides
  • 🔧 Full TypeScript implementation
  • ⚡ Automatic pagination and error handling
  • 🎯 Project filtering for activities
  • 📊 Comprehensive time tracking and project management
  • 🎅 Public holidays tracking for working days calculation
Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Provides a Model Context Protocol interface to MoCo time tracking and project management systems, enabling AI assistants to retrieve work activities, projects, tasks, holidays, and presence data.

  1. ⚡ Quick Start
    1. 🚀 Installation
      1. Prerequisites
      2. MCP Client Integration
    2. 🔑 MoCo API Setup
      1. Getting Your API Credentials
      2. Environment Variables
    3. 🛠️ Available Tools
      1. 🎯 Available Prompts
        1. Prompt Examples
      2. 📝 Tool Examples
        1. Get Activities
        2. Get User Projects
        3. Get User Project Tasks
        4. Get User Holidays
        5. Get User Presences
        6. Get User Sick Days
        7. Get Public Holidays
      3. 🔧 Advanced Configuration
        1. 🔍 Troubleshooting
          1. Common Issues
          2. Debug Mode
          3. Testing Connection
        2. 🌟 Features
          1. 🤝 Contributing
            1. 📄 License
              1. 🆘 Support
                1. 📈 Changelog
                  1. v1.0.0

                Related MCP Servers

                • -
                  security
                  F
                  license
                  -
                  quality
                  A versatile Model Context Protocol server that enables AI assistants to manage calendars, track tasks, handle emails, search the web, and control smart home devices.
                  Last updated -
                  14
                  Python
                  • Apple
                  • Linux
                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server for time manipulation tasks, enabling AI models to get the current date/time and calculate duration between timestamps.
                  Last updated -
                  2
                  TypeScript
                  MIT License
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server that integrates with TickTick task management service, allowing AI assistants to list, create, update, and complete tasks with proper timezone handling.
                  Last updated -
                  9
                  4
                  JavaScript
                  MIT License
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol server that enables AI tools to automatically log their activities with detailed metrics like timestamps, token usage, and costs into daily markdown worklog files.
                  Last updated -
                  1
                  1
                  JavaScript
                  MIT License

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/niondigital/moco-mcp'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server