For AI assistants
Run your league from your assistant.
Beleeg has an address that AI assistants connect to: https://beleeg.com/api/mcp. Add it to Claude, Meta Muse, or Cursor with one token from your account. It can read your leagues, teams, schedules, standings, and messages, and it can make changes: build the schedule, move a match, record a score, email the league, add people. Every change is shown to you as a summary first, and nothing happens until you say yes.
What it is
Your league, in your assistant's hands.
MCP is the standard way an AI assistant plugs into an outside service. Beleeg runs one at https://beleeg.com/api/mcp.
Once it is connected, you can ask in plain words: which leagues you are in, who is on a team, who is leading Division 2, who still owes dues. You can also say what to do: move Saturday's matches to Sunday, email the captains about a rainout, record a score. For a change, the assistant shows you exactly what will happen and waits for your yes. Then it does it, and Beleeg records every change an assistant makes.
Only what you can see
Every call runs as you. If a league is hidden from you in the app, it is hidden from your assistant too.
One token, yours to revoke
Tokens are made in your account and switched off there in one press. They expire on their own after 30 days.
Asks before it changes anything
28 tools that look things up and 10 kinds of change. A change is two steps: the assistant prepares it and shows you a summary, and only your yes runs it. A token made for reading only cannot change anything.
Set it up
Three steps. About a minute.
Get a token, paste the address and the token into your assistant, ask a question.
Get your token
Sign in at beleeg.com, open Account, then Connect an AI assistant. Press Connect, then copy the token it shows you. It starts with blg_agent_.
Paste the address and the token
Pick your assistant below. Each tab shows the exact thing to paste. The web address is always the same: https://beleeg.com/api/mcp
Ask a question
"Which leagues am I in?", "Who still owes dues?", "Email the captains that Tuesday is rained out." Questions get answered. Changes get a summary first, and nothing happens until you say yes.
In Muse, add a connection and fill in the two boxes.
1. Open Muse and choose Add a connection.
2. Web address: https://beleeg.com/api/mcp
3. Token: paste your Beleeg token (starts with blg_agent_)
4. Save. Ask: "Which leagues am I in?" or "Move Saturday's matches to Sunday."Things to try
Questions for day one.
Each one is a real question to type after you connect. Underneath is the tool the assistant uses to answer it.
"Which leagues am I in, and what am I in each one?"
beleeg_list_my_leagues"Who is on my team, and who is the captain?"
beleeg_get_my_team_assignmentbeleeg_list_league_teams"Show me the bracket for the spring tournament."
beleeg_list_tournamentsbeleeg_get_public_tournament"Which court and time is my tournament match on?"
beleeg_list_tournament_court_schedule"Sum up what the league has sent out this month."
beleeg_list_league_communicationsbeleeg_list_published_articles"Who still owes their registration fee?"
beleeg_find_unpaid"Move every match this Saturday to Sunday, same times."
beleeg_prepare_reschedule_matchbeleeg_confirm_action"Email the captains that Tuesday is rained out."
beleeg_prepare_send_announcementbeleeg_confirm_action"Set up a Tuesday pickleball league for me — my email is …"
beleeg_start_leagueWhat it can do
All 41 tools, by name.
These are the exact names your assistant sees. The reads run on their own. The changes start with beleeg_prepare_, which only writes up a summary; beleeg_confirm_action does the change after you agree. Each league can turn changes off, or keep them to admins, in its settings. Two more set up a league or a bracket for someone who is not on Beleeg yet, over the public address, and hand it over by a link.
Your leagues
beleeg_list_my_leaguesEvery league you belong to, with your role in each.
beleeg_get_league_briefOne league at a glance: teams, counts, season dates.
beleeg_search_leaguesLeagues listed publicly on Beleeg, by name, sport, or town.
Standings and schedule
beleeg_get_standingsThe standings table: rank, record, and points for every team.
beleeg_get_scheduleEvery match this season with date, venue, sides, and score.
Teams and members
beleeg_list_league_teamsEvery team in a league, with captain and roster.
beleeg_list_league_membersEveryone in a league, including invites not yet accepted.
beleeg_get_my_team_assignmentYour team, line, and role in a league.
beleeg_find_unpaidMembers who have not paid their registration fee yet.
Public pages
beleeg_get_public_teamA team page by its web address.
beleeg_get_public_leagueA league page by its web address.
beleeg_get_public_matchOne match: teams, lineups, scores.
beleeg_get_public_tournamentA public bracket, entrants, and status.
beleeg_list_public_tournaments_by_leagueEvery public tournament in a league.
Tournaments
beleeg_list_tournamentsEvery tournament in a league, newest first.
beleeg_list_tournament_drawsThe draws in a tournament, such as Men's A or Women's B.
beleeg_list_tournament_court_scheduleEvery match with its court, start time, and referee.
Messages and news
beleeg_list_team_chat_messagesRecent messages in a team chat.
beleeg_list_league_communicationsRecent emails and announcements sent to a league.
beleeg_list_published_articlesPublished news and recaps for a league.
beleeg_list_article_commentsComments on an article.
beleeg_list_tournament_photosPhotos from a tournament.
beleeg_list_tournament_highlightsVideo highlights from a tournament.
beleeg_list_highlight_commentsComments on a highlight.
Referees and availability
beleeg_list_referee_tournament_assignmentsReferee assignments for a tournament.
beleeg_get_my_referee_notification_prefsHow you have asked to be notified as a referee.
beleeg_list_my_availabilityThe times you have marked yourself free or busy.
Try it without a league
beleeg_view_demo_league_summaryA snapshot of the demo league, for a first look.
Changes, with your OK
Needs a token made with "Look up and make changes". Each one prepares a summary for you to approve.
beleeg_prepare_create_leagueStart a league with its first season, teams, and invitations.
beleeg_prepare_create_tournamentA league tournament, or a bracket from a list of names.
beleeg_prepare_add_playersInvite people to a league by email, onto a team if you like.
beleeg_prepare_create_teamsAdd teams to the season, in divisions.
beleeg_prepare_generate_scheduleBuild the round-robin schedule for the season.
beleeg_prepare_reschedule_matchMove one match, several, or a whole day.
beleeg_prepare_report_scoreRecord a league or tournament result.
beleeg_prepare_send_announcementEmail the league, the players, or the captains.
beleeg_prepare_register_playerRegister yourself in a league with open registration.
beleeg_prepare_mark_paidRecord a fee paid by cash or check.
beleeg_confirm_actionThe only tool that changes anything. It runs a prepared change after you say yes.
Start without an account
Your assistant uses https://beleeg.com/api/mcp/public, which takes no token, and asks for your email. You get a link to take it over: sign in with that email, look it over, and keep it or discard it. Nothing is emailed to anyone until you keep it; a league nobody keeps is removed after 30 days.
beleeg_start_leagueSets up a league for someone who is not on Beleeg yet: the league, its first season with registration open, teams, and a public page. The organizer gets a link to take it over.
beleeg_start_tournamentBuilds a bracket from a list of names for someone who is not on Beleeg yet. The organizer gets a link to take it over; the draw shows once they keep it.
Your token
One token. Yours to switch off.
A token is a long code that stands in for you. Your assistant sends it with every question, and Beleeg answers as if you had asked.
- Sign in at beleeg.com/account
- Open Connect an AI assistant
- Press Connect, give it a name, and copy it. It lasts 30 days.
- Paste it where your assistant asks for it (the
Authorization: Bearerheader, in the snippets above)
Lost a laptop or shared a token by mistake? Switch it off on the same page and it stops working right away. Your Beleeg session token works too, if you already have one from the app.
For developers
The plumbing, in one place.
Streamable HTTP, stateless, one request at a time. Send JSON-RPC to POST /api/mcp with a Bearer token. The public address, POST /api/mcp/public, takes no credential and serves the five public readers plus beleeg_start_league and beleeg_start_tournament. Limits: 3 starts per organizer email per day, 5 per caller per day, 100 a day across Beleeg.
Discovery file
Name, endpoint, and auth type in a small JSON file, for tools that look before they connect.
Plain REST, no MCP
Public league data (league, standings, schedule, teams) as JSON at /api/v1/leagues/<id>, with an organization API key.
curl https://beleeg.com/api/mcp/healthOne more thing
The copy-paste snippet.
Paste this anywhere an assistant accepts a JSON connection. Swap YOUR_BELEEG_TOKEN for the token from your account page.
{
"mcpServers": {
"beleeg": {
"url": "https://beleeg.com/api/mcp",
"headers": {
"Authorization": "Bearer YOUR_BELEEG_TOKEN"
}
}
}
}Ready when you are
Hand your assistant the keys, with a catch.
Free for every Beleeg league. Set up takes about a minute.