Restaurant365 MCP Server
# Restaurant365 MCP Server — Riviera Dining Group
MCP server for the Restaurant365 OData API (live, near-real-time read access).
## Portable Team MCP command
Use this in **Cursor Dashboard → Integrations & MCP → Team MCP Servers**:
| Field | Value |
|-------|-------|
| Name | `restaurant365` |
| Type | `stdio` |
| Command | `npx` |
| Args | `-y`, `github:msoutumuro123/r365-mcp-server` |
Environment variables:
| Variable | Description |
|----------|-------------|
| `R365_DOMAIN` | Instance subdomain (default: `rivieradining`) |
| `R365_USERNAME` | R365 username |
| `R365_PASSWORD` | R365 password |
Aliases also supported: `RESTAURANT365_ODATA_USERNAME`, `RESTAURANT365_ODATA_PASSWORD`, `RESTAURANT365_DOMAIN`.
Username is sent as `domain\username` per R365 OData requirements.
After saving the Team MCP server, click **Add to Team Marketplace** so teammates can install it from Customize in the IDE.
## Local config (`~/.cursor/mcp.json`)
```json
{
"mcpServers": {
"restaurant365": {
"command": "npx",
"args": ["-y", "github:msoutumuro123/r365-mcp-server"],
"env": {
"R365_DOMAIN": "rivieradining",
"R365_USERNAME": "your-user",
"R365_PASSWORD": "your-password"
}
}
}
}
```
## Tools
- `r365_test_connection` — Verify live OData connection
- `r365_list_entities` — List available OData views
- `r365_list_locations` — List all accessible locations
- `r365_query` — Generic OData query with $filter, $select, $top
- `r365_get_transactions` — Financial transactions
- `r365_get_gl_accounts` — GL account master data
- `r365_get_employees` — Employee records
- `r365_get_sales` — Sales ticket headers
## Build
```bash
npm install
npm run build
```
TDQS
Scored across 5 tools
Each tool serves a distinct purpose: connection verification, entity enumeration, location listing, generic querying, and transaction retrieval. No overlap or ambiguity.
All tools follow the 'r365_' prefix and snake_case naming convention. Most use verb_noun pattern (test_connection, list_entities, list_locations, get_transactions), with 'r365_query' being a concise verb form, maintaining overall consistency.
Five tools is appropriate for a read-only OData API server, covering connection testing, schema discovery, location listing, generic querying, and a specific transaction query without being excessive or sparse.
The set provides essential read-only operations: test, list entities, list locations, generic query, and specific transaction query. While a dedicated get-by-ID tool is missing, the generic query can handle it via filters. No write operations are expected per scope.