Askboard

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 7, 2026

Feature-request boards for software teams: ranked requests, board stats and spec drafts.

已验证STDIO仅桌面效率与工作流开发者工具

概览

AI 生成的概览

连接托管 FeatQ 功能需求看板的本地 stdio 桥接服务,让助手列出、排序和读取需求、生成规格草稿并更改需求状态。

可以做什么
  • 列出和读取功能需求,可按状态、排序方式和数量筛选,并查看单条需求及其评论
  • 查看看板统计:需求数量、投票总数和热门需求
  • 按需求分数获取排名靠前的需求,分数综合投票、评论和时效
  • 为单条需求生成可直接交给智能体的 Markdown 实现规格
  • 更新需求状态,包括标记为已完成
  • 列出被监控的竞品对比页面中关于本产品的说法
适用场景
适合团队在 FeatQ 看板上收集产品反馈,并希望助手在对话中梳理需求热度、查看需求详情与评论、起草实现规格或推进需求状态时使用。
运行要求
以 stdio 本地进程运行,可通过 npx 或 Docker 镜像启动;需要能访问上游 FeatQ MCP 端点。可选环境变量 FEATQ_MCP_URL 可覆盖端点,可选 FEATQ_API_KEY 会为上游请求添加 Bearer 令牌;默认无需任何凭据。
安装前请注意
update_request_status 会写入托管看板,标记为已完成的需求会出现在公开更新日志中。该桥接会把工具调用和结果原样转发给上游服务,因此看板数据会离开本机。若设置了 FEATQ_API_KEY,该密钥会随每次上游请求发送。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Askboard,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

askboard

askboard is a small local bridge to FeatQ's hosted MCP server, which runs a feature-request board for a software product: customers and teammates file requests, vote and comment on them, and the board keeps track of what is new, planned, in progress or done.

The bridge keeps no board data of its own. It serves the upstream server's tool list locally, exactly as captured from the live endpoint, and forwards each tool call upstream, returning the result untouched. One tool in the captured surface writes — update_request_status changes a request's status on the hosted board — and one generates a document: generate_spec drafts an implementation spec for a single request. Everything else reads.

Tools

  • list_requests — list the board's feature requests. Optional filters: status (new, considering, planned, in_progress or done), sort (votes or newest, default votes) and limit (1-50, default 20).
  • get_request — one feature request in full, with its comments. Required: id.
  • get_board_stats — the board at a glance: request counts, vote totals and the top requests. No arguments.
  • get_ranked_requests — the top requests by demand score, excluding ones already marked done. A vote counts as one point and a comment as half a point, scores decay as a request ages on a 90-day scale, and ties go to the newer request. Optional: limit (1-20, default 5).
  • generate_spec — an agent-ready markdown implementation spec for one feature request. Required: id.
  • update_request_status — move a request to a new status (new, considering, planned, in_progress or done). Required: id, status. Marking a request done makes it appear in the public changelog.
  • list_competitor_claims — what watched competitor comparison pages say about this product. Read only; claims are signals, not votes. Optional: state (new, added or dismissed, default new) and limit (1-100, default 25).

Configuration

  • FEATQ_MCP_URL (optional) — override the upstream endpoint. Defaults to https://featq.com/api/mcp. (The override hook is this rebuild's own labelled reconstruction.)
  • FEATQ_API_KEY (optional) — when set, every upstream request carries an Authorization: Bearer <key> header. When it is not set, no auth header is sent. (This forwarding is also a labelled reconstruction; the original surface was captured keyless.)

Forwarding mechanics

On the first tool call the client opens a streamable HTTP session with the upstream: a JSON-RPC initialize request (protocolVersion 2025-03-26, clientInfo name askboard), then a notifications/initialized notification, then the tools/call request carrying the caller's arguments unchanged. When the upstream answers initialize with an Mcp-Session-Id header, that value rides on every later request of the session, which is reused for the life of the process. Replies may arrive as plain JSON or as server-sent events; both are read.

Successful upstream results pass through verbatim, including any isError flag the upstream sets. Failures — a JSON-RPC error, a non-2xx status, an unreadable response, or a request that cannot be completed — come back as an isError result whose text starts with askboard error: (this rendering is this rebuild's own labelled reconstruction).

CLI

Each tool is also a subcommand taking one JSON argument string (omit it for tools that take none):

bash
npx @reneturcios/askboard list_requests '{"status":"planned","sort":"votes"}'npx @reneturcios/askboard get_request '{"id":"req-42"}'npx @reneturcios/askboard get_board_statsnpx @reneturcios/askboard update_request_status '{"id":"req-42","status":"done"}'npx @reneturcios/askboard --version

Exit codes: 0 on success, 1 on an isError result, 2 on a usage error.

MCP server

bash
npx -y @reneturcios/askboard mcp

MCP client config:

json
{  "mcpServers": {    "askboard": {      "command": "npx",      "args": ["-y", "@reneturcios/askboard", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/askboarddocker run --rm ghcr.io/cloudcorprecords/askboard --version

The container's default command is mcp, so the first form is a stdio MCP server; any other arguments reach the CLI normally.

Development

bash
npm installnpm run buildnpm testnpm run dev

The test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.

License

MIT — see LICENSE.

来源:README.md,提交 79e68ce

工具

7

list_requests

List feature requests

List feature requests for the connected FeatQ board.

输入参数sortlimitstatus

get_request

Get feature request

Get one feature request with its comments for the connected FeatQ board.

输入参数id必填

get_board_stats

Get board stats

Get request counts, vote totals, and top requests for the connected FeatQ board.

无需输入参数。

get_ranked_requests

Get ranked feature requests

Get the top feature requests by demand score, excluding requests already marked done. Requests are ranked by demand: each vote counts as one point and each comment as half a point, with scores gradually decaying as a request ages (90-day scale) so recent demand ranks higher, and ties going to the newer request.

输入参数limit

generate_spec

Generate implementation spec

Generate an agent-ready markdown implementation spec for one feature request.

输入参数id必填

update_request_status

Update request status

Update the status of a feature request. Marking a request done makes it appear in the public changelog.

输入参数id必填status必填

list_competitor_claims

List competitor claims

List what watched competitor comparison pages say about this product. Read only. Claims are signals, not votes.

输入参数limitstate

版本历史

1
  1. v0.1.0最新Nov 5, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分