Connect the Service4AI MCP server to your agent
One line of config, and your AI agent can rent a human, track their mission, estimate their sighs and check whether tomorrow is a French bridge day. Works with Claude Code, Claude, Cursor, VS Code, ChatGPT and any MCP client that speaks HTTP.
Server URL https://mcp.service4ai.com/v1/en
At a glance
| URL (English) | https://mcp.service4ai.com/v1/en |
|---|---|
| URL (French) | https://mcp.service4ai.com/v1 |
| Transport | Streamable HTTP, stateless (POST only) |
| Authentication | None during the beta. An Authorization: Bearer s4ai_test_… header is accepted but optional. |
| Protocol | Versions 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 |
| Price | Free. Nothing is billed, and no human is actually sent. |
Site under construction, server in beta. The tools really answer, with simulated missions: nobody will get up for you. No data is stored; a mission only exists in its identifier.
Claude Code
One command in your terminal:
claude mcp add --transport http service4ai https://mcp.service4ai.com/v1/en
Add --scope user to make it available in all your projects. In a session, the /mcp command shows the server status and its five tools.
Claude (web and desktop app)
Remote MCP servers are added as custom connectors, depending on your plan:
- Open Settings → Connectors.
- Choose Add custom connector.
- Name:
Service4AI. URL:https://mcp.service4ai.com/v1/en. Leave the OAuth settings empty. - In a conversation, turn the connector on from the tools menu.
The connector is then available on claude.ai and in the desktop app.
Cursor
Add the server to ~/.cursor/mcp.json (all projects) or to .cursor/mcp.json at the root of a project:
{
"mcpServers": {
"service4ai": {
"url": "https://mcp.service4ai.com/v1/en"
}
}
}
The server then shows up in Cursor's MCP settings, where you can turn it on or off.
VS Code (GitHub Copilot)
Create .vscode/mcp.json in your project:
{
"servers": {
"service4ai": {
"type": "http",
"url": "https://mcp.service4ai.com/v1/en"
}
}
}
The tools are then offered to Copilot Chat in agent mode.
ChatGPT
ChatGPT accepts remote MCP servers in developer mode, depending on your plan:
- Turn on developer mode in the connectors (or apps) settings.
- Create a connector with the URL
https://mcp.service4ai.com/v1/enand authentication set to None. - Turn it on in a conversation. ChatGPT may ask for confirmation before tools that change something (renting or cancelling).
ChatGPT's menus change often: if a label differs, look for “MCP” or “connector” in the settings.
Other clients
Any client that supports the Streamable HTTP transport works with the URL alone. For a client that only knows local (stdio) servers, go through the mcp-remote bridge:
{
"mcpServers": {
"service4ai": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.service4ai.com/v1/en"]
}
}
}
To explore the tools without an agent, the official inspector does the job: npx @modelcontextprotocol/inspector, transport “Streamable HTTP”, then the server URL.
Exposed tools
French names (louer_humain, suivre_mission…) are accepted on both URLs.
| Tool | Parameters | What it does |
|---|---|---|
rent_human | task, place, motivation_level… | Creates a mission. Same parameters as POST /v1/humans/rent. |
track_mission | id | Returns the status, the current step, the number of sighs and the blurry photo proof. |
cancel_mission | id | Cancels an unfinished mission, as far as possible: a human who already left finishes their coffee. |
estimate_sighs | task, motivation_level, monday_tolerance | Predicts the number of sighs before you launch the mission. |
check_public_holiday | date (default: tomorrow) | Tells you whether a date is a French public holiday, a bridge day, or “a bit of both”. |
Available tasks: bakery_line, complain, cerfa_stamp, wine_tasting, cheek_kiss, paris_parking, it_depends. Details and prices are in the catalog.
Example prompts
Once the server is connected, just talk to your agent:
- “Rent a human to stand in line at the bakery on rue des Martyrs tomorrow at 8 am.”
- “How many sighs to get a Cerfa form stamped on a Monday?”
- “Is the Friday after Ascension Day a bridge day in France?”
- “Send someone to grumble at customer service for me, intensity 4.”
- “How is the mission you started earlier going?”
The server warns the agent that humans have lunch from noon to 2 pm (Paris time) and don't work on May 1st. Well-mannered agents take it into account.
Test with curl
The server speaks JSON-RPC 2.0 over a plain POST request, with no session to open:
curl https://mcp.service4ai.com/v1/en \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"estimate_sighs","arguments":{"task":"cerfa_stamp"}}}'
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"task": "cerfa_stamp",
"estimated_sighs": 4,
"range": [3, 6],
"confidence": "it depends"
},
"isError": false
}
}
Replace tools/call with tools/list (without params) to get the list of tools and their schemas.
Troubleshooting
| Symptom | Cause and fix |
|---|---|
405 on a GET | The server is stateless and opens no SSE stream: only POST requests are accepted. Pick the “HTTP” or “Streamable HTTP” transport, not the legacy “SSE” one. |
| The client asks for an OAuth login | No authentication is required. Leave the OAuth fields empty, or choose “None”. |
| Answers come back in French | Use https://mcp.service4ai.com/v1/en, or send Accept-Language: en. |
The mission stays in coffee_break | That's normal. Don't retry, the human is coming back. |
Error 503, human on strike | A feature, not a bug. See the error codes. |
Something else? Write to contact@service4ai.com. A human will answer, after their coffee.