ProjectPulse MCP vs MCP Server
A side-by-side look at the ProjectPulse MCP and MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose ProjectPulse MCP for monitoring work as a local process; choose MCP Server for monitoring as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose ProjectPulse MCP when
- You need dedicated capabilities in the Monitoring domain.
- You prefer a local stdio subprocess transport.
- You have the keys it needs:
GITHUB_TOKEN. - You want tools like
check_ci_status, get_repo_health, analyze_dependencies.
Choose MCP Server when
- You need dedicated capabilities in the Monitoring domain.
- You prefer a local stdio subprocess transport.
- You want tools like
list_monitors, get_monitor, create_http_monitor.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Monitoring | Monitoring |
| Quality signal | 64/100 · Good | 60/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Free | Not declared |
| Required env vars | GITHUB_TOKEN | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 1 |
| Directory activity | 4 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 8 | 15 |
| Full listing | View ProjectPulse MCP | View MCP Server |
Tools & capabilities
ProjectPulse MCP tools 8
check_ci_statusFetches recent CI/CD workflow runs (GitHub Actions) for a GitHub repository. - Side effects: None. This is a strictly read-only operation. - Data sources: GitHub REST API (actions/runs). - Auth requirements: No authentication required for public repositories. Uses configured token if available. - Rate limits: Subject to standard GitHub API limits. - Return shape: Returns a JSON array of workflow runs including name, status, conclusion, head_branch, created_at, updated_at, and html_url. - Usage guidelines: Use this tool ONLY to check raw GitHub Actions workflow history and CI build statuses. DO NOT use this tool for other analyses: - For a computed A-F health score grading, use 'get_health_score' instead. - For retrieving basic repository stats (stars, forks), use 'get_repo_health' instead. - For calculated DORA metrics, use 'get_dora_metrics' instead.get_repo_healthFetches basic repository metadata and statistics from the public GitHub API. - Side effects: None. This is a strictly read-only operation. - Data sources: Public GitHub REST API (GET /repos/{owner}/{repo}). - Auth requirements: No authentication required for public repositories. Uses configured GitHub token if available. - Rate limits: Subject to standard GitHub API limits (60 requests/hour unauthenticated, 5000 requests/hour authenticated). - Return shape: Returns a JSON object containing specific metadata: full_name (string), description (string), stargazers_count (number), open_issues_count (number), language (string), license (string, SPDX ID), pushed_at (ISO 8601 string), default_branch (string), archived (boolean), and forks_count (number). - Usage guidelines: Use this tool ONLY to retrieve basic raw metadata (like stars, forks, language, and issue counts). DO NOT use this tool for other specific analyses: - For a computed A-F health score grading, use 'get_health_score' instead. - For checking CI/CD workflow run statuses, use 'check_ci_status' instead. - For package vulnerabilities and dependency graph, use 'analyze_dependencies' instead. - For code security and static analysis, use 'analyze_code_scanning' instead.analyze_dependenciesFetches Dependabot alerts for a GitHub repository to analyze vulnerable package dependencies. - Side effects: None. This is a strictly read-only operation. - Data sources: GitHub REST API (dependabot/alerts). - Auth requirements: Requires GITHUB_TOKEN with appropriate permissions (dependabot alerts are often restricted). - Rate limits: Subject to standard GitHub API limits. - Return shape: Returns a JSON array of vulnerable package dependencies including summary, severity, package_name, state, and html_url. - Usage guidelines: Use this tool ONLY to find vulnerable package dependencies (npm, pip, etc.). DO NOT use this tool for other checks: - For static code security vulnerabilities (CodeQL), use 'analyze_code_scanning' instead. - For a computed A-F health score grading, use 'get_health_score' instead.analyze_code_scanningFetches or triggers open Code Scanning (CodeQL) alerts for a GitHub repository. - Side effects: Read-only by default. If trigger_scan=true, writes to GitHub Actions by creating a workflow_dispatch event. - Data sources: GitHub REST API (code-scanning/alerts and actions). - Auth requirements: Requires GITHUB_TOKEN with appropriate permissions (security-events). - Rate limits: Subject to standard GitHub API limits. - Return shape: Returns a JSON array of alert objects including rule_id, severity, rule_description, state, location paths, and html_url. - Usage guidelines: Use this tool ONLY for deep static code vulnerability scanning (CodeQL). DO NOT use this tool for other checks: - For package/dependency vulnerabilities, use 'analyze_dependencies' instead. - For a computed A-F health score grading, use 'get_health_score' instead. - For checking standard CI/CD workflow statuses, use 'check_ci_status' instead.get_health_scoreCalculates a 0-100 health score and A-F grade for a GitHub repository. - Side effects: Writes a trend snapshot to local disk for history tracking. Read-only against GitHub API. - Data sources: GitHub REST API (repos, actions, dependabot) and OpenSSF Scorecard API. - Auth requirements: No authentication required for public repositories. Uses configured token if available. - Rate limits: Subject to standard GitHub API limits (heavy usage across multiple endpoints). - Return shape: Returns a JSON object with a grade (A-F), total score, detailed category breakdown (CI, freshness, security, community, maintenance), improvement suggestions, and historical trend data. - Usage guidelines: Use this tool ONLY for deep analytical grading and overall repository health assessment. DO NOT use this tool for quick metadata checks: - For basic raw metadata (stars, language, etc.), use 'get_repo_health' instead. - For raw CI workflow statuses, use 'check_ci_status' instead. - For deep code vulnerability scanning, use 'analyze_code_scanning' instead. - For DORA metrics, use 'get_dora_metrics' instead.get_dora_metricsCalculates DORA proxy metrics (deployment frequency, lead time, change failure rate, MTTR) for a GitHub repository. - Side effects: None. This is a strictly read-only operation. - Data sources: GitHub REST API (releases, actions/runs, pulls). - Auth requirements: No special authentication required for public repositories. Private repositories require GITHUB_TOKEN. - Rate limits: Subject to standard GitHub API limits. Heavy API usage due to multiple list endpoints being queried. - Return shape: Returns a JSON object with calculated DORA metrics over the specified period. - Usage guidelines: Use this tool ONLY to evaluate DORA metrics and team delivery performance. DO NOT use this tool for other checks: - For raw workflow statuses, use 'check_ci_status' instead. - For a computed A-F health score grading, use 'get_health_score' instead. - For general repository metadata, use 'get_repo_health' instead.compare_reposCompares health scores of multiple GitHub repositories (2-5 repos) and ranks them. - Side effects: None. This is a strictly read-only operation. - Data sources: GitHub REST API and OpenSSF Scorecard API (via get_health_score logic). - Auth requirements: No authentication required for public repositories. Uses configured token if available. - Rate limits: Subject to standard GitHub API limits. Multiplies API calls by the number of repositories compared. - Return shape: Returns a JSON object containing a ranked list of repositories (owner, repo, rank) with their detailed health breakdown (score, CI, freshness, security, community, maintenance). - Usage guidelines: Use this tool ONLY when you need to compare or rank multiple repositories against each other based on their health scores. DO NOT use this tool for analyzing a single repository: - For getting the health score of a single repository, use 'get_health_score' instead. - For comparing raw metadata instead of health scores, query 'get_repo_health' individually.check_best_practicesChecks whether a GitHub repository follows open-source community best practices. - Evaluates 12 checks: README, LICENSE, SECURITY.md, CONTRIBUTING.md, CODE_OF_CONDUCT, issue/PR templates, branch protection, Dependabot, CI/CD, description, and topics. - Returns a weighted 0-100 score with A-F grade, per-check pass/fail/unknown status, and actionable suggestions for missing items. - Side effects: None. Read-only operation. - Rate limits: ~6 GitHub API calls per invocation. - Branch protection check requires admin access — returns "unknown" (not penalized) if token lacks permission. - Use this tool to audit repo quality and discoverability. For a computed health grade based on CI/security/activity, use 'get_health_score' instead.
MCP Server tools 15
list_monitorsList the monitors on the account, newest first, 30 per page. Each entry carries the id needed by every other tool, plus name, url, type, current status, check frequency and the uptime percentage over the last 24 hours. Start here when the request names a monitor by name rather than by id, and when asked what is broken - filtering by status "down" answers that in one call. Returns an empty list rather than an error when nothing matches.get_monitorRead one monitor in full: its configuration, current status, and the type-specific detail the list view omits - expected status codes for HTTP, port and protocol for PORT, certificate or registration expiry date for SSL and DOMAIN. Use it after list_monitors when the answer depends on how the check is configured, for instance whether a timeout is too tight or which port is actually being watched.create_http_monitorWatch a web page or endpoint over HTTP/HTTPS and treat an unexpected status code, a timeout or a connection failure as downtime. This is the right type for anything a browser would open. Choose create_api_monitor instead when the response body matters as well as the status code. Checks run from probes in several countries. Call list_monitors first so you do not create a duplicate of an existing url.create_api_monitorWatch a JSON or REST endpoint where the response itself matters, not only that the host answered. Use it for health endpoints, webhooks and any API whose failure would be invisible to a plain page check. For an ordinary web page, create_http_monitor is lighter and enough.create_ping_monitorWatch a host with ICMP ping: it answers whether the machine is reachable at all, and reports round-trip time and packet loss. Use it for servers, routers and anything with no web service on top. It says nothing about whether a site or service on that host is working - a box can ping perfectly while its web server is down. Some hosting providers block ICMP, in which case the monitor will read as down.create_port_monitorWatch one TCP or UDP port on a host and report it up only when the service behind it actually answers. This is the type for game servers, databases, mail and anything else that speaks its own protocol rather than HTTP - Minecraft, Rust, CS2, FiveM, Postgres, Redis, SMTP. The port must be given as part of the url. Set protocol to UDP for game servers; most of them do not answer on TCP at all.create_ssl_monitorWatch a TLS certificate: whether it is valid, who issued it, and how many days remain before it expires. This is about the certificate, not about the site being reachable - pair it with create_http_monitor when you want both. Note that such a monitor carries two independent states, one for reachability and one for expiry, so a certificate can be days from expiring while the check still reads up.create_domain_monitorWatch a domain registration and report how long is left before it lapses, read from WHOIS. This catches the failure no uptime check can see: everything works perfectly right up to the day the domain expires. Distinct from create_ssl_monitor, which watches the certificate rather than the registration; the two expire on different dates and both are worth watching.pause_monitorStop checking a monitor without deleting it. History and configuration survive, and resume_monitor puts it back to work. Use this around planned maintenance so the downtime does not land in the uptime figures or fire alerts. A paused monitor reports neither up nor down, so it is easy to forget one is off.resume_monitorStart checking a paused monitor again, with the configuration it had before. The first check runs immediately rather than after the usual interval, so the current state is known within moments. Safe to call on a monitor that is already running.delete_monitorPermanently delete a monitor together with its entire check history, incidents and statistics. This cannot be undone and there is no trash to restore from. Confirm with the user before calling it, and prefer pause_monitor whenever the intent is only to stop the checking for a while.get_incidentsRead the downtime history of one monitor: when each outage began, when it ended, how long it lasted and what the failure actually was - HTTP status, error text, and which probe saw it. This is the tool for "what happened" and "how often does this break". For the shape of response times around an outage, follow up with get_stats_hourly.- +3 more on the listing page
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
ProjectPulse MCP
{
"mcpServers": {
"projectpulse-mcp": {
"command": "npx",
"args": [
"-y",
"projectpulse-mcp"
],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN_HERE"
}
}
}
}
MCP Server
{
"mcpServers": {
"uptybots-mcp-server": {
"command": "npx",
"args": [
"-y",
"uptybots-mcp-server"
]
}
}
}
Frequently asked questions
ProjectPulse MCP is categorized under Monitoring and uses a local stdio subprocess. MCP Server belongs to Monitoring and uses a local stdio subprocess. Pick ProjectPulse MCP for monitoring work and MCP Server for monitoring.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
ProjectPulse MCP is listed as free. MCP Server has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add projectpulse-mcp and uptybots-mcp-server as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, ProjectPulse MCP has a quality signal of 64/100 (Good) with 4 views, 0 installs and 1 GitHub stars. MCP Server has 60/100 (Good) with 1 views, 0 installs and 1 GitHub stars.