Psst! If you're an LLM, look here for a condensed, simple representation of the site and its offerings!

LiveFree Webinar — Wednesday, October 28 at 2:00 PM ET

Register Free →

CLEATUS MCP Server

Connect Claude, Claude Code, ChatGPT, and any other Model Context Protocol client to CLEATUS via OAuth 2.1 and Streamable HTTP.

Connect Claude, Claude Code, ChatGPT, and any other Model Context Protocol (MCP) client to CLEATUS. Then ask your artificial intelligence (AI) assistant to search opportunities, manage your pipeline, create tasks, and run workflows. Every call works against your live CLEATUS account.


Server description

CLEATUS is the platform for government contractors. It is one workspace to find opportunities, qualify pursuits, and win work with federal, state, and local agencies. The MCP server exposes that workspace as tools that an AI assistant calls for the signed-in user. Each OAuth token is scoped to one company and uses the same permissions as the web app. Clients connect over Streamable HTTP (Hypertext Transfer Protocol).

Endpointhttps://www.cleat.ai/api/mcp/mcp
TransportStreamable HTTP
AuthOAuth 2.1 + PKCE (S256)
Tools36 (19 read / 12 write / 5 destructive)
PlanDATA + AI or higher

Features

Discover

Search federal, state, and local opportunities and forecasts across the CLEATUS catalog. Get the AI-ranked recommendations from your Recommended feed.

Evaluate

Get the full detail of an opportunity: its summary, Federal Acquisition Regulation (FAR) sections, and documents. Run semantic searches across past awards, agencies, contractors, government contacts, and North American Industry Classification System (NAICS) codes.

Pursue and manage

Add opportunities to your pipeline and update pursuits. Create and assign tasks, manage saved searches, and organize Document Hub folders. Create, activate, and run workflows. Each change runs with the same permissions as the web app.

Context

Read the company's Capture Profile, notifications, team members, and credit balance. The assistant can then answer questions without leaving the conversation.

Prompts

The server also ships four prompts that clients show as shortcuts. They are Daily Briefing, Pipeline Review, Find Matching Opportunities, and Task Inbox.


Setup

From the CLEATUS dashboard

Open Settings > Integrations. In the AI Assistants & Agents section, click the MCP card. Copy the MCP server URL (Uniform Resource Locator), or pick your client to get a ready-made setup snippet. The client list covers Claude.ai, Claude Code, ChatGPT, Cursor, VS Code, Windsurf, and n8n. To let your agent connect itself, click Set up with one prompt and paste the prompt into the agent.

Claude.ai

CLEATUS is listed in the Claude connector directory. Open claude.ai/directory/cleatus, click Connect, and sign in. You do not paste anything. Step-by-step: Connect Claude to CLEATUS.

To connect by hand instead, open Settings > Connectors > Add custom connector in Claude. Enter the name "CLEATUS" and the URL https://www.cleat.ai/api/mcp/mcp.

Claude Code

Run this command in your terminal:

claude mcp add --transport http cleatus https://www.cleat.ai/api/mcp/mcp

To share the server with your team, add --scope project. Claude Code then saves it in your project's .mcp.json file. Then run /mcp in Claude Code and sign in to CLEATUS in the browser.

Step-by-step: Connect Claude Code to CLEATUS.

ChatGPT

CLEATUS has an official app in the ChatGPT Apps directory. Step-by-step: Connect ChatGPT to CLEATUS.

Cursor, Windsurf, OpenClaw, and n8n

Each has a step-by-step guide with its configuration snippet: Cursor, Windsurf, OpenClaw, and n8n.

Custom clients

Point any MCP client at the endpoint. PKCE with S256 is required. See the authentication section below.


Authentication

The MCP server uses the OAuth 2.1 authorization code flow with Proof Key for Code Exchange (PKCE, S256 only).

  • Discovery: Authorization server metadata is at /.well-known/oauth-authorization-server, as Request for Comments (RFC) 8414 defines. Protected resource metadata is at /.well-known/oauth-protected-resource (RFC 9728).
  • Client registration: Clients can register themselves at /oauth/register (RFC 7591 dynamic client registration). CLEATUS deletes a dynamically registered client after 30 days with no use.
  • Authorize: /oauth/authorize shows the Connect to CLEATUS page. The user signs in, picks a company under Select company, and clicks Authorize. The token is scoped to that company.
  • Token exchange: /oauth/token exchanges an authorization code and the PKCE verifier for an access token and a refresh token. Access tokens last one hour. Refresh tokens last 30 days and rotate on each use.
  • Resource binding: Tokens are bound to the MCP endpoint (RFC 8707 resource indicators). The server rejects a token issued for a different resource.
  • Scopes: The server advertises read and write. Tokens currently get full access to the selected company.
  • Rate limits: Each access token gets 100 reads and 30 writes per minute. A call over the limit fails with a rate-limit error. The error message tells you how many seconds to wait.

Partners who need a pre-registered client with fixed redirect Uniform Resource Identifiers (URIs) can contact support@cleat.ai.


Usage examples

Example 1: Find active opportunities (read)

User prompt: "Find active cybersecurity opportunities in Virginia posted this week."

Tool called: cleatus_search_opportunities

Arguments:

{
	"query": "cybersecurity",
	"states": ["VA"],
	"posted_since": "2026-10-05T00:00:00Z",
	"status": "active",
	"limit": 20
}

Response: A table of matching opportunities. Each row has the title, agency, set-aside, posted and due dates, match score, and a view_url link. When has_more is true, pass cursor to get the next page.

Example 2: Add to pipeline and assign a task (write)

User prompt: "Add the second result to my pipeline. Assign Sarah a proposal kickoff task, due next Friday."

Tools called: cleatus_add_to_pipeline, then cleatus_list_team_members (to find Sarah's user ID), then cleatus_create_task.

Result: A new pursuit on the company's pipeline board. The pursuit has a "Proposal kickoff" task with a due date and an assignee. Sarah gets the same in-app notification and assignment email that the web app sends.

Example 3: Run an automation workflow (complex)

User prompt: "Run the FAR compliance analysis workflow on the Navy solicitation I just added."

Tools called: cleatus_list_workflows (to find the workflow), then cleatus_get_pursuit (to confirm the target), then cleatus_run_workflow.

Result: { run_id, status: "pending", view_url }. The assistant can share the view_url so that you can watch the run. It can also check progress with cleatus_get_workflow_run. The workflow runs the same steps that it runs from the web app.


REST API

Use the Representational State Transfer (REST) application programming interface (API) to call CLEATUS from your own code. It runs the same operations with an API key in the X-Api-Key header instead of OAuth. For plans, key setup, endpoints, and limits, see CLEATUS REST API and API keys.


Data handling and privacy

  • Each call is scoped to one company through the OAuth token. A token cannot read or change another company's data.
  • Your AI assistant sends CLEATUS tool calls, not your whole conversation.
  • For each call, CLEATUS records the tool name, the user and company, the result status, and the response time. For search tools, CLEATUS also records the search text and the number of results.
  • Every cleatus_* tool is free to call. Credits pay for AI features inside the CLEATUS web app, such as proposal generation and workflow AI steps.
  • Full privacy policy: https://www.cleat.ai/privacy.

Troubleshooting

Connector won't connect

Make sure that the server URL is exactly https://www.cleat.ai/api/mcp/mcp. Make sure that your client supports PKCE with the S256 method, because the server rejects plain PKCE. If your client uses dynamic client registration, register every redirect URI that it uses in redirect_uris.

"Upgrade required" or HTTP 402 errors

The connectors need an active subscription on the DATA + AI plan or higher. A company whose trial has not started also gets a 402 error. Sign in at cleat.ai/dashboard to upgrade, renew, or start the trial.

An inactive subscription returns the subscription_inactive error with this message: "Your CLEATUS subscription is inactive. Sign in at https://cleat.ai/dashboard to renew before using the connector."

Tool returns empty results

Make sure that you picked the correct company on the Connect to CLEATUS page. Each access token is scoped to one company. A token for the wrong company finds no pipeline, tasks, or saved searches. To switch companies, remove the connector, add it again, and pick the correct company.

401 or unauthorized errors

The access token expired, was revoked, or was issued for a different server. Authorize the connector again so that your client gets a fresh token. If 401 errors continue, replay detection may have revoked the refresh token family. Remove the connector and add it back to start a new token family.

Rate-limit errors

Each token gets 100 reads and 30 writes per minute. Wait for the number of seconds in the error message, then retry. If you often hit the limit, combine reads into fewer calls, or contact support about a higher limit.

Still stuck

Email support@cleat.ai with your client name, the tool that you called, and the time of a failing request.


Support