Modus MCP Server
OfficialClick 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., "@Modus MCP Servershow me the headcount for the sales team"
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.
Modus MCP Server
A Model Context Protocol (MCP) server that provides access to Modus's RevOps and Sales Insights API for retrieving headcount data, attrition predictions, sales performance metrics, and capacity planning insights.
Features
Headcount & Workforce Analytics - Get current headcount, attrition risks, and historical attrition trends
Sales Performance Metrics - Access performance leaderboards, team metrics, and individual employee insights
Capacity Planning - Retrieve quarterly capacity, hiring timelines, and revenue gap analysis
AI-Powered Insights - Generate sales insights across 30+ categories and benchmark-driven recommendations
Flexible Filtering - Filter by department, role, date ranges, and custom parameters
Quota & Territory Management - Access quota assignments and territory details
Related MCP server: MCP REST API Server
Prerequisites
Before you begin, ensure you have:
Node.js 18 or higher
Modus API Access - A valid Modus account with API access
Modus API Token - Generated from your Modus dashboard
Getting Your Modus API Token
Log into dashboard.himodus.com
Go to Configuration → Developer
Click "Generate New API Key"
Name:
MCP Server AccessSelect all read permissions
Copy the generated key (starts with
modus_sk_...)
Security Note: Keep this token secure. Never share it or commit it to version control.
Installation
1. Install Dependencies
npm install2. Build (Optional)
The server runs directly from the source file modus-mcp-server.js. No build step is required unless you're packaging for distribution.
Configuration
Claude Desktop Setup
Add the Modus MCP server to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"modus-revops": {
"command": "node",
"args": ["/absolute/path/to/modus-mcp-server.js"],
"env": {
"MODUS_API_TOKEN": "modus_sk_your_api_token_here",
"TRANSPORT_MODE": "stdio"
}
}
}
}Configuration Parameters:
Parameter | Required | Description |
| Yes | Your Modus API token (starts with |
| No | Set to |
| No | Override API endpoint (default: |
Important: Replace /absolute/path/to/modus-mcp-server.js with the full path to the server file on your system.
Testing the Server
Run the server directly to verify configuration:
export MODUS_API_TOKEN="modus_sk_your_token_here"
export TRANSPORT_MODE="stdio"
node modus-mcp-server.jsExpected output:
Modus MCP Server running on stdio
Connected to: https://api.himodus.comAvailable Tools
The Modus MCP server provides 14 tools for accessing RevOps and sales data:
Headcount & Workforce
modus_get_current_headcount
Get current headcount by team, role, or department with filtering.
Parameters:
department(optional): Filter by department name (e.g., "Sales", "Engineering")role(optional): Filter by job role (e.g., "Account Executive", "SDR")status(optional): Filter by employment status -ACTIVE(default) orINACTIVE
Returns: Employee data including roles, departments, employment status, and headcount summaries by department and role.
modus_get_attrition_risks
Get ML-powered attrition risk predictions with confidence scores and risk factors.
Parameters:
threshold(optional): Minimum risk threshold (0-1). Default: 0.7 (70% risk)department(optional): Filter by department namefresh(optional): Generate fresh insights (slower). Default: false (uses cached data)
Returns: At-risk employees with confidence scores, risk factors, predicted termination dates, performance metrics, and Gong activity signals.
modus_get_historical_attrition
Get historical attrition metrics for trend analysis.
Parameters:
days(optional): Time period -90,180(default), or365daysdepartment(optional): Filter by department name
Returns: Attrition rates, counts, and list of terminated employees over the specified period.
modus_get_open_positions
Get open job requisitions and hiring forecast by quarter.
Parameters:
status(optional): Filter by status -OPEN(default),DRAFT,CLOSED, orALLdepartment(optional): Filter by department name
Returns: Open positions with status, department, planned start dates, and summaries by status/quarter.
modus_get_ramp_profiles
Get ramp time profiles showing new hire productivity curves by role.
Parameters:
role(optional): Job role to get ramp data for (e.g., "Account Executive")
Returns: Month-by-month productivity percentages showing how long new hires take to reach full productivity.
Sales Performance
modus_get_performance_leaderboard
Get top sales performers across key metrics.
Parameters:
year(optional): Year for performance dataquarter(optional): Quarter number (1-4)month(optional): Month number (1-12)limit(optional): Number of top performers per metric. Default: 6
Returns: Ranked list of top performers for opportunities created/won, pipeline created, bookings, ASP, and close rate.
modus_get_team_performance
Get team performance overview with performance labels and rankings.
Parameters:
year(optional): Year for performance dataquarter(optional): Quarter number (1-4)month(optional): Month number (1-12)limit(optional): Maximum employees to return. Default: 50offset(optional): Pagination offsetsortBy(optional): Sort byrevenue,bookings,opportunities,pipeline,ASP, orcloseRatesortOrder(optional):ascordesc
Returns: Employee performance metrics with labels (Top performer, High potential, At risk), revenue, bookings, opportunities, pipeline, ASP, and close rate.
modus_get_employee_insights
Get individual employee performance insights with AI analysis.
Parameters:
employeeId(required): Employee ID to analyze
Returns: Detailed performance summary with ramp progress, quota attainment, revenue, pipeline coverage, and AI-generated insights about trends and concerns.
Capacity Planning & Revenue Analysis
modus_get_quarterly_capacity
Get quarterly capacity breakdown with waterfall metrics. Preferred tool for revenue gap analysis.
Parameters:
scenarioId(optional): Scenario ID to analyze
Returns: 5 quarters of data (3 previous + current + 1 future) showing beginning/end capacity, revenue targets, gaps, attrition impact, backfills, and capacity at risk.
modus_get_sales_breakdown
Get comprehensive sales breakdown with hiring/capacity analysis.
Parameters:
period(optional): Auto-detected or specify:YTD,QUARTER,YEAR,CUSTOM_RANGE,LAST_12_MONTHS,NEXT_12_MONTHSyear(optional): Year to analyze (e.g., 2025)quarter(optional): Quarter number (1-4) - auto-sets period toQUARTERstartDate(optional): Start date (YYYY-MM-DD) - requiresendDateendDate(optional): End date (YYYY-MM-DD) - requiresstartDatescenarioId(optional): Scenario ID to analyze
Returns: Month-by-month capacity projections with revenue gaps, hiring needs, targets, attrition impact, and quarterly waterfall metrics.
modus_get_hiring_timeline
Get planned hiring timeline with ramp details and quota assignments.
Parameters:
year(optional): Year for hiring timeline. Default: 2025scenarioId(optional): Scenario ID to analyze
Returns: Hiring schedule with time to hire, start/end dates, territory assignments, monthly ramp percentages, and quarterly quotas.
Insights & Recommendations
modus_get_sales_insights
Get AI-powered sales insights across 30+ categories with recommendations.
Parameters:
categories(optional): Comma-separated list (e.g.,REVENUE_GAP,ATTRITION_RISK,TERRITORY_PERFORMANCE)Available:
REVENUE_GAP,HEADCOUNT_PLANNING,CAPACITY_UTILIZATION,ATTRITION_RISK,ATTRITION_BACKFILLS,PIPELINE_COVERAGE,WIN_RATE_SHIFTS,SALES_CYCLE_BOTTLENECK,TERRITORY_PERFORMANCE,TERRITORY_DESIGN,TERRITORY_LOAD_MGMT,MARKET_EXPANSION,COMPETITIVE_ANALYSIS,SKILLS_GAP, and 20+ more
timeframe(optional): JSON timeframe (e.g.,{"months": 12})includeRecommendations(optional): Include AI recommendations. Default: truelimit(optional): Maximum insights to return (max: 100). Default: 50skipCache(optional): Force fresh generation (slower). Default: false
Returns: Detailed insights with recommendations, confidence scores, severity levels, and affected employees/territories.
modus_get_benchmark_insights
Get benchmark-driven sales insights comparing company metrics to industry standards.
Parameters:
category(optional): Filter byterritory,performance, orrecommendationsforce(optional): Force fresh generation bypassing cache. Default: false
Returns: Company metrics (OTE, quotas, attrition rates), industry benchmarks with sources, variance analysis, and actionable recommendations. Optimized for fast retrieval (<500ms).
Quota & Territory Management
modus_get_quota_assignments
Get quota assignments by employee and territory.
Parameters:
year(optional): Year for quota assignmentssearch(optional): Search employee namesregion(optional): Filter by regionrole(optional): Filter by job role
Returns: Employee quota assignments with quarterly and annual quotas, territory details, and regional breakdowns.
API Reference
The MCP server connects to the Modus API at https://api.himodus.com by default. All tools authenticate using your Modus API token.
Base URL: https://api.himodus.com
Authentication: Bearer token (Authorization: Bearer modus_sk_...)
Timeout: 30 seconds per request
License
MIT
Contributing
Contributions welcome! Please open an issue or submit a pull request
Available Tools
14 toolsmodus_get_attrition_risksA
Get ML-powered attrition risk predictions with confidence scores (0-1). Returns employees at risk of leaving with risk factors and confidence levels. Uses cached insights by default for speed, set fresh=true for real-time analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| threshold | No | Minimum risk threshold (0-1). Default: 0.7 (70% risk) | |
| department | No | Filter by role/department name (e.g., 'Account Executive', 'SDR') | |
| fresh | No | Generate fresh insights (slower but current). Default: false (uses cached data for speed) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses key behavioral traits: uses cached insights by default, fresh=true for real-time analysis, and returns risk factors with confidence. No mention of rate limits or auth, but adequate for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no redundant information. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter tool with no output schema, the description completely covers what to expect (employees at risk, risk factors, confidence levels) and the key behavioral nuance (caching). No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all three parameters with descriptions, and the description adds value by explaining the default caching behavior and the effect of the fresh parameter, which the schema only partially conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves ML-powered attrition risk predictions with confidence scores. It specifies the resource (attrition risks) and distinguishes from sibling tools focused on historical data or team performance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use cached vs fresh data, but lacks explicit guidance on when to prefer this tool over alternatives like modus_get_historical_attrition or modus_get_employee_insights.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_benchmark_insightsA
Get benchmark-driven sales insights with company data and industry comparisons. Optimized for fast retrieval (< 500ms) with multi-layer caching. Returns insights with company metrics (OTE, quotas, attrition rates), industry benchmarks with sources, variance analysis, and actionable recommendations. Use this for comparing your company's metrics to industry standards.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by insight category: 'territory', 'performance', or 'recommendations'. Omit for all categories. | |
| force | No | Force fresh generation bypassing cache (slower). Default: false (uses cached data for speed). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses performance ('<500ms'), caching behavior with multi-layer caching, the 'force' parameter for fresh generation, and the types of insights returned (company metrics, industry benchmarks, variance analysis, recommendations).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The first sentence states the purpose and use case; the second adds performance details and return content. Information is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately covers return values (company metrics, industry benchmarks, variance analysis, recommendations). It also explains caching behavior. It lacks explicit comparisons to siblings but provides enough context for a general understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by explaining 'category' with examples ('territory', 'performance', 'recommendations') and detailing the caching implications of the 'force' parameter, enhancing understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'benchmark-driven sales insights with company data and industry comparisons', which is specific and distinguishes it from siblings like modus_get_sales_insights that may not focus on benchmarks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises 'Use this for comparing your company's metrics to industry standards', providing a clear usage scenario. It does not specify when not to use, but the context sufficiently guides the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_current_headcountB
Get current headcount by team, role, or department with filtering. Returns employee data including roles, departments, and employment status.
| Name | Required | Description | Default |
|---|---|---|---|
| department | No | Filter by department name (e.g., 'Sales', 'Engineering') | |
| role | No | Filter by job role (e.g., 'Account Executive', 'SDR') | |
| status | No | Filter by employment status | ACTIVE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It correctly implies a read-only behavior via 'Get', but does not explicitly state no destructive side effects or permission requirements. It is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence covering the tool's purpose and returned data. It is front-loaded but lacks logical structuring. Could be split into two sentences for clarity, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description mentions returning employee data including roles, departments, and status, which partially compensates for the missing output schema. However, it does not clarify whether the output is an aggregate headcount or a list of employees, which is critical given the tool name implies a count.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and parameter descriptions are clear. However, the description introduces 'team' as a filterable category, yet the schema only includes 'department', 'role', and 'status'. This mismatch could mislead an agent into expecting a 'team' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves current headcount with filtering by department, role, or team. It distinguishes from siblings like modus_get_open_positions or modus_get_attrition_risks by focusing on employee counts. However, 'team' is mentioned but not a parameter, causing slight ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description does not explain that this tool is for current headcount data, while siblings handle attrition, performance, or hiring timelines. An explicit when-to-use note is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_employee_insightsA
Get individual employee performance insights with AI analysis. Returns detailed performance summary including ramp progress, quota attainment, revenue, pipeline coverage, and AI-generated insights about performance trends and concerns.
| Name | Required | Description | Default |
|---|---|---|---|
| employeeId | Yes | Employee ID to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions AI analysis and lists returned fields, but lacks information on performance, side effects, or authentication requirements. The read-only nature is assumed but not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states the purpose, second enumerates outputs. No extraneous information, well-front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool without an output schema, the description adequately describes the returned data. It could mention the response format (e.g., JSON object), but the listed metrics provide sufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the employeeId parameter with a description. The tool description reinforces its purpose but adds no additional semantic detail beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets individual employee performance insights with AI analysis, listing specific outputs like ramp progress, quota attainment, and revenue. This distinguishes it from sibling tools like team performance or other aggregated insights.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for individual employee analysis but does not explicitly state when to use this tool over siblings (e.g., modus_get_team_performance) or provide any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_hiring_timelineB
Get planned hiring timeline with ramp details and quota assignments. Returns hiring schedule with time to hire, start/end dates, territory assignments, monthly ramp percentages, and quarterly quotas.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year to get hiring timeline for | |
| scenarioId | No | Optional scenario ID to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden for behavioral traits. It only states what the tool returns, omitting any side effects, permissions, rate limits, or data freshness considerations. For a 'get' tool, minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-loaded with purpose and output details. No wasted words, efficient structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, so description must describe return structure. It lists key fields (dates, territory, ramp, quotas) but lacks structure details (e.g., per position vs aggregated). Adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both params have descriptions). The description does not add significant meaning beyond 'year' and 'scenarioId'—it mentions returns but not how to use parameters. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets a 'planned hiring timeline' and lists specific details included (ramp, quota, dates, territories). It distinguishes from siblings like modus_get_quota_assignments by combining elements, but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like modus_get_ramp_profiles or modus_get_quota_assignments. The context implies it is for a holistic hiring timeline, but no when-not-to or prerequisite info.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_historical_attritionA
Get historical attrition metrics for trend analysis. Returns attrition rates and counts over specified time periods.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Time period for historical data (90, 180, or 365 days) | |
| department | No | Filter by department name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states output (rates and counts) but doesn't disclose behavior like read-only, auth needs, or data freshness, which is adequate but not thorough for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both essential, front-loaded with purpose and specificity. No redundancy or wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description adequately conveys return of rates and counts. Sibling context is covered by distinct purpose. Minor gap: no mention of edge cases like empty results or date range defaults.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds minimal extra meaning beyond schema descriptions (e.g., 'specified time periods' for days, 'Filter by department name' already in schema).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Get' and resource 'historical attrition metrics' for trend analysis, distinguishing from sibling tools like modus_get_attrition_risks or modus_get_current_headcount.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies use for trend analysis but lacks explicit when-to-use or when-not-to-use guidance, nor does it reference alternatives among the 12 sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_open_positionsA
Get open job requisitions and hiring forecast by quarter. Returns open positions with status, department, and planned start dates.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Filter by requisition status. Default: OPEN | |
| department | No | Filter by department name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It does not disclose whether the operation is read-only, requires authentication, or has any side effects. Only minimal return fields are mentioned, leaving behavioral traits unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the verb 'Get', and contains no superfluous information. Every word contributes to clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is moderately complete. It lists return fields but omits details on the forecasting portion and pagination or limits. For a simple tool with optional parameters, it is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with both parameters described clearly in the schema. The description adds the 'by quarter' context but does not enhance parameter understanding beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves open job requisitions and a hiring forecast by quarter, specifying the resource and adding value beyond the name. It distinguishes from sibling tools like modus_get_current_headcount by focusing on open positions and forecasting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for quarterly hiring data but provides no explicit guidance on when to use this tool versus alternatives like modus_get_hiring_timeline or modus_get_team_performance. No exclusionary context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_performance_leaderboardA
Get top sales performers across key metrics including opportunities created/won, pipeline created, bookings, ASP, and close rate. Returns ranked list of top performers for each metric.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year for performance data | |
| quarter | No | Quarter number (1-4) | |
| month | No | Month number (1-12) | |
| limit | No | Number of top performers to show per metric |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states the output is a ranked list per metric, which implies read-only behavior, but does not disclose additional traits like sorting order, pagination beyond the limit parameter, or handling of missing data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and output format. No fluff or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description lacks details about the result structure (e.g., fields, ordering). It covers the core functionality but leaves some ambiguity about the output shape and optional parameter combinations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with adequate parameter descriptions. The tool description adds no extra meaning beyond listing the metrics; it does not explain how year, quarter, and month interact (e.g., whether all are required together). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: retrieving top sales performers across specific metrics (opportunities, pipeline, bookings, ASP, close rate). It distinguishes from sibling tools like 'modus_get_sales_breakdown' by focusing on ranked leaderboards.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description implies it is for leaderboard-style ranking, but lacks when-not-to-use or alternative tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_quarterly_capacityA
Get quarterly capacity breakdown showing beginning/end capacity, revenue targets, gaps, attrition impact, backfills, and capacity at risk. Returns 5 quarters (3 previous + current + 1 future) with detailed waterfall metrics. This is the PREFERRED tool for revenue gap analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| scenarioId | No | Optional scenario ID to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It describes the output (5 quarters, waterfall metrics) but does not disclose any side effects, authentication needs, rate limits, or confirm it's read-only. The added context on return structure is helpful but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two succinct sentences. The first lists key metrics, the second adds quarter count and usage preference. No excess words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description explains return metrics (beginning/end capacity, revenue targets, gaps, etc.) and quarter range. However, it could be more complete by detailing output format or limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has one optional parameter (scenarioId) with a clear description. Schema coverage is 100%, so baseline is 3. The description does not add additional meaning beyond the schema, just mentions the tool's output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it returns quarterly capacity breakdown with specific metrics like beginning/end capacity, revenue targets, gaps, etc. It also differentiates itself by noting it's the 'PREFERRED tool for revenue gap analysis,' distinguishing it from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says it's preferred for revenue gap analysis, providing clear usage context. However, it does not specify when not to use it or mention alternatives, which would make it more complete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_quota_assignmentsA
Get quota assignments by employee and territory. Returns employee quota assignments with quarterly and annual quotas, territory details, and regional breakdowns.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year for quota assignments | |
| search | No | Search employee names | |
| region | No | Filter by region | |
| role | No | Filter by job role |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It implies a read-only query but does not explicitly state idempotency, rate limits, or potential side effects. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two well-structured sentences. Every word adds value, no redundancy. Front-loaded with action and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no required parameters and no output schema, the description adequately explains the return structure (quarterly/annual quotas, territory details, regional breakdowns). Could mention filtering via optional parameters, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter having a clear description. The main description adds no additional parameter semantics beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('quota assignments'), and the scope ('by employee and territory'). It distinguishes from sibling tools that focus on sales breakdowns, team performance, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings like modus_get_sales_breakdown or modus_get_team_performance. The description lacks context about use cases or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_ramp_profilesA
Get ramp time profiles showing how long new hires take to reach full productivity. Returns month-by-month productivity percentages by role.
| Name | Required | Description | Default |
|---|---|---|---|
| role | No | Job role to get ramp data for (e.g., 'Account Executive') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description indicates it is a read-only data retrieval (returns percentages). Does not disclose behavior for invalid roles or data sources, but basic behavioral transparency is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states purpose, second details output. Front-loaded and efficient, though 'time profiles' is slightly redundant with the explanation that follows.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description clearly explains the return format ('month-by-month productivity percentages by role'). Single optional parameter is well-defined. Adequately complete for a simple data retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with the 'role' parameter already described. The description adds no additional meaning beyond what the schema provides, so baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Get' and the resource 'ramp time profiles' with specific output: 'month-by-month productivity percentages by role'. Distinct from sibling tools which focus on attrition, benchmarks, headcount, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage when ramp data is needed, but provides no explicit when-to-use or when-not-to-use guidance. No mention of alternatives among 13 sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_sales_breakdownA
Get comprehensive sales breakdown with hiring/capacity analysis including targets, capacity, attrition impact, and quarterly waterfall metrics. Returns month-by-month capacity projections with revenue gaps and hiring needs. The period type is auto-detected: use quarter for quarterly analysis, year for annual, or startDate/endDate for custom ranges.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Period type (optional - auto-detected): YTD, QUARTER, YEAR, CUSTOM_RANGE, LAST_12_MONTHS, NEXT_12_MONTHS | |
| year | No | Year to analyze (e.g., 2025). Required for QUARTER, YEAR, or YTD periods. | |
| quarter | No | Quarter number (1-4). When specified, automatically uses QUARTER period. | |
| startDate | No | Start date (YYYY-MM-DD). When specified with endDate, automatically uses CUSTOM_RANGE period. | |
| endDate | No | End date (YYYY-MM-DD). When specified with startDate, automatically uses CUSTOM_RANGE period. | |
| scenarioId | No | Optional scenario ID to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. It explains auto-detection of period type, which is helpful, but does not disclose other traits like read-only nature, permissions, or data freshness. Since it is a get tool, it is likely safe, but this is not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first clearly states purpose and output, second explains key parameter behavior. No redundant information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description provides a reasonable overview of return values (month-by-month capacity projections, revenue gaps, hiring needs). However, it lacks details on data structure or format, and does not compare to sibling tools. For a tool with 6 parameters and no output schema, it is fairly complete but could be enhanced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage (all parameters described). The description adds value by explaining auto-detection logic (e.g., specifying quarter sets period to QUARTER), which clarifies parameter interactions beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves a comprehensive sales breakdown with specific metrics (targets, capacity, attrition impact, quarterly waterfall). However, it does not explicitly differentiate from sibling tools like modus_get_quarterly_capacity, which may overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for comprehensive analysis but provides no explicit guidance on when to use this tool versus alternatives. No exclusions or when-not-to-use instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_sales_insightsA
Get AI-powered sales insights across 30+ categories including revenue gaps, attrition risk, territory performance, pipeline coverage, and competitive analysis. Returns detailed insights with recommendations and confidence scores.
| Name | Required | Description | Default |
|---|---|---|---|
| categories | No | Comma-separated list of categories (e.g., 'REVENUE_GAP,ATTRITION_RISK,TERRITORY_PERFORMANCE'). Available: REVENUE_GAP, HEADCOUNT_PLANNING, CAPACITY_UTILIZATION, ATTRITION_RISK, ATTRITION_BACKFILLS, PIPELINE_COVERAGE, WIN_RATE_SHIFTS, SALES_CYCLE_BOTTLENECK, TERRITORY_PERFORMANCE, TERRITORY_DESIGN, TERRITORY_LOAD_MGMT, MARKET_EXPANSION, COMPETITIVE_ANALYSIS, SKILLS_GAP, and 20+ more. | |
| timeframe | No | JSON timeframe (e.g., '{"months": 12}') | |
| includeRecommendations | No | Include AI recommendations in results | |
| limit | No | Maximum number of insights to return (max: 100) | |
| skipCache | No | Force fresh generation (slower but current). Default: false (uses cached data) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes a read operation returning insights with recommendations and confidence scores, but does not disclose caching behavior, data freshness implications, or any side effects. The skipCache parameter is mentioned in schema but not in description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. Front-loaded with core purpose and scope. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so description must cover return structure. It mentions 'detailed insights with recommendations and confidence scores' but lacks specifics on the insight format, field names, or pagination. With 5 parameters including optional categories and limit, more detail on output would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description adds value by summarizing the available categories (30+) and providing examples, which helps the agent understand the breadth beyond the exhaustive schema list.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states specific verb ('Get') and resource ('AI-powered sales insights') across 30+ categories, listing examples. Clearly distinguishes from sibling tools focused on attrition, bench, headcount, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies use for sales insights across listed categories, but does not explicitly state when to use this tool versus siblings (e.g., modus_get_attrition_risks for concentrated attrition queries). No when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modus_get_team_performanceB
Get team performance overview with performance labels (Top performer, High potential, At risk, etc.). Returns employee performance metrics including revenue, bookings, opportunities, pipeline, ASP, and close rate.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Year for performance data | |
| quarter | No | Quarter number (1-4) | |
| month | No | Month number (1-12) | |
| limit | No | Maximum number of employees to return | |
| offset | No | Pagination offset | |
| sortBy | No | Sort by: revenue, bookings, opportunities, pipeline, ASP, closeRate | |
| sortOrder | No | Sort order: asc or desc |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully convey behavioral traits. It mentions returned metrics but omits critical details such as read-only nature, pagination behavior (despite having offset parameter), authentication requirements, or any side effects. The lack of such information limits transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at two sentences, front-loading the primary purpose and key labels. Every sentence adds value without unnecessary detail, making it efficient for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 optional parameters, no output schema), the description provides a good overview of returned metrics but misses important context: how time dimensions interact, return format, sorting behavior implications, and any prerequisites. It is adequate for basic understanding but incomplete for fully autonomous invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters, providing basic meaning per param. The description adds high-level context about the output but does not elaborate on parameter usage beyond the schema. For example, it lists metric names that map to sortBy values, which is already in the schema. Thus, the description adds marginal value, consistent with the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets a team performance overview with specific metrics and labels, making the purpose clear. However, it does not explicitly differentiate this tool from siblings like modus_get_performance_leaderboard or modus_get_sales_insights, which could be distinct in scope or granularity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description only explains what it returns, leaving the agent to infer appropriate usage context without any explicit when-to-use or when-not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
14 tool updates
v1.0.0- First observed
modus_get_attrition_risks - First observed
modus_get_benchmark_insights - First observed
modus_get_current_headcount - First observed
modus_get_employee_insights - First observed
modus_get_hiring_timeline - First observed
modus_get_historical_attrition - First observed
modus_get_open_positions - First observed
modus_get_performance_leaderboard - First observed
modus_get_quarterly_capacity - First observed
modus_get_quota_assignments - First observed
modus_get_ramp_profiles - First observed
modus_get_sales_breakdown - First observed
modus_get_sales_insights - First observed
modus_get_team_performance
TDQS
Each tool targets a distinct aspect of sales and HR analytics, such as attrition risks, benchmarks, headcount, individual performance, and team performance. The descriptions clearly differentiate them, with no overlapping purposes.
All tools follow a consistent 'modus_get_' prefix with descriptive snake_case nouns (e.g., attrition_risks, benchmark_insights). No variation in naming convention.
14 tools is well-scoped for a comprehensive sales and HR analytics server, covering various metrics and insights without being excessive or sparse.
The set covers a wide range of read-only analytics needs, but lacks any write or configuration tools (e.g., to update data or set parameters), which might be expected for full lifecycle support.
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
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A Model Context Protocol server for Wix AI tools
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Hosted MCP server for AI-driven data ops. Create apps, manage schemas, and CRUD structured data.
Related MCP Servers
- AlicenseBqualityBmaintenanceA Model Context Protocol server that enables LLMs to interact with Salesforce data through SOQL queries, SOSL searches, and various API operations including record management.14178MIT
- FlicenseNot gradedqualityDmaintenanceA server implementation of the Model Context Protocol (MCP) that provides REST API endpoints for managing and interacting with MCP resources.-
- AlicenseAqualityDmaintenanceA Model Context Protocol server that provides tools to interact with Matomo Analytics API, enabling management of sites, users, goals, segments, and access to analytics reports through a MCP interface.1115ISC
- AlicenseAqualityCmaintenanceA Model Context Protocol (MCP) server for Tableau Server. Enables AI assistants to interact with Tableau workbooks, views, datasources, and metadata.24MIT
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/mod-us/modus-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server