PlainStaff MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PlainStaff MCP Serverwhat's my current flextime balance?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PlainStaff Model Context Protocol (MCP) Server
Secure, enterprise-grade AI assistant integration for PlainStaff time tracking, projects, absences, and workforce management.
Quick Start • Client Setup • Available Tools • Two-Phase Safety • Development
Under Active Development — Not Yet Live
The PlainStaff MCP extension is currently in active development and cannot be used yet. The remote endpoints and published packages are not yet live.
🌟 Overview
The PlainStaff MCP Server connects AI assistants—including Claude (Desktop & Code), ChatGPT, Cursor, Grok, and custom LLM agents—directly to your PlainStaff workspace.
Through standard Model Context Protocol (MCP) interfaces, LLMs can inspect working hours, manage project bookings, check vacation balances, evaluate shift plans, and generate reports—while strictly honoring company permissions and employee privacy.
Core Highlights
🛡️ Two-Phase Write Confirmation: Destructive and write operations run in
dry_runpreview mode by default. Assisting agents must receive explicit user approval and commit with a timedconfirm_token.🔒 Enterprise-Grade Security: Strict multi-tenant isolation, RBAC role checks (Employee, Manager, HR Admin), and OAuth 2.1 Bearer authentication.
⚡ Dual Transport Architecture:
Remote HTTP (
POST /mcp): Stateless streamable JSON endpoint for cloud assistants (ChatGPT, Claude Connectors, Grok).Local stdio Proxy (
plainstaff-mcp-server): Zero-latency stdio-to-HTTPS proxy for desktop apps and IDEs.
📊 26+ Curated Tools: Covering time tracking, project financials, employee master data, shifts, and ArbZG compliance.
💡 Built-in Prompts & Resources: Out-of-the-box workflows for month-end reviews (
monatsabschluss), project status audits (projektstatus), and live schema introspection.
Related MCP server: keeping-mcp
🚀 Quick Start
Local stdio Proxy (Desktop & IDEs)
No local installation required—run directly via npx:
# Using an OAuth Bearer Token
export PLAINSTAFF_ACCESS_TOKEN="your_access_token"
# Or using your Personal API Key
export PLAINSTAFF_API_KEY="your_api_key"
export PLAINSTAFF_TENANT="your_tenant_id"
npx -y @plainstaff/mcpRemote HTTP Endpoint (Cloud Assistants)
For cloud connectors (Claude custom connector, ChatGPT Apps SDK, Grok):
POST https://api.plainstaff.com/mcp
Authorization: Bearer <oauth2_access_token>
Content-Type: application/jsonOAuth 2.1 discovery endpoints:
Authorization Server:
GET /.well-known/oauth-authorization-serverProtected Resource:
GET /.well-known/oauth-protected-resource
💻 Client Configuration
Claude Desktop
Add to your claude_desktop_config.json (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"plainstaff": {
"command": "npx",
"args": ["-y", "@plainstaff/mcp"],
"env": {
"PLAINSTAFF_ACCESS_TOKEN": "your_access_token"
}
}
}
}Cursor / VS Code
Add to .cursor/mcp.json in your project root or user settings:
{
"mcpServers": {
"plainstaff": {
"command": "npx",
"args": ["-y", "@plainstaff/mcp"],
"env": {
"PLAINSTAFF_API_KEY": "your_api_key",
"PLAINSTAFF_TENANT": "your_tenant"
}
}
}
}🧰 Tool Catalog
Tools are grouped by domain with fine-grained RBAC permission checks:
⏱️ Time Tracking & Absences
Tool | Scope | Description |
| Write ⚠️ | Record or update a working time entry ( |
| Read | Retrieve work hour bookings within a date interval. |
| Read | Calculate current flextime / overtime balance and target hours. |
| Read | List recorded vacations, sick leaves, and public holidays. |
| Write ⚠️ | Submit an absence or vacation request. |
| Read | List timesheets and vacation requests awaiting managerial approval. |
| Write ⚠️ | Approve or reject pending time bookings or absences. |
| Write ⚠️ | Submit an official time booking correction. |
📂 Projects & Billing
Tool | Scope | Description |
| Read | List active projects, customers, and assigned project budgets. |
| Read | Analyze project budget consumption, burn rate, and remaining hours. |
| Read | Detailed time bookings allocated to a specific project. |
| Write ⚠️ | Book hours directly against a project task or milestone. |
| Read | Retrieve invoice status and unbilled project hours. |
👥 Master Data & Organizations
Tool | Scope | Description |
| Read | List accessible colleagues, teams, and departments. |
| Read | Retrieve detailed profile for an employee (subject to RBAC). |
| Read | Query customer directories linked to projects. |
| Read | List organizational units and team structures. |
| Read | Query regional public holidays and non-working days. |
📅 Workforce, Shifts & Compliance
Tool | Scope | Description |
| Read | Retrieve rostered shifts and duty rosters. |
| Read | Query employee availability considering vacations and target hours. |
| Read | Audit working hours against legal regulations (e.g. ArbZG rest breaks, max daily hours). |
🔍 Discovery & Reports
Tool | Scope | Description |
| Read | Fast full-text lookup across master data (employees, projects, customers). |
| Read | Retrieve a specific entity by its URI ( |
| Read | List available reporting templates. |
| Read | Execute predefined reports and export aggregated data. |
🛡️ Safety & Two-Phase Write Confirmation
To protect against inadvertent AI actions (hallucinations, accidental deletions, erroneous bookings), all write operations use Two-Phase Commit:
sequenceDiagram
participant User
participant Assistant as AI Assistant
participant MCP as PlainStaff MCP Server
participant API as PlainStaff API
User->>Assistant: "Book 4 hours on Project Phoenix for today"
Assistant->>MCP: plainstaff.project_book_time(..., dry_run=true)
MCP-->>Assistant: { dry_run: true, preview: {...}, confirm_token: "tok_xyz", expires: 300s }
Assistant-->>User: "I will book 4h on Project Phoenix (9:00 - 13:00). Please confirm."
User->>Assistant: "Confirmed, go ahead"
Assistant->>MCP: plainstaff.project_book_time(..., dry_run=false, confirm_token="tok_xyz")
MCP->>API: Execute booking
API-->>MCP: Success
MCP-->>Assistant: { success: true, booking_id: "12345" }
Assistant-->>User: "Done! Booking #12345 created."Phase 1 (Preview): The tool is called with
dry_run: true(default). The server calculates the result, checks permissions, and issues a short-lived cryptographicconfirm_token(valid for 5 minutes).Phase 2 (Commit): The assistant prompts the user for verification. Upon user consent, the tool is called again with
dry_run: falseand the matchingconfirm_token.
🛠️ Development
This package is written in modern TypeScript (ESM) and uses vitest for contract and integration testing.
# Clone the repository
git clone https://github.com/P1ainStaff/MCP.git
cd MCP
# Install dependencies
pnpm install
# Run unit & schema tests
pnpm test
# Typecheck and build dist/
pnpm run build📄 License & Links
License: MIT License — see LICENSE for details.
PlainStaff Website: plainstaff.com
Developer Documentation: plainstaff.com/developers/mcp
Issues & Feedback: GitHub Issues
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Let AI agents query data and act across all your business apps via MCP.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Governed app access for AI agents: 1,000+ apps & 12,000+ tools via Code Mode MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to manage and interact with WordPress sites through MCP, providing tools for content creation, moderation, WooCommerce operations, and governance.47GPL 2.0

keeping-mcpofficial
AlicenseAqualityCmaintenanceEnables AI coding assistants to log billable hours into the Keeping time-tracking service via MCP tools, with dry-run protection for all write operations.1284MIT- AlicenseNot gradedqualityDmaintenanceEnables MCP-compatible assistants to securely access external systems like Slack through permission-scoped, idempotent tools with tenant isolation, delegated OAuth consent, and an immutable audit trail.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants and teams to collaborate in a shared workspace by building and querying tables, writing documents, uploading files, and publishing live dashboards through any MCP-compatible client.2MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/P1ainStaff/MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server