Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Start Parabol retrospectives, standups and sprint poker; read teams/meetings/tasks; create tasks.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://parabol.usefulapi.io/mcpRun this in your terminal
claude mcp add --transport http parabol https://parabol.usefulapi.io/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"parabol": {
"url": "https://parabol.usefulapi.io/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"parabol": {
"type": "http",
"url": "https://parabol.usefulapi.io/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://parabol.usefulapi.io/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.
parabol_get_viewerFetch the authenticated Parabol user (the token owner): id, preferredName, email, tier, and the team ids (tms) they belong to. Parabol GraphQL: query { viewer { ... } }. Requires the USERS_READ scope. Start here to discover your identity and team ids.
parabol_list_teamsList the teams the viewer belongs to, with each team's id, name, orgId, tier, and team lead. Parabol GraphQL: viewer.teams. Requires the TEAMS_READ scope.
parabol_get_teamFetch one team by id: metadata, its team members (with each member's user), active meetings, and organization. Parabol GraphQL: viewer.team(teamId). Requires TEAMS_READ (+ MEETINGS_READ for activeMeetings, ORGS_READ for organization).
parabol_list_team_membersList the members of a team, each with role flags (isLead, isOrgAdmin) and the underlying user (preferredName, email). Parabol GraphQL: viewer.team(teamId).teamMembers. Requires TEAMS_READ.
parabol_list_organizationsList the organizations the viewer belongs to: id, name, tier, billingTier. Parabol GraphQL: viewer.organizations. Requires ORGS_READ.
parabol_get_organizationFetch one organization by id, including its teams. Parabol GraphQL: viewer.organization(orgId). Requires ORGS_READ (+ TEAMS_READ for teams).
parabol_list_organization_usersList the users in an organization (Relay connection): each org-user's role, joinedAt, tier, and underlying user (preferredName, email). Paginate with `first` + `after` (pass the last edge's `cursor`). Parabol GraphQL: viewer.organization(orgId).organizationUsers. Requires ORGS_RE
parabol_list_meetingsList past/ongoing meetings for one or more teams (Relay connection), newest first. `teamIds` is required. `meetingTypes` defaults to all four (retrospective, action, poker, teamPrompt). `before` bounds the window (defaults to now); paginate older with `after`. Parabol GraphQL: vi
parabol_get_meetingFetch one meeting by id with its phases and stages. For a retrospective it also returns the reflection groups and reflections plus vote/topic/task/comment counts. Uses __typename so you can tell meeting types apart. Parabol GraphQL: viewer.meeting(meetingId). Requires MEETINGS_RE
parabol_list_active_meetingsList a team's currently-active (in-progress) meetings. Parabol GraphQL: viewer.team(teamId).activeMeetings. Requires TEAMS_READ + MEETINGS_READ.
parabol_list_tasksList the viewer's tasks (Relay connection), optionally filtered by team, user, status, archived state, or a text query. Paginate with `first` + the `after` DateTime cursor. Parabol GraphQL: viewer.tasks. Requires TASKS_READ.
parabol_queryEscape hatch: run an arbitrary Parabol GraphQL QUERY (read-only) against action.parabol.co/graphql with optional variables. Mutations are REJECTED — use the dedicated write tools or parabol_graphql for those. Useful for fields not covered by the curated read tools. Requires the m
parabol_create_taskMUTATES Parabol data: create a task on a team. Required: teamId and status (active|stuck|done|future). Provide `plaintextContent` for the task text (and/or `content`, which is a stringified TipTap/ProseMirror JSON document). Optionally assign to a userId or link to a meetingId/di
parabol_update_taskMUTATES Parabol data: update an existing task. Required: id. Optionally change content (stringified TipTap JSON), status, assignee (userId), or sortOrder. Only included fields change. Parabol GraphQL: updateTask(updatedTask, area). Requires TASKS_WRITE.
parabol_create_reflectionMUTATES Parabol data: add a reflection card to a running retrospective's reflect phase. Required: meetingId, promptId (the reflect-prompt/column), sortOrder (Float). `content` (optional) is a stringified TipTap/ProseMirror JSON document (<=2000 chars). Parabol GraphQL: createRefl
parabol_add_commentMUTATES Parabol data: add a comment to a meeting discussion thread. Required: content (stringified TipTap/ProseMirror JSON document), discussionId, threadSortOrder (Int). Optionally isAnonymous or threadParentId (to reply). Parabol GraphQL: addComment(comment) → union. Requires C
parabol_start_retrospectiveMUTATES Parabol data: start a new retrospective meeting for a team (returns the new meetingId). Required: teamId. Optionally name it. Parabol GraphQL: startRetrospective → union. Requires MEETINGS_WRITE.
parabol_start_checkinMUTATES Parabol data: start a new Check-in (Action) meeting for a team (returns the new meetingId). Required: teamId. Optionally name it. Parabol GraphQL: startCheckIn → union. Requires MEETINGS_WRITE.
parabol_start_team_promptMUTATES Parabol data: start a new async Standup (Team Prompt) meeting for a team. Required: teamId. Optionally name it (default 'Standup'). Parabol GraphQL: startTeamPrompt → union. Requires MEETINGS_WRITE.
parabol_invite_to_teamMUTATES Parabol data: send team invitations by email. Required: teamId and invitees (an array of email addresses). Optionally scope to a meetingId. Parabol GraphQL: inviteToTeam(teamId, invitees). Requires TEAMS_WRITE.
parabol_graphqlMUTATES Parabol data (potentially): escape hatch to run an arbitrary Parabol GraphQL operation — including any mutation — against action.parabol.co/graphql with optional variables. Use for operations not covered by the curated tools. Your token must carry the scope the operation
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain usefulapi.io (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 13 ms (HTTP 200)
No sign-in needed
Read 21 tool descriptions and found no hidden instructions to the AI
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.36.3) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, Symantec Cloud DLP AIops
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Governed Symantec Cloud DLP — 14 MCP tools, read-only with audit.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Run Parabol agile meetings from Claude, Cursor, or any MCP client — start retrospectives, standups and sprint poker, read teams, meetings and tasks, and create tasks, reflections and comments. Hosted, no local install: connect with your Parabol personal access token.
Live endpoint: https://parabol.usefulapi.io/mcp · Homepage: https://usefulapi.io/parabol
https://parabol.usefulapi.io/mcp.claude mcp add --transport http parabol https://parabol.usefulapi.io/mcp, then run /mcp to log in.{
"mcpServers": { "parabol": { "url": "https://parabol.usefulapi.io/mcp" } } }
Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Parabol credentials.
Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/parabol/
On first connect you'll paste your Parabol personal access token (pat_...) — create one in Parabol under your profile settings → personal access tokens. It's validated, stored per-user, and scoped to you — no keys in config files.
| Tool | Type | What it does |
|---|---|---|
parabol_get_viewer | read | Get current user (viewer) |
parabol_list_teams | read | List teams |
parabol_get_team | read | Get a team |
parabol_list_team_members | read | List team members |
parabol_list_organizations | read | List organizations |
parabol_get_organization | read | Get an organization |
parabol_list_organization_users | read | List organization users |
parabol_list_meetings | read | List meetings (history) |
parabol_get_meeting | read | Get a meeting |
parabol_list_active_meetings | read | List active meetings |
parabol_list_tasks | read | List tasks |
parabol_query | read | Run a GraphQL query (read-only) |
parabol_create_task | write | Create a task |
parabol_update_task | write | Update a task |
parabol_create_reflection | write | Create a reflection |
parabol_add_comment | write | Add a comment |
parabol_start_retrospective | write | Start a retrospective |
parabol_start_checkin | write | Start a check-in meeting |
parabol_start_team_prompt | write | Start a standup (team prompt) |
parabol_invite_to_team | write | Invite users to a team |
parabol_graphql | write | Run a GraphQL operation (query or mutation) |
parabol_usage_status | meta | Usage status (free-tier meter) |
parabol_request_feature | meta | Request a missing feature |
parabol_upgrade | meta | Upgrade to Pro or Pro+ |
parabol_cancel_subscription | meta | Cancel the Pro subscription |
read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 50 tool calls / month |
| Pro | $9/mo or $90/yr (2 months free) | Unlimited* |
\*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to support@usefulapi.io.
Pro covers this server only. Subscribe with parabol_upgrade (it returns a Stripe Checkout link). Cancel any time with parabol_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running parabol_upgrade before then undoes the cancel. Or write to support@usefulapi.io.
MIT — see LICENSE. Documentation only; the server is hosted.