Public Feature Board and Roadmap Monitor
Enables monitoring ClickUp's public feature board and roadmap, returning its most-voted feature requests, status counts, and integration targets; can also track new requests, status changes, and vote jumps over time.
Click on "Deploy 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., "@Public Feature Board and Roadmap MonitorWhat are clickup.com's most requested features and integrations?"
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.
Public Feature Board and Roadmap Monitor MCP Server
An MCP server for the Mamba Labs Public Feature Board and Roadmap Monitor actor on Apify. Give it a company domain. Each run finds the company's public feature board and returns the requests its customers vote on most.
What's Inside
Related MCP server: ticket-writer-mcp
What it does
Finds the board: a link on the homepage, a board on the company's own subdomain, or a Canny, Featurebase, Frill, or UserVoice board named after the company that links back to its domain.
One board row per company: platform, board URL, total posts, top request, status counts, and
integration_targets, the products customers ask the company to integrate with.One request row per request: title, votes, status, comments, board, link, and
is_integration_requestwithintegration_target.Monitoring: with
only_newand astate_key, only new requests, status changes, and vote jumps since the last run.
A company with no public board comes back free with a row_status saying so.
All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.
Quick start
You need Node.js 18 or newer and an Apify account with an API token.
Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:
{
"mcpServers": {
"mamba-public-feature-board-roadmap-monitor": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-public-feature-board-roadmap-monitor"
],
"env": {
"APIFY_TOKEN": "your-apify-token"
}
}
}
}Restart the client. The get_feature_board_requests tool appears.
Prerequisites
Node.js 18 or newer.
An Apify API token from console.apify.com/account/integrations, set as
APIFY_TOKEN. The server lists its tool without a token; a call needs one.
Example prompts
"What are ClickUp's most requested features, and which integrations do its customers want?"
"Find the public roadmap boards for descript.com, instantly.ai, and ahrefs.com and list their planned items."
"Which new feature requests showed up on clickup.com's board since last week?"
Tool
get_feature_board_requests. One tool. Example arguments:
{
"company_domain": "clickup.com",
"max_requests": "20"
}Inputs
Every buyer facing input of the actor, unchanged. Omitted inputs take the actor's own defaults. Numbers and booleans are sent as strings.
Input | Type | Description |
| string | The company website domain, for example clickup.com. The actor reads the homepage for a link to a feedback board or public roadmap, then checks the common board addresses |
| array | Several company domains, one per line. Each gets its own board row. Up to 200 per run |
| array | Board addresses you already know, for example https://feedback.canny.io. With one domain and one board URL, the board is read as that company's board. A board URL on its own is read as a company of its own |
| string | With one domain only: the company name as its board shows it. Used to confirm a board found by name |
| string | Request rows returned per company, most votes first, up to 100. 0 returns only the board row. Default 20 |
| string | Boards or forums read per company, largest first, up to 5. Canny shows its top 10 and newest 10 requests on each board page. Default 2 |
| string | true to return only requests that ask for an integration. The board row still counts every request read. Default false |
| string | true (default) checks .canny.io, .featurebase.app, .frill.co, and .uservoice.com when the site links no board. A board found this way is used only when it links back to the company domain |
| string | true to return only requests that are new, changed status, or gained at least Min vote increase votes since the last run with the same state key. The board row is returned on every run. Default false |
| string | With only new on: the vote gain that makes a request count as changed. Default 5 |
| string | Names the saved request list, so separate schedules compare separately |
| string | Optional. The run stops before it would charge more than this |
| string | auto (default) sends requests directly and moves a host to the Apify proxy default pool only when that host refuses. A reliability setting: proxy use adds nothing to your price |
Pricing
Pay per event on Apify, billed to your Apify account. Prices in USD.
Event | Free plan | Bronze | Silver | Gold |
| $0.0038 | $0.00361 | $0.00342 | $0.00323 |
| $0.0005 | $0.0005 | $0.0005 | $0.0005 |
A company with no public board, a blocked board, a board with no readable request, and a Productboard portal returned as a link are free. Request rows carry no charge of their own.
Your keys
The actor needs no key. It reads public board pages and holds no key of any kind. Proxy traffic adds nothing to your price: Mamba Labs pays the platform costs of the run. proxy_mode is a reliability setting.
Full actor documentation
apify.com/mambalabs/public-feature-board-roadmap-monitor
License
MIT. See LICENSE.
Available Tools
1 toolget_feature_board_requestsGet a company's public feature requestsARead-only
Find a company's public feature board from its domain (for example clickup.com) and return its top requests. The homepage is read for a link to a feedback board or public roadmap, including one on the company's own subdomain; when none is linked, the common Canny, Featurebase, Frill, and UserVoice addresses are checked and a board is used only when it links back to the company domain. You get one company_board row (platform, board URL, total posts, top request, status counts, and the integrations customers ask for) and one request row per feature request, most votes first, with votes, status, comments, board, and an integration flag naming the product asked for. With only_new and a state_key, only new requests, status changes, and vote jumps since the last run. A Productboard portal comes back as a link. No board, a blocked board, and a board with no readable request are free. A run that does not succeed is returned as an error with its run ID. Read-only; requires an APIFY_TOKEN; Apify charges once per company whose board was found and read.
| Name | Required | Description | Default |
|---|---|---|---|
| domains | No | Several company domains, one per line. Each gets its own board row. Up to 200 per run. | |
| only_new | No | true to return only requests that are new, changed status, or gained at least Min vote increase votes since the last run with the same state key. The board row is returned on every run. Default false. | |
| state_key | No | Names the saved request list, so separate schedules compare separately. | |
| board_urls | No | Board addresses you already know, for example https://feedback.canny.io. With one domain and one board URL, the board is read as that company's board. A board URL on its own is read as a company of its own. | |
| max_boards | No | Boards or forums read per company, largest first, up to 5. Canny shows its top 10 and newest 10 requests on each board page. Default 2. | |
| proxy_mode | No | auto (default) sends requests directly and moves a host to the Apify proxy default pool only when that host refuses. A reliability setting: proxy use adds nothing to your price. | |
| company_name | No | With one domain only: the company name as its board shows it. Used to confirm a board found by name. | |
| max_requests | No | Request rows returned per company, most votes first, up to 100. 0 returns only the board row. Default 20. | |
| company_domain | No | The company website domain, for example clickup.com. The actor reads the homepage for a link to a feedback board or public roadmap, then checks the common board addresses. | |
| max_charge_usd | No | Optional. The run stops before it would charge more than this. | |
| min_vote_increase | No | With only new on: the vote gain that makes a request count as changed. Default 5. | |
| probe_platform_slugs | No | true (default) checks <name>.canny.io, <name>.featurebase.app, <name>.frill.co, and <name>.uservoice.com when the site links no board. A board found this way is used only when it links back to the company domain. | |
| integration_requests_only | No | true to return only requests that ask for an integration. The board row still counts every request read. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/non-idempotent, and the description adds substantial context beyond them: requires an APIFY_TOKEN, billing happens only per company whose board was found and read, no-board/blocked-board/no-readable-request cases are free, failures return an error with a run ID, and Productboard portals come back as a link. That is exactly the operational detail an agent needs before spending money.
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?
Front-loaded with the core action and discovery logic, then output shape, then incremental mode, then cost/error behavior — a sensible ordering. It is a single dense block with some cramming (cost, Productboard, and error handling share one sentence cluster), but nearly every sentence carries information an agent would otherwise lack.
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 13-parameter, no-output-schema, open-world scraping tool, the description covers discovery logic, return structure, incremental mode, billing, and error reporting. Nothing essential to calling it correctly is missing, and the absence of an output schema is compensated by the explicit row description.
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 the schema already documents all 13 parameters and the baseline is 3. The description adds real value on top by explaining the only_new/state_key/min_vote_increase interaction as a coherent workflow and by clarifying the output-row semantics tied to max_requests and max_boards.
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?
States a specific verb and resource — find a company's public feature board from a domain and return its top requests — and names the exact fallback discovery strategies (homepage link, then Canny/Featurebase/Frill/UserVoice probes). The output entities (one company_board row plus one request row per request) are spelled out, so an agent knows precisely what it gets.
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?
Gives concrete conditional guidance: when the homepage link is used, when platform probing kicks in, and that a probed board is only accepted if it links back to the company domain. It also explains the only_new + state_key incremental mode. It stops short of explicit 'when not to use' or prerequisite framing (e.g. run state_key first), but there are no siblings to route between.
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.
1 tool update
v1.0.0- First observed
get_feature_board_requests
TDQS
Scored across 1 tool
With only one tool there are no tool boundaries to confuse, so misselection is impossible. The caveat is that this clarity comes from consolidating every behavior (discovery, fetching, delta tracking) into one tool rather than from well-separated tools.
The single name, get_feature_board_requests, is a clear snake_case verb_noun phrase consistent with common MCP conventions. There is only one name, so no inconsistency is possible, though the plural object and long compound are slightly awkward.
A one-tool server is borderline thin: the tool bundles board discovery, request retrieval, and run-over-run delta tracking into a single call with only only_new/state_key as control parameters. It works for the narrow purpose but offers no granularity for agents that want just discovery or just a refresh.
The core read-only workflow (find board, list top requests with votes/status/integrations, detect changes since last run) is covered. Notable gaps exist: no way to fetch a specific request or its comment thread, no multi-company or multi-board comparison, and no routine that continues past the top requests or previous-run delta.
Maintenance
Related MCP Connectors
Connect to a Sleekplan workspace for customer feedback, roadmap, changelog, and surveys. Feedback: search and filter posts, read threads with votes and voters, create and update, merge duplicates, check for similar requests, pull stats. Triage: apply tags and statuses, assign owners, reply in comments. Surveys: read NPS, CSAT, and multi-question responses and summaries. Changelog: draft and publish release notes for what you ship. Users: manage end users and segments! Find out more at https://sleekplan.com/mcp/
Track SaaS directory submissions for your products via API key–gated Streamable HTTP MCP.
A collaborative place for user requests: collect feedback, plan work, keep users in the loop.
Feature-request board for software teams: users vote, your coding agent pulls the top request as a spec over MCP, voters get emailed when it ships.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables users to discover applicant tracking system job boards from company domains, list open roles, detect hiring changes over time, and generate hiring summaries across multiple ATS platforms.MIT
- FlicenseNot gradedqualityCmaintenanceTransforms free-text feature requests into well-formed tickets for Jira, GitHub, GitLab, and Linear, handling clarification, formatting, and duplicate detection while leaving the actual submission to the caller.-
- AlicenseNot gradedqualityFmaintenanceEnables users to look up a company's open job postings from public Greenhouse, Lever, and Ashby boards, returning them in one normalized shape with filtering by keyword, location, remote status, and posting date. It also identifies which of those three ATSs hosts a given company's board and how many roles are open there.24 npmMIT
- AlicenseAqualityBmaintenanceEnables users to track a list of company domains and retrieve only the job-board changes since the previous run, including new, closed, and reposted postings with full descriptions, stable posting keys, and 30-day hiring velocity per company. It runs on Apify and exposes this through a single tool call.1106 npmMIT