MCP for AI agents

Connect an AI coding agent to Acked and configure an existing project through natural-language requests.

Connect from Codex

Acked is a remote Streamable HTTP MCP server at https://api.acked.dev/mcp. Add it to the Codex CLI and start OAuth login:

codex mcp add acked --url https://api.acked.dev/mcp
codex mcp login acked

Complete Acked sign-in and consent in the browser. Confirm the connection with codex mcp list, or use /mcp inside the Codex terminal UI.

Other clients can connect to the same Streamable HTTP URL when they support OAuth protected-resource discovery, dynamic client registration, PKCE, and a browser redirect.

Authorization

The browser flow requests these scopes:

ScopePurpose
openidIdentifies the signed-in Acked account.
offline_accessAllows the client to refresh its grant.
acked:readReads organizations and product configuration.
acked:writeCreates and changes product configuration.

Acked checks current organization membership and role on every operation. Removing a user or changing a role takes effect without waiting for the OAuth token to expire.

MCP uses interactive OAuth. Acked API keys do not authenticate the MCP endpoint.

Set up a project

Start with a request such as:

Set up my services and alerts in acked.dev. Reuse anything already configured,
connect my existing monitors, and ask before sending a real test alert.

The agent can then:

  1. List the organizations available to your signed-in account.
  2. Inspect schedules, services, inbound integrations, and outbound webhooks.
  3. Create or update product configuration through Acked's complete customer API.
  4. Create a service and return its one-time ingest URL for Dash0, CI, another monitoring product, or an application secret store.
  5. Connect Slack, Discord, Teams, Acked, or an arbitrary HTTPS webhook with event and service filters.
  6. Send a webhook test or real alert after you approve the external request or notification.

For example, “connect our Dash0 monitors to flow through Acked when they alert” lets an agent create or reuse the Acked service, configure Dash0 through its separate Dash0 access, and verify the paging path with your approval.

Direct API automation

Use an Acked API key when a script or monitoring system calls HTTP directly. Alert-ingest keys use /v1/alerts. Full product API keys can call customer /api/* routes and also send X-Acked-Org: org_… for organization-scoped operations.

See Sending alerts for direct ingest authentication, payloads, deduplication, and recovery signals.

Troubleshooting

oauth_required or HTTP 401

This response is expected before login. Run codex mcp login acked and complete the browser flow. An ak_… API key cannot replace OAuth here.

The OAuth callback failed or expired

Run codex mcp login acked again and use the new browser URL. The loopback callback must return to the same machine that is running Codex.

requested resource invalid

Remove stale client configuration and add the exact production resource URL again:

codex mcp logout acked
codex mcp remove acked
codex mcp add acked --url https://api.acked.dev/mcp
codex mcp login acked

insufficient_scope

Request the full supported scope set in a new grant:

codex mcp logout acked
codex mcp login acked --scopes openid,offline_access,acked:read,acked:write

An organization is missing

Ask the client to run list_organizations. The signed-in account must be an active member, and its current role must permit the requested operation.

Protect credentials

Service ingest URLs, API keys, webhook signing secrets, and custom webhook header values are credentials. Creation responses may reveal them once. Store them directly in the destination system or a secret manager, and rotate anything pasted into chat or logs.