COTAL actions (cotal.ai)

cotal.ai actions: product overview, site search, build log, feedback, Cloud waitlist, updates, calls

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
97%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,072Tokens (tool definitions)
~1.9 KBTypical response size
Moderate attention impact (1.62% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "cotal": {
      "url": "https://cotal.ai/mcp"
    }
  }
}

Remote endpoints

https://cotal.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
🟑cotal_submit_feedback(type, summary, email, details, name, ...)

Files feedback (bug, idea, friction, praise, other) with the COTAL team on behalf of the user. The same log the site's feedback widget writes to. Requires the user's email so the team can follow up.

Input Schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "bug",
        "idea",
        "friction",
        "praise",
        "other"
      ],
      "description": "Kind of feedback."
    },
    "summary": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000,
      "description": "One line: what happened, or what should."
    },
    "email": {
      "type": "string",
      "maxLength": 320,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "The user's email address. Required so the record has a traceable origin."
    },
    "details": {
      "description": "Longer description, steps, context.",
      "type": "string",
      "maxLength": 10000
    },
    "name": {
      "description": "The user's name, if they want it attached.",
      "type": "string",
      "maxLength": 100
    },
    "severity": {
      "description": "For bugs and friction.",
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ]
    },
    "area": {
      "description": "Which part of COTAL it concerns (CLI, connector, docs, site…).",
      "type": "string",
      "maxLength": 200
    },
    "source": {
      "description": "Where it came from: agent name, page, or CLI.",
      "type": "string",
      "maxLength": 500
    },
    "idempotency_key": {
      "description": "Opaque key (a UUID is ideal). Reuse it when retrying so the same record is returned instead of a duplicate.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "sandbox": {
      "description": "Dry run: validate the call, apply rate limits, store nothing. Use it to test the integration.",
      "type": "boolean"
    }
  },
  "required": [
    "type",
    "summary",
    "email"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
βšͺcotal_join_waitlist(email, use_case, linkedin, sandbox)

Reserves a seat on the waitlist for Cotal Cloud, the hosted Cotal mesh (closed alpha), for the user's email. Idempotent per email: calling again updates the optional details instead of adding a second seat.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "maxLength": 320,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "The user's email address. Required so the record has a traceable origin."
    },
    "use_case": {
      "description": "What the user wants the hosted mesh for.",
      "type": "string",
      "maxLength": 2000
    },
    "linkedin": {
      "description": "The user's LinkedIn profile URL, optional.",
      "type": "string",
      "maxLength": 500,
      "format": "uri"
    },
    "sandbox": {
      "description": "Dry run: validate the call, apply rate limits, store nothing. Use it to test the integration.",
      "type": "boolean"
    }
  },
  "required": [
    "email"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
βšͺcotal_subscribe_newsletter(email, sandbox)

Subscribes the user's email to release updates from the COTAL team. Idempotent: an already-subscribed email is a no-op.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "maxLength": 320,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "The user's email address. Required so the record has a traceable origin."
    },
    "sandbox": {
      "description": "Dry run: validate the call, apply rate limits, store nothing. Use it to test the integration.",
      "type": "boolean"
    }
  },
  "required": [
    "email"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
βšͺcotal_request_call(email, company, role, agents, frameworks, ...)

Sends a discovery-call request to the COTAL founders for a company evaluating agent coordination. The team replies by email. Requires the user's work email and company.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "maxLength": 320,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "The user's email address. Required so the record has a traceable origin."
    },
    "company": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Company name."
    },
    "role": {
      "description": "The user's role.",
      "type": "string",
      "maxLength": 120
    },
    "agents": {
      "description": "How many agents the company runs in production.",
      "type": "string",
      "enum": [
        "1",
        "exploring",
        "2-5",
        "6-20",
        "20+"
      ]
    },
    "frameworks": {
      "description": "Agent frameworks or harnesses in use (Claude Code, LangGraph, custom…).",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      }
    },
    "coordinating": {
      "description": "One line: what they are coordinating.",
      "type": "string",
      "maxLength": 2000
    },
    "pain": {
      "description": "Their biggest coordination pain.",
      "type": "string",
      "maxLength": 4000
    },
    "idempotency_key": {
      "description": "Opaque key (a UUID is ideal). Reuse it when retrying so the same record is returned instead of a duplicate.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "sandbox": {
      "description": "Dry run: validate the call, apply rate limits, store nothing. Use it to test the integration.",
      "type": "boolean"
    }
  },
  "required": [
    "email",
    "company"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒cotal_overview(section)

Returns a structured overview of COTAL: what it is, who it is for, when to use it, how to install it, the site's API and MCP surface, pricing, and canonical links. Call this first when a user asks what cotal.ai does. Pass `section` to get one part only.

Input Schema

{
  "type": "object",
  "properties": {
    "section": {
      "description": "Which part of the overview to return (default: all).",
      "type": "string",
      "enum": [
        "all",
        "product",
        "when_to_use",
        "install",
        "pricing",
        "site_api",
        "links"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒cotal_search(query, limit)

Keyword search over the COTAL build log (blog posts) and the key documentation and site pages. Returns ranked results with canonical and markdown URLs. Use it to find the page that answers a question before reading it.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Search terms, e.g. 'hackathon', 'identity', 'install windows'."
    },
    "limit": {
      "description": "Maximum results (default 10).",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒cotal_list_posts(limit, cursor)

Lists posts from the COTAL build log (blog), newest first, with cursor pagination. Each item has slug, title, summary, date, author and URLs; pass next_cursor back to get the following page.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Page size (default 10, max 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "cursor": {
      "description": "The next_cursor value from a previous call.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒cotal_get_post(slug)

Returns one build-log post as markdown (title, summary, date, author, full body) by its slug. Get slugs from cotal_list_posts or cotal_search.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "The post slug, e.g. 'agi-summit-2026'."
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Recommended Prompts

search_research
Search for information about [topic] using COTAL actions (cotal.ai)
Expected tools: cotal_search
find_specific
Find [specific item] using COTAL actions (cotal.ai)
Expected tools: cotal_search
retrieve_data
Get details about [item] from COTAL actions (cotal.ai)
Expected tools: cotal_get_post
fetch_info
Fetch [information type] using COTAL actions (cotal.ai)
Expected tools: cotal_get_post
list_items
List all [items] available in COTAL actions (cotal.ai)
Expected tools: cotal_join_waitlist

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools
verifiedversion not recorded8 tools
verifiedversion not recorded8 tools