@humanagencyp/deploy-mcp
OfficialThe @humanagencyp/deploy-mcp server lets you securely manage and trigger deployments for GitHub-hosted repositories, gating real user releases behind a signed receipt. It never builds code—only activates existing workflow runs. You can:
List deployments (
list_deployments): Retrieve recent workflow runs available for release, with their URLs and states.Get deployment details (
get_deployment): Fetch a specific workflow run's details by ID.Resolve references (
resolve_ref): Convert a branch, tag, or partial commit SHA into a full commit SHA, ensuring deploys target an exact commit.List environments (
list_environments): Enumerate repository environments (e.g., production, staging) using the host's naming.Deploy (
deploy): Dispatch a GitHub Actions workflow to deploy a specific commit to a target environment, optionally on a custom branch. Requires areceipt_id(injected by the gateway) that the pipeline verifies before promoting the build.
Provides tools for resolving branch/tag references to commit SHAs, listing environments, and dispatching deployment workflows on GitHub repositories.
Allows dispatching GitHub Actions workflow runs for deployment, listing recent workflow runs, and retrieving deployment status.
Click on "Install 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., "@@humanagencyp/deploy-mcpwhat's the latest commit on main?"
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.
@humanagencyp/deploy-mcp
Deploy MCP server — make already-built software live, under bounded human authority.
Implements the executor side of the Human Agency Protocol
deploy@0.7 profile. Backend: GitHub Actions.
What it does
Exposes releasing as gated tools so an agent can put software in front of real users only with a signed receipt behind it. It does not decide whether a release is allowed — that is the Gatekeeper's job, and then the pipeline's.
The gated action is a release, not a build. Building harms nobody: a preview at a URL nobody visits has no consequence. Serving it does. So this server never builds — it activates a build that already exists, which means a human can open it and look before approving, and no rebuild can diverge from what was approved.
Tool | Kind | |
| read | builds that can be released, with their URLs |
| read | one build, with URL and state |
| read | branch/tag → commit SHA |
| read | the repo's real environments |
| consequential | make an existing build live |
Related MCP server: GitHub MCP Server
Setup
GITHUB_TOKEN=<fine-grained token>Fine-grained, scoped to one repository:
Permission | Why |
Actions: read & write | dispatch the workflow |
Environments: read | list environments for the authorization wizard |
Contents: read | resolve a branch to a commit |
Not Contents: write. This server releases builds that already exist; it
never authors or builds anything.
Two properties that are easy to lose
1. release declares receipt_id. That declaration is what makes a Suveren
gateway inject the receipt it just minted. Remove it and the pipeline has
nothing to verify — the chain quietly degrades to an unproven release. The tool
refuses to dispatch when the field is missing, so the failure is loud.
2. A build URL is required, not a commit or branch. release rejects
anything that is not a URL. The receipt binds that exact build — the same bytes
a human inspected. Call list_deployments first.
Deployment URLs come from GitHub's Deployments API, which hosts with a GitHub
integration (Vercel, Netlify, Render) populate with environment_url. So this
server never needs the host's credentials — GitHub already knows the address,
and that one value identifies the artifact, shows the human what they are
approving, and is what the host's promote command accepts.
The pipeline must verify
Dispatching is not the control point — anyone with repository write access can dispatch a workflow. The workflow itself must check the receipt before serving anything:
on:
workflow_dispatch:
inputs:
deployment_url: { required: true }
receipt_id: { required: true }
environment: { required: true }
jobs:
verify: # signature, action is a release, freshness,
# and that the receipt BINDS THIS BUILD
...
release:
needs: verify
steps:
- run: vercel promote "${{ inputs.deployment_url }}" --token "$VERCEL_TOKEN"Nothing is built here. promote re-points production at bytes that already
exist, so what goes live is exactly what was inspected.
on:
workflow_dispatch:
inputs:
sha: { required: true }
receipt_id: { required: true }
environment: { required: true }
jobs:
verify: # signature, scope, commit binding, freshness
...
deploy:
needs: verify
steps:
- uses: actions/checkout@v6
with:
ref: ${{ inputs.sha }} # the APPROVED commit, not the branch headBuilding the branch head instead of inputs.sha means a receipt for one commit
can ship another — and the receipt still verifies, certifying something false.
That is worse than having no receipt at all.
Limits, stated plainly
This server dispatches; it does not hold the deploy credentials the pipeline uses. The boundary is the receipt requirement, not the whole path.
GitHub returns no run id from a dispatch, so the run is matched by workflow and creation time. Best-effort: it reports no run rather than guessing wrong.
Licence
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAquality-maintenanceConnects AI assistants to GitHub Actions workflows to monitor CI/CD pipelines, view run logs, diagnose failures, and optionally trigger or manage workflows with granular permission controls.Last updated101
- Alicense-qualityBmaintenanceEnables AI agents to manage GitHub repositories, branches, issues, pull requests, releases, and actions through natural language.Last updated2005MIT
- Flicense-qualityBmaintenanceEnables AI assistants to perform GitHub operations such as creating repositories, issues, pull requests, and more through natural language.Last updated
- AlicenseAqualityBmaintenanceEnables AI coding agents to orchestrate the full software development lifecycle on GitHub, including planning, issue creation, code review, security triage, and release readiness checks.Last updated132341MIT
Related MCP Connectors
Preflight, approve, and prove consequential agent actions with signed evidence and x402 tools.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
One PAT, any MCP agent: Vercel, GitHub, Cloudflare, Supabase, GCP — unified dev infra gateway.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/humanagencyprotocol/hap-deploy-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server