Setmore MCP Server
# Setmore API and MCP server for services
**Yes, ChatGPT, Claude and other AI agents can work in your Setmore account.** Use Cotlet.dev to manage appointments, customers, services and staff calendars with natural language.
## What you can ask
> List tomorrow's appointments for each team member.
> Move all bookings for Friday to next Monday.
> Find the customers booked for the haircut service this month.
> Block lunch time for the whole team tomorrow.
> Add a note to the customer who missed today's appointment.
## Connect in 2 minutes
Get your API key at https://cotlet.dev/app and export it as `COTLET_API_KEY`.
### Claude Code
```bash
claude mcp add --transport http cotlet https://cotlet.dev/mcp/v1 --header "Authorization: Bearer $COTLET_API_KEY"
```
### ChatGPT
Settings → Apps → add connector URL `https://cotlet.dev/mcp/v1`, then sign in with Cotlet.dev. No API key needed.
### Cursor
Copy `.cursor/mcp.json` from this repo into your project:
```json
{
"mcpServers": {
"cotlet": {
"url": "https://cotlet.dev/mcp/v1",
"headers": {
"Authorization": "Bearer ${COTLET_API_KEY}"
}
}
}
}
```
## Run it locally (stdio)
This repo is a real MCP server. It speaks MCP over stdio, lists its Setmore tools without any key, and forwards every tool call to the hosted Cotlet.dev server. The hosted URL above stays the recommended way. Use this when your client only starts local servers.
```json
{"mcpServers":{"setmore":{"command":"uvx","args":["setmore-mcp"],"env":{"COTLET_API_KEY":"your-key"}}}}
```
Or with Docker:
```bash
docker build -t setmore-mcp .
docker run -i --rm -e COTLET_API_KEY setmore-mcp
```
Tools: `setmore_guide`, `setmore_status`, `setmore_open`, `setmore_read`, `setmore_click`, `setmore_type`, `setmore_close`. Without `COTLET_API_KEY` a tool call answers: "Set COTLET_API_KEY. Get a key at https://cotlet.dev/app".
## Command line
Python 3.10+, nothing else to install. From PyPI:
```bash
pip install setmore-mcp # or run it once: uvx setmore-mcp connect
setmore-mcp connect
```
Or straight from this repo:
```bash
export COTLET_API_KEY="your-key"
python3 setmore_agent.py connect # ready config for Claude Code, Cursor, ChatGPT
python3 setmore_agent.py status # is Setmore ready in your Cotlet.dev account
python3 setmore_agent.py guide # Setmore screens and sign-in link
python3 setmore_agent.py read # open Setmore, read the page, close the browser
python3 setmore_agent.py tools # list Cotlet.dev tools
python3 setmore_agent.py serve # start the stdio MCP server (same as no argument)
```
## Questions from Setmore users
**Does Setmore have an API?**
Setmore offers an API for approved Pro accounts. Cotlet.dev provides the connection at https://cotlet.dev/mcp/v1.
**How do I connect Setmore to ChatGPT?**
Sign in to Setmore through Cotlet.dev, then connect ChatGPT to the MCP server at https://cotlet.dev/mcp/v1.
**Can Claude use my Setmore account?**
Yes. Claude can use the same Cotlet.dev connection after you sign in to Setmore.
**What can an AI agent do in Setmore?**
It can read and manage appointments, customers, services, staff calendars and notes through Cotlet.dev.
## Find it on
- [Setmore on Cotlet.dev](https://cotlet.dev/integrations/setmore-api-mcp-server?utm_source=github&utm_medium=readme&utm_campaign=setmore&utm_content=find)
- [PyPI package setmore-mcp](https://pypi.org/project/setmore-mcp/)
- [Odel](https://odel.app/modules/cotlet/setmore)
- [mcpbeat](https://mcpbeat.com/mcp-servers/cotlet/setmore/)
- [Step-by-step guide (PDF) on Internet Archive](https://archive.org/details/cotlet-connect-setmore-to-ai-agents-guide)
## Also works with
- [booksy MCP](https://github.com/cotlet-connect/booksy-mcp)
- [vagaro MCP](https://github.com/cotlet-connect/vagaro-mcp)
- [fresha MCP](https://github.com/cotlet-connect/fresha-mcp)
- [All apps connected through Cotlet.dev](https://github.com/cotlet-connect)
---
More: https://cotlet.dev/integrations/setmore-api-mcp-server?utm_source=github&utm_medium=readme&utm_campaign=setmore
Start free: https://cotlet.dev/signup?app=setmore&utm_source=github&utm_medium=readme&utm_campaign=setmore
TDQS
Scored across 7 tools
The five browser primitives (open, read, click, type, close) have clearly distinct roles, and setmore_guide vs setmore_status are mostly separable (how-to vs readiness check). The only mild overlap is between guide and status, both of which are introductory 'call me first' helpers, but descriptions give enough cues to pick correctly.
All tools share a consistent setmore_ prefix and snake_case form. The action words are verbs for the browser primitives, but guide and status are noun-style names, a minor deviation from a pure verb_noun pattern.
Seven tools is well-scoped for a browser-automation wrapper over a single SaaS app. Each tool corresponds to a necessary step in the open-read-act-close loop, with no padding.
The core loop is covered, but common browser interactions are missing: no key press/submit (e.g. Enter), no select/dropdown option tool, and no explicit scroll or wait. Agents can often work around these via click targets, but they risk dead ends on forms or long pages.