At a glance
- Endpoint
- https://match.shipfast.sh/api/mcp
- Transport
- Streamable HTTP, stateless, JSON responses (POST only)
- Auth
- Authorization: Bearer smk_… (personal key, revocable)
- Server card
- https://match.shipfast.sh/.well-known/mcp/server-card.json
- Tools
- 23 (9 read-only)
Connect
- Sign in at SportMatch and finish your profile.
- Open Profile > AI agents and create a key. It is shown once.
- Add the server to your client.
Claude Code
claude mcp add --transport http sportmatch https://match.shipfast.sh/api/mcp \ --header "Authorization: Bearer smk_YOUR_KEY"
Other clients that take a remote server URL and headers (Cursor, VS Code, Gemini CLI, …)
{
"mcpServers": {
"sportmatch": {
"url": "https://match.shipfast.sh/api/mcp",
"headers": { "Authorization": "Bearer smk_YOUR_KEY" }
}
}
}Client menus change often; the server needs only the URL and the Authorization header. Clients that require OAuth for custom connectors are not supported yet.
Tools
get_optionsread-onlyValid sports, levels, Ho Chi Minh City area ids and play-time slots.
get_my_profileread-onlyYour own profile, plan (free or Pro) and likes left today.
find_partnersread-onlyPlayers who fit your level and play times, best first.
list_matchesread-onlyYour matches with the latest message preview.
who_liked_meread-onlyPlayers waiting for your answer (names are Pro only; free accounts get the count).
read_messageschanges dataMessages in one match; marks them as read.
like_playerchanges dataLike a player; a mutual like becomes a match. Free accounts have a daily limit.
pass_playerchanges dataPass on a player so they stop appearing.
send_messagechanges dataSend a chat message in a match, as you.
propose_gamechanges dataPropose a date, time and court to a match.
list_confirmed_gamesread-onlyAccepted 1-on-1 games that have not happened yet.
cancel_game_proposalchanges dataWithdraw a proposal you sent.
answer_gamechanges dataAccept or decline a proposal someone sent you.
block_playerchanges dataBlock a player; neither of you sees the other again.
unblock_playerchanges dataUndo a block you made.
report_playerchanges dataReport a player to the moderators (also blocks them).
list_gamesread-onlyUpcoming open group games that fit your level.
create_gamechanges dataOpen a group game other players can join (optionally weekly).
join_gamechanges dataJoin a game, or its waitlist when full.
leave_gamechanges dataLeave a game; the next waitlisted player takes the spot.
list_courtsread-onlyCourts players have added, with upcoming open games.
get_leaderboardread-onlyMost active players of the last 30 days for a sport.
rate_playerchanges dataAfter a game you both played, give a kudos tag (on time, friendly, fair level or no-show).
Times are Ho Chi Minh City time (UTC+7). Nothing here deletes your account, photos or messages.
FAQ
Who can use the MCP server?
Any SportMatch player with a finished profile. Create a personal API key in the app under Profile > AI agents; the key acts as you.
Can the assistant act without asking me?
The tools only act as the signed-in player, and their descriptions tell the assistant to like, message, propose or join only when you asked. Check what your client is allowed to run automatically.
What can a key not do?
It cannot delete the account or create more keys. Players' photos, birth dates and emails are never returned; other players appear as a card with name, age, area, levels, play times and bio.
Do the free limits still apply?
Yes. Free accounts keep 20 likes a day, blocks and bans apply, and Pro-only data (who liked you) stays gated.
How do I stop it?
Revoke the key under Profile > AI agents; it stops working immediately.