MCP · Chat control

Bring the whole ProPR workflow into chat.

Plan the change, direct the agent, inspect the diff, and decide what reaches GitHub. ProPR brings these controls to connected chat clients while agents and execution remain on your infrastructure.

Connect an MCP-enabled ProPR build after operator setup. Check availability and setup requirements.

Compare the two connection routes →
MCP architecture
Your chat clientText requests and structured results
Direct/api/mcpYour instance OAuth
Through Connectmcp.propr.dev/mcpConnect OAuth → managed tunnel
Your ProPR instanceOne tool implementation for both routesPlans · goals · tasks · PR workflow
Architecture illustration. Agents run on your instance; chat receives the requested results.

Feature overview

Two routes. The same controls.

Both routes expose the same tools, resources, and prompts from your instance. Connect adds hosted authentication and routing. The available actions depend on the instance version and your effective permissions.

Direct MCP · Your instance

Connect to your own instance.

https://<instance>/api/mcp

Your chat client reaches your instance directly and authorizes through its standalone OAuth flow. Direct MCP works independently of Connect. You operate the endpoint and make it reachable by the client.

Requests and results bypass Connect. Your chosen chat host still receives the material returned to the conversation.

Run your own ProPR instance →

Connect MCP · Managed tunnel

Choose your installation in the browser.

https://mcp.propr.dev/mcp

Connect OAuth binds a grant to one authorized installation and its instance. The gateway forwards calls through that installation's registered Cloudflare tunnel to the instance's /api/mcp.

Managed tunnels remain Plus-only. Hosted MCP requires a configured gateway, an active tunnel, and a compatible instance that explicitly trusts Connect.

Explore Connect MCP →

From the first question to the reviewed PR.

Plan, publish, start execution, and review through explicit actions. Read findings before choosing fixes, and follow durable operation IDs as work progresses on your instance.

01

Choose the repository and model

Discover the repositories your account can access, their configured branches, and the enabled model choices. Resolve a name to an exact repository, plan, goal, task, or PR. Ambiguous matches need your choice before a change starts.

Example requestList my repositories and available models. Which repository matches ‘payments’?
02

Turn intent into a published plan

Create a draft, gather repository context, generate the plan, and refine its scope. Publishing creates GitHub issues. Starting implementation is a separate action with selected issues and models, optional epic sequencing, and bounded Ultrafix settings.

Example requestDraft a retry plan for acme/payments. Keep the public API unchanged. Show me the revised plan before publishing issues.
03

Start work and steer it

Start a goal explicitly, send further direction, and pause, resume, or cancel it. Pause or resume plan execution; inspect tasks, send follow-ups, or request cancellation. Creating a goal starts work and consumes agent capacity.

Example requestStart the approved goal in acme/payments with the model I selected. Pause it before I change the acceptance criteria.
04

Inspect the evidence

Read progress, task events, changed files, diffs, and available artifacts. Use the saved plan, goal, task, and operation IDs to return to the work. An accepted cancellation request still needs a terminal status before the work is confirmed stopped.

Example requestShow the latest events and diff for the task linked to acme/payments#42. Explain the failure and link the relevant artifact.
05

Review and improve the PR

Request a review, read its findings, and select the exact findings to fix from a specific review. ProPR checks the reviewed head and whether findings were already consumed. Start an Ultrafix loop with an explicit cycle limit. Send a focused follow-up to the existing task. Update the PR branch from its base when it needs current code or conflict resolution.

Example requestReview acme/payments#57. Show the findings, then apply the ones I select. Limit Ultrafix to two cycles.
06

Make the merge decision explicit

The merge tool requires the exact PR and expected head commit, current merge permissions, the merge scope, and passing required checks. A changed head requires another inspection. Auto-merge requires its own explicit authorization.

Example requestInspect acme/payments#57 and its checks. Show the exact head commit and ask me before requesting the merge.

GitHub's existing /merge command updates the PR branch from its base and resolves conflicts. The MCP merge_pull_request tool completes a GitHub merge. They are separate operations. Read the GitHub command semantics.

Actions, context, and reusable requests.

MCP gives a chat application three ways to work with a connected service. Your host decides how these appear in its interface. Read the official MCP explanation.

Tools perform actions

A tool reads progress or makes a specific change. ProPR's tools separate reading a plan, publishing issues, starting execution, reviewing a PR, and merging it. Each action has its own inputs and permission checks.

Resources supply context

Resources expose repository overviews, model catalogs, plans, goals, tasks, diffs, PRs, and artifacts. Their instance-specific links identify records; access still requires authorization. Tools also expose essential context.

Prompts organize a request

Prompt templates cover planning, implementation, starting a goal, checking progress, review and improvement, failure diagnosis, and handoff. Retrieving a template supplies instructions; executing an action requires a separate tool call.

Authorize the app. Bound every action.

OAuth opens in your browser for sign-in and consent. Choose the installation for Connect, review requested scopes and repository restrictions, and revoke the connected app when its access should end.

Effective access combines the grant's scopes and repository restrictions with your current instance permissions, repository access, and ownership checks on every call. Consent cannot grant a permission your account lacks.

Enter secrets through browser authentication and setup. Keep provider keys, access tokens, passwords, and one-time codes out of chat and dictation.

Explicit targets and durable progress

Scopes separate reading, planning, publishing, execution, review, merge, and management. The deploy scope is reserved; no supported MCP deployment tool exists. Mutations need explicit targets; plan edits use a revision precondition and PR merge uses the expected head commit.

ProPR keeps task history and mutation receipts on your instance. MCP returns durable operation IDs and record links so you can resume checking work after a chat disconnects. Reuse the operation key when retrying the same request. Inspect the linked task or GitHub record when a receipt reports an uncertain outcome; an accepted request alone does not prove completion. Closing chat does not request cancellation.

A repository file, tool result, or chat message supplies context. It cannot authorize broader access.

Configure the workflow from chat.

Manage non-secret configuration alongside daily work. Your connection’s tool catalog reflects its instance version, scopes, and current permissions. The capability matrix maps each control to its tool and setup boundary.

Repository and daily controls

Read repository context, search indexed code, and start or stop indexing. Manage TODOs and categories, notifications and preferences, shared repository chat history, and bounded attachment and artifact access. Access checks apply to each repository and record.

Repositories and agents

Create, update, or remove non-secret repository and direct-agent configurations. Set repository branches and policies; choose agent models, labels, and reasoning settings. Create, update, or remove synthetic agents that compose existing models into pools with selection strategies, priorities, and usage thresholds.

New agents start disabled and require secure provider login before use. Adding a repository outside the current grant requires browser consent before configuration changes.

Indexing, provider policy, and execution

Set primary and fallback indexing models, prompts, and enablement. Configure the optional Agent Tank service policy and inspect subscription capacity. Adjust worker concurrency, planning models, review prompts, context models and budgets, reasoning, and bounded Ultrafix defaults.

Manage workflow labels, runtime package settings, and instance membership with the corresponding administrative permissions.

Secure browser and operator setup

Provider and GitHub login, credentials, environment variables, host credential mounts, custom images and install sources, push subscriptions, and OAuth grant expansion remain in secure browser or operator setup. Keep secrets outside chat and dictation.

Release and deployment

No supported MCP deployment or release tool exists. The deploy scope is reserved and grants no deployment operation. Operator deployment remains in the existing technical workflows.

Text and structured data

ProPR's MCP interface is scoped to text and structured data only. Speech input and output belong to the chat host, if it offers them. ProPR adds no MCP speech recognition, audio transport, or audio processing. A client's voice mode may not expose MCP tools.

Choose the route with its data boundary in view.

Direct MCP sends requests and results between your chat host and your instance, bypassing Connect. Through the optional Connect MCP gateway, tool arguments and results pass through Connect. They can contain prompts, source code, repository context, diffs, and artifacts. The gateway processes that traffic; it is not end-to-end encrypted through Connect.

Repository clones, agents, execution, and durable task state remain self-hosted. Content returned to chat also reaches your chat host and any model service it uses, under that host's data policies.

Connect's webhook relay handles full GitHub event payloads. It clears payloads after successful delivery and caches failed deliveries briefly for replay; delivery statistics are retained separately. Webhook retention applies only to webhooks. The MCP gateway forwards requests and results without an intentional application payload store or replay cache. It separately persists authentication, registration, grant, and session metadata plus encrypted credentials. Cloudflare and chat-host logging and retention depend on their configuration and policies.

Read the full trust boundary →

Availability and setup.

You need an MCP-enabled ProPR build and completed operator setup. Direct access requires an endpoint reachable by your chat client and instance OAuth. Connect access also requires a configured gateway, a registered active managed tunnel, and explicit instance trust. Managed tunnels remain Plus-only.

Follow the public operator setup, core/Connect contract, and capability and verification matrix. These links pin the inspected implementation. Core PR #2291 and the MCP epic record technical provenance.

Release availability, public deployment at mcp.propr.dev, and live ChatGPT, Claude, and voice sessions remain unverified. Isolated browser, protocol, and paired core/gateway checks provide implementation evidence; live full-workflow acceptance remains unverified.

ProPR exchanges text and structured data only. Speech belongs to the host. Check the host’s MCP support for the mode you use; no host’s voice mode is guaranteed to expose MCP tools.