Flow Relay MCP Server
Summary: This MCP server gives an AI client project-scoped access to Flow Relay's activity analytics — generating AI handoffs, insights, release notes and Q&A over your connected engineering tools, plus browsing events/integrations and posting results to Discord.
Note: the README advertises 40 tools and 52 sources, but this schema exposes 18 tools and 22 source ids — the work-item/plan/RAID/portfolio tools described in the README are not present here.
Orient & scope:
get_workspace_context,list_projects,set_active_project(set once so later calls can omitproject_id).Discover data:
list_integrations(connected sources + health),list_untracked_resources(unassigned repos/channels/boards),list_events(recent raw activity, filter by source),list_filter_options(real filter values — call before anyfiltersargument).Generate AI artifacts (costs credits, synchronous):
generate_handoff— summary of recent activity, decisions, open questions, next steps.generate_correlation_insight— links/patterns across different sources.generate_onboarding_brief— new-hire guide (key people, decisions, pitfalls;new_member_role,focus_area).generate_architecture_insight— architecture trade-offs/risks (requires a code source).generate_release_notes— release notes or PR description (3 credits).
Read before spending:
list_handoffs,list_insights,list_digests— browse existing artifacts and scheduled digests first.Ask questions:
ask_project— grounded answer from indexed codebase, baselines and last 14 days of activity (2 credits).Filtering: every generate tool accepts
sources(22 ids likegithub,jira,slack,sentry) and per-sourcefilters(projects,eventTypes,branchesfor git,prioritiesfor ticket/alert sources); some acceptlookback_hours/lookback_daysandmax_events.Share to Discord:
discord_list_channels, thendiscord_send_messageto post text, attach a handoff/insight as.md, or send the latest artifact kind.Not available here: work items, RAID register, earned value, portfolio/forecast, what-if planning, approvals, templates and automations — all described in the README but absent from this schema.
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., "@Flow Relay MCP Server Generate a handoff for the active project"
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.
Flow Relay MCP Server
Flow Relay MCP Server adds project-aware, multi-tenant Flow Relay tools to MCP clients such as Claude Desktop, Claude Code, Cursor and Windsurf.
It connects to Flow Relay API v1 using an API key and supports:
Project scope (personal project or organization project). Every handoff and AI insight is tied to a project. Events and integrations remain user-level.
Package
Name: @flowrelay/mcp-server
Version: 1.8.1
Related MCP server: Automatisch MCP Server
Supported Sources (52 Integrations)
Flow Relay MCP Server supports 52 integration sources across the entire engineering lifecycle:
Code & Version Control:
github,gitlab,bitbucket,azure_devops(support branch filtering)CI/CD & Deployment:
buildkite,circleci,vercel,netlify,render,railway,cloudflare_pages,herokuIssue Tracking & Project Management:
linear,jira,clickup,monday_com,shortcut,asanaObservability & Incidents:
sentry,datadog,pagerduty,incident_io,grafana,alertmanager,new_relicProduct Analytics:
posthogSecurity & Code Quality:
snyk,sonarqubeFeature Flags & Infrastructure:
launchdarkly,hcp_terraform,pulumiMeetings & Collaboration:
fireflies,zoom,google_meet,microsoft_teams_meetings,fathom,google_calendar,miroCustomer Support:
intercom,zendesk,jira_service_managementCRM:
hubspot,salesforceCommunication & Email:
slack,discord,microsoft_teams,microsoft_outlook,gmailDocuments & Design:
notion,confluence,google_drive,figma
What Is Included
The server currently exposes 40 tools, 3 prompts and 1 resource template. Every tool carries the four MCP annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint): the list_* and get_* tools are read-only and idempotent, the generate_* tools (including generate_plan_review), ask_project, create_work_item, create_raid_entry, resolve_suggestion, decide_approval, request_change and discord_send_message are non-idempotent (each call spends credits, creates an item or an entry, files a request, decides one or posts a message), update_work_item and link_evidence write but are idempotent (the same values twice leave the item unchanged) and delete_work_item is the one destructive tool (destructiveHint: true, so clients can ask before it runs; the deletion can be restored from the change history).
get_workspace_context: Show current Flow Relay context (account mode, organizations count, accessible projects count, active project scope and caller role).list_projects: List every accessible project (personal and organization) with id, scope, role and the prefix of its work item keys.set_active_project: Set or clear the active project for subsequent tool calls soproject_idcan be omitted.list_filter_options: List selectable resources (projects/repos/channels/boards), branches, event types and priorities per source for a project. Call this before generating so handoff and insight filters use real values instead of guesses. Also reports whether Figma visual context is selectable (requires Global processing region).list_handoffs: List handoffs for the active project or across accessible projects. Filter by status (active,archivedorall). Outputs server-rendered Markdown.generate_handoff: Generate an async handoff with automated polling until completion. Requires active project or explicitproject_id. Accepts per-sourcefilters(projects,eventTypes,branches,priorities).generate_correlation_insight: Generate a cross-source correlation insight. Accepts per-sourcefilters.generate_onboarding_brief: Generate an onboarding brief insight. Accepts per-sourcefilters.generate_architecture_insight: Generate an architecture insight. Accepts per-sourcefilters.generate_release_notes: Turn a project's merged work into release notes or a PR description (style: 'release_notes' | 'pr_description'). Accepts code source, repo and per-sourcefilters. Costs 3 credits per run.ask_project: Ask one question about a project and get an answer grounded in its indexed codebase, baselines and last 14 days of activity. Answers synchronously and cites used events (ev:...). Costs 2 credits per question.list_digests: Browse scheduled activity digests of a project, newest first. Reading is free.list_insights: List project AI insights by kind and status.list_integrations: List connected integrations in personal or project scope.list_events: Browse recent events in personal or project scope.list_untracked_resources: List event-producing resources not scoped to any project (useful for discovering unassigned activity).discord_list_channels: List text channels in connected Discord servers.discord_send_message: Send a Discord message – plain text, or attach a rendered Markdown artifact (last_handoff,last_correlation,last_onboarding,last_architectureorlast_release_notes) as a.mdfile.list_my_work: List the work items assigned to you across every accessible project (open items plus those finished in the last 7 days) with status, progress and dates.list_work_items: List the tasks and milestones of a project plan with key, status, progress, dates and assignees. Filter by status or to your own items (mine); paginate withcursor.get_work_item: Read one work item by key (such asFR-12) or id: description, dates, assignees, dependencies, linked evidence and comment count.create_work_item: Create a task or milestone, optionally nested under a parent, with a duration (3d,2w,4h), a deadline andassign_to_me.update_work_item: Change status, progress, title, description, priority, the blocked flag, duration or deadline of an item.list_suggestions: List the pending suggestions of a project you can act on: status changes proposed from linked activity (an opened or merged pull request, a deploy), new items from meeting action items, dependencies from tracker links and activity suggested as evidence. Suggestions routed to you are marked; nothing changes until someone accepts one in Flow Relay.link_evidence: Attach an https link (pull request, commit, build, deploy, incident, document) to an item as evidence, with an optional title, kind and time.list_raid: Read the RAID register of a project: risks, assumptions, issues, decisions and dependencies with their score (probability times impact) and response. Filter by type and status; entries that are not closed by default.get_earned_value: Read the cost picture of a project plan at its status date – planned and actual cost, planned value, earned value, variances, SPI, CPI, TCPI and the estimates at completion – against a baseline. Project managers only, on plans that include costs.get_portfolio: Read the portfolio of an organization – every project you can open with its progress, forecast finish, next milestone, open risks and health (on track, at risk or off track, computed every night from the plan and the build, deploy and incident signals, or set by hand by a project manager) – to see which projects need attention. Business plan and above.get_forecast: Forecast when a project plan finishes by simulating it thousands of times – the finish of the project and of each milestone as the dates by which half, four out of five and nineteen out of twenty of the runs are done, the chance of meeting the target or a deadline and the items most often on the critical path. Business plan and above.plan_whatif: Ask a what-if question about a plan in words (for example, what if the payment integration takes three weeks longer?): the model turns it into changes to the work and the scheduler computes the new finish dates. Nothing is saved. Costs 5 credits per question.list_automations: List the automation rules of a plan as sentences, with how often they ran and how the last run went. Team plan and above.list_templates: List the templates saved for a plan, with the id to give toapply_template.apply_template: Add a saved template to a plan, at the top level or under an item key. Project managers only.list_approvals: List the change requests of a plan: what was asked in plain language, who asked, who decided and what they said. Business plan and above, organization projects.request_change: Ask for a change to an item (status, progress, priority, blocked flag, duration or deadline) that a second person must approve. It only files the request; approving applies it. Business plan and above, organization projects.resolve_suggestion: Accept or dismiss one pending suggestion fromlist_suggestions. Accepting applies it to the plan as the key owner.create_raid_entry: Add a risk, assumption, issue, decision or dependency to the register of a plan, with optional probability and impact from 1 to 5, response and due date.delete_work_item: Delete a work item and everything under it. One batch in the change history, so a project manager can restore it. Contributors can delete only items they created.decide_approval: Approve, reject or withdraw a change request fromlist_approvals. A request needs a second person; only its author can withdraw it.generate_plan_review: Write a status report for a project plan (progress, concerns, milestone outlook, suggested register entries, next steps) from numbers the scheduler computed and the last 14 days of linked activity. Returns Markdown. Costs 5 credits per run.
Work item tools, resolve_suggestion, create_raid_entry, delete_work_item, decide_approval, list_raid, get_earned_value, get_portfolio, get_forecast, list_automations, list_templates, apply_template, list_approvals and request_change cost no credits. Dates are wall-clock times in the plan time zone (YYYY-MM-DDTHH:mm), which every reply names. Contributors can create items when the project allows it, assign only themselves and update the items assigned to them or created by them; schedule changes may need a project manager. A commit message, branch name or pull request title that mentions an item key (FR-12) is linked to that item as evidence. Items mirrored from Jira, Linear or GitHub Issues also answer to the key the tracker gave them (PAY-123, acme/web#42).
Prompts and resources
handoff_for_branch(argumentbranch): finds the git sources that carry the branch and generates a handoff limited to it.onboard_me(argumentsrole, optionalfocus): reads the existing insights first and generates an onboarding brief only when none fits.weekly_status: writes a short status update from the plan, the register and the last days of activity.Resource template
flowrelay://projects/{project_id}/handoffs/latest: the latest active handoff of a project as Markdown.
Filter Dimensions
When calling generate_handoff, insight tools or generate_release_notes, per-source filters accept:
projects: Resource ids fromlist_filter_options[source].projects(repos, channels, boards, spaces, services, sites, projects).eventTypes: Event-type values fromlist_filter_options(e.g.push,issue_created,workflow_job).branches: Git branch names (main,develop) – git sources only (github,gitlab,bitbucket,azure_devops).priorities: Priority values – supported ongithub(security alerts),jira,jira_service_management,linear,sentry,pagerduty,incident_io,clickup,zendesk,snyk,grafana,alertmanager,new_relic,hubspotandsalesforce.
Environment Variables
Required:
FLOWRELAY_API_KEY: Your Flow Relay API key (fr_...).
Optional:
FLOWRELAY_PROJECT_ID: Initial active project context for project-aware tools.FLOWRELAY_BASE_URL: Base URL of the Flow Relay API (defaults tohttps://www.flowrelay.it).
Quick Start (Claude Desktop)
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"flowrelay": {
"command": "npx",
"args": ["-y", "@flowrelay/mcp-server"],
"env": {
"FLOWRELAY_API_KEY": "fr_your_api_key_here",
"FLOWRELAY_PROJECT_ID": "your_project_id"
}
}
}
}Multi-Tenant Behavior
Every handoff and insight is tied to a project; you need an active project (
set_active_project) orproject_id. Events and integrations remain user-level.You can select a project during the MCP session with
set_active_project.You can override scope per call by passing
project_idwhere supported.
Recommended flow:
Call
get_workspace_contextCall
list_projectsCall
set_active_projectCall
list_filter_optionsto inspect selectable resourcesRun handoff, insight, Q&A and query tools in the selected scope
Local Development
From this folder:
npm install
npm run build
npm testnpm test runs the suite in tests/ with Node's built-in runner: it drives the server through an in-memory MCP client against a stub Flow Relay API, so it needs no API key and no network.
Create a tarball package:
npm packTroubleshooting
Error: Missing
FLOWRELAY_API_KEYSet
FLOWRELAY_API_KEYin your MCP client configuration.
Project not found or inaccessible
Run
list_projectsand use one of the returned IDs.
No events or handoffs returned
Verify active scope and data availability in that scope.
Related Docs
Documentation & Platform: https://www.flowrelay.it
MCP Documentation: https://www.flowrelay.it/docs/mcp
License
Copyright © 2026 Adriano Sorbello (@atrisorb). All rights reserved.
Distributed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). See LICENSE for more information.
Available Tools
18 toolsask_projectA
Ask one question about a project and get an answer grounded in its indexed codebase, connected baselines and last 14 days of activity. Answers synchronously – there is no job to poll. Costs 2 credits per question, so prefer list_handoffs / list_insights when an existing artifact already answers it.
Inputs: question (required), project_id.
discord_list_channelsA
List the text channels in the Discord server connected to this account, each with its id. Call this to get a channel_id before discord_send_message.
Inputs: no named parameters.
discord_send_messageA
Send to a Discord channel in your connected server. Provide exactly one of: content (inline text); handoff_id or insight_id (sends that artifact, rendered to Markdown, as a .md file attachment); or artifact (last_handoff / last_correlation / last_onboarding / last_architecture / last_release_notes, with project_id) to send the latest active artifact of that kind.
Inputs: channel_id (required), content, artifact, handoff_id, +2 more.
generate_architecture_insightA
Generate an architecture insight: trade-offs, risks, patterns and recommendations inferred from the project's code activity (requires a connected code source – github, gitlab, bitbucket or azure_devops). This is the deepest and most expensive insight (it runs extended reasoning). Use for technical review of architectural direction. Runs synchronously and returns Markdown. Consumes credits, charged once on success. Call list_filter_options before using filters.
Inputs: project_id (required), filters, sources, max_events, +2 more.
generate_correlation_insightA
Generate a cross-source correlation insight: finds related events across different sources (e.g. a Slack thread, a Jira ticket and the PR that resolved it) and surfaces the links, patterns and open threads. Use when the user wants to understand how activity connects across tools. Runs synchronously and returns Markdown. Consumes credits, charged once on success. Call list_filter_options before using filters.
Inputs: project_id (required), filters, sources, max_events, +1 more.
generate_handoffA
Generate a project handoff: an AI summary of recent activity, key changes, decisions, open questions and next steps for a project. Runs synchronously – waits for completion (tens of seconds) and returns the finished Markdown. Requires an active project (set_active_project) or an explicit project_id from list_projects. Consumes credits from the user's plan, charged once on success – prefer list_handoffs to read an existing one before generating a new one. To scope it, pass sources and/or filters (call list_filter_options first for valid values); omit both to use the project's saved scope preferences.
Inputs: filters, sources, project_id.
generate_onboarding_briefA
Generate an onboarding brief: a getting-started guide for someone new to the project – key people, key decisions, pitfalls and recommended reading drawn from recent activity. Use when a new team member needs to get up to speed. Runs synchronously and returns Markdown. Consumes credits, charged once on success. Call list_filter_options before using filters.
Inputs: project_id (required), filters, sources, focus_area, +3 more.
generate_release_notesA
Generate release notes or a PR description from recent code activity (commits, PRs, builds). Runs synchronously and returns Markdown. Consumes 3 credits on success.
Inputs: project_id (required), repo, style, source, +1 more.
get_workspace_contextA
Show the current Flow Relay context: personal vs business mode, number of organizations and accessible projects, the active project scope and the caller's role. Good first call to orient yourself before other tools.
Inputs: no named parameters.
list_digestsB
List past scheduled activity digests for a project.
Inputs: project_id (required), limit.
list_eventsA
List recent raw context events (individual pieces of tracked activity: a push, a message, an issue update) newest first. Use it to inspect the underlying signal a generation would draw on, or to check whether a source is producing data. With a project scope it is limited to that project's bound resources.
Inputs: limit, source, project_id.
list_filter_optionsA
List the real per-source filter values (resources, branches, event types, priorities) available for a project. Call this BEFORE generate_handoff or any generate_*_insight so the "filters" argument uses real values instead of guesses. Pass a resource id into filters[source].projects, a branch name into .branches, an event type into .eventTypes, a priority into .priorities.
Inputs: project_id.
list_handoffsA
List existing handoffs (newest first) with their full content, across all accessible projects or one project. Use this to read what has already been generated before spending credits on a new generate_handoff. Each row's id can be sent to Discord via discord_send_message.
Inputs: limit, status, project_id.
list_insightsA
List existing insights for a project (newest first) with their content. Use this to read what has already been generated before spending credits on a new generate_*_insight. Each row's id can be sent to Discord via discord_send_message.
Inputs: project_id (required), kind, limit, status.
list_integrationsA
List connected integrations. With a project scope it returns the resources bound to that project plus their health (connection status, provider coverage); without one it returns the sources the API key owner has connected. Use it to check what data a generation can draw on.
Inputs: project_id.
list_projectsA
List every project the API key can access (personal and organization), each with its id, scope and the caller's role. The id returned here is what you pass as project_id to the generate_* and list tools – start here whenever you need one.
Inputs: no named parameters.
list_untracked_resourcesA
List active resources (repos, channels, boards) that produced events recently but are not yet assigned to any project. Use it to spot data the user connected but has not organized into a project yet – mapping them (in the web dashboard) makes their events available to generations.
Inputs: no named parameters.
set_active_projectA
Set the active project so later tools can omit project_id (a convenience for a multi-step session on one project). Set it once from a list_projects id, then call generate_handoff / list_events / etc. without repeating project_id. Not required if you always pass project_id explicitly.
Inputs: clear, project_id.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 18 tools
Each tool has a clearly distinct purpose, with separate verbs (list, generate, set, get, ask, discord_list, discord_send) and noun targets (projects, resources, handoffs, events, insights, etc.). There is no overlap that would confuse an agent.
All tool names use consistent lower_snake_case with a clear verb_noun pattern. The discord_ prefix is a logical grouping and does not break consistency. No mixing of conventions.
18 tools is well-scoped for a server providing project management, AI-generated summaries, insights, and Discord integration. The count is balanced and each tool serves a necessary function without bloat.
The tool surface covers core workflows: context retrieval, artifact generation, listing, filtering, and Discord output. Minor gaps exist (no tool to manage untracked resources or update project settings), but these do not prevent agents from accomplishing primary tasks.
Maintenance
Related MCP Connectors
Create and edit flows, read responses, and reply to users — from your AI assistant.
Build and run agents and automations across hundreds of apps using natural language.
Connect AI assistants to Stellary projects, boards, documents, and governed agent workflows.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Related MCP Servers
AlicenseBqualityFmaintenanceConnects AI assistants (Claude, Cursor, etc.) directly to the HiveFlow automation platform, allowing them to create, manage, and execute automation flows through natural language commands.96 npm4MIT- AlicenseBqualityDmaintenanceEnables AI assistants to interact with Automatisch workflow automation platform, allowing them to create, manage, and monitor workflows, connections, and executions through natural language commands.104 npm7MIT
- AlicenseAqualityDmaintenanceEnables AI systems like Claude and Cursor to directly manage Railway projects, deployments, services, environment variables, and monitor logs through natural language commands.923 npmMIT
- AlicenseAqualityDmaintenanceEnables AI assistants to manage Featureflow feature flags, including creating and updating features, controlling feature states across environments, and managing projects, environments, and targeting rules through natural language.2218 npmMIT