Skip to main content
Glama
jbeker

Foursquare MCP Server

by jbeker

Foursquare MCP Server

An MCP server that exposes Foursquare/Swarm checkin data and user activity through 13 tools. Built with FastMCP, it supports stdio and HTTP transports.

Features

  • User management — register multiple Foursquare accounts by OAuth token

  • Checkins — fetch checkin history with date filtering and pagination, or get full detail for a single checkin

  • Venue details — look up any venue by ID

  • Venue history — unique venues visited with visit counts and timestamps

  • Mayorships — current venues where a user is mayor

  • Lists — saved, created, and followed lists with full venue details

  • Tastes — user food/experience preferences

  • Cross-user search — query checkins across all registered users at once

Related MCP server: MCP Server Police UK

Requirements

  • Python 3.11+

  • uv (recommended) or pip

Setup

1. Install

cd foursquare_mcp
uv sync

Or with pip:

pip install -e .

2. Get a Foursquare OAuth Token

Option A — Interactive OAuth flow:

Create a .env file with your Foursquare app credentials (see .env.example):

FOURSQUARE_CLIENT_ID=your_client_id
FOURSQUARE_CLIENT_SECRET=your_client_secret

Then run the setup command:

foursquare-mcp setup --username alice

This opens a browser-based OAuth flow and saves the token automatically.

Option B — Manual token:

If you already have an OAuth token:

foursquare-mcp add-user --username alice --token YOUR_OAUTH_TOKEN

Tokens are stored in ~/.config/foursquare-mcp/users.json.

3. Run the Server

stdio (default, for local MCP clients):

foursquare-mcp serve

HTTP (for remote or shared access):

foursquare-mcp serve --transport streamable-http --host 0.0.0.0 --port 8006

MCP Client Configuration

Add to your MCP client config (e.g. .mcp.json):

stdio:

{
  "mcpServers": {
    "foursquare": {
      "command": "foursquare-mcp",
      "args": ["serve"]
    }
  }
}

Streamable HTTP:

{
  "mcpServers": {
    "foursquare": {
      "type": "streamable-http",
      "url": "http://localhost:8006/mcp"
    }
  }
}

Tools

User Management

Tool

Description

list_users

List all registered Foursquare usernames

add_user

Register a user's OAuth token

remove_user

Remove a registered user

get_user_details

Get a user's Foursquare profile

Checkins

Tool

Description

get_user_checkins

Get checkins with optional date range and limit

get_checkin_detail

Get full detail for a single checkin (comments, photos, overlaps)

search_all_users_checkins

Search checkins across all registered users

Venues

Tool

Description

get_venue_details

Get full venue info by venue ID

get_user_venue_history

Get unique venues visited with visit counts and timestamps

Social

Tool

Description

get_user_mayorships

Get venues where the user is currently mayor

get_user_lists

Get all lists (saved, created, followed)

get_list_detail

Get full list detail with all venue items

get_user_tastes

Get taste preferences (food types, experiences)

CLI Commands

foursquare-mcp serve          Start the MCP server
foursquare-mcp setup          Authenticate via OAuth and save token
foursquare-mcp add-user       Register a token manually
foursquare-mcp remove-user    Remove a registered user
foursquare-mcp list-users     List registered users

Run foursquare-mcp --help for full option details.

Running as a systemd Service

# ~/.config/systemd/user/foursquare-mcp.service
[Unit]
Description=Foursquare MCP Server

[Service]
WorkingDirectory=/path/to/foursquare_mcp
ExecStart=/path/to/uv run foursquare-mcp serve --transport streamable-http --host 0.0.0.0 --port 8006
Restart=on-failure

[Install]
WantedBy=default.target
systemctl --user daemon-reload
systemctl --user enable --now foursquare-mcp
F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jbeker/foursquare_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server