Lokand Restaurant MCP

com.lokand由 lokand.com 发布官方发布者v1.0.2更新于 Nov 11, 2026

Free restaurant websites and menus: read any public menu, or build, import and publish a site.

已验证Streamable HTTP可网页运行效率与工作流商业与电商

概览

AI 生成的概览

让助手读取公开餐厅菜单,并创建、导入、设置主题和发布餐厅的 Lokand 菜单网站。

可以做什么
  • 按 slug 读取公开餐厅资料、营业时间、联系方式和菜单
  • 管理菜单与菜品:整份创建菜单,新增、修改、排序和删除分区与菜品
  • 编辑商家资料、营业时间、货币、语言和地点信息
  • 搭建网站:页面、区块、模板、样式预设和主题设置,并发布或取消发布
  • 通过 AI 从现有网站网址导入菜单,审核草稿后再提交
  • 按国家规则检查菜单合规性、套用建议设置,并查看账单或生成 Stripe 结账链接
适用场景
适合助手协助餐厅店主或代运营方搭建、改版、导入或维护 Lokand 餐厅网站与菜单,或需要查询某家公开餐厅的菜单和资料时使用。
运行要求
远程 streamable HTTP 端点 api.lokand.com;未声明软件包或环境变量。管理操作需要商家成员身份和 OAuth Bearer 令牌,令牌由 create_restaurant 返回,客户认领网站后可通过 claim_status 获取新令牌。
安装前请注意
许多工具会写入、发布、替换或永久删除数据:delete_menu 会连同所有分区和菜品一起删除,apply_template 会替换页面结构,publish_site 会让网站公开。create_checkout_link 生成的付款链接任何人都能用来付款。create_restaurant 和 claim_status 返回的 OAuth 令牌属于凭据,应妥善保密。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Lokand Restaurant MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/com.lokand%2Flokand/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "lokand-restaurant": {
      "type": "http",
      "url": "https://api.lokand.com/mcp"
    }
  }
}

工具

73

get_started

Get started

How to use Lokand as an agent: the recipes for creating a restaurant for a customer, editing menus, and handing over ownership. Call this first if you're unsure what to do.

无需输入参数。

list_businesses

List businesses

List the businesses the signed-in user is a member of (id, name, slug, role). Use it to pick the business_id other ops need.

无需输入参数。

get_business

Get business

Look up a public Lokand restaurant/business by its slug. Returns profile, hours, contact info, locale and theme metadata.

输入参数slug必填

list_menus

List menus

List the active menus of a public Lokand restaurant by its slug.

输入参数slug必填

get_menu

Get menu

Fetch a single menu (categories + items with prices) of a public Lokand restaurant.

输入参数slug必填menu_id必填

get_status

Get status

Private status of a business the caller manages: profile (including unpublished state), all menus (active and inactive), and plan. Requires the menu:read scope and membership.

输入参数business_id必填

create_full_menu

Create full menu

Create a COMPLETE menu (sections + items) in one call — prefer this over separate create_menu/add_category/add_item calls. With replace=true, existing menus are deactivated so this becomes the business's live menu (their data is kept, just hidden).

输入参数menu必填replacebusiness_id必填

create_menu

Create menu

Create an EMPTY menu on a business the caller manages (add sections with add_category, dishes with add_item). For a whole menu at once, use create_full_menu instead. Returns the new menu_id.

输入参数idname必填is_activebusiness_id必填description

add_category

Add category

Add a category (section) to a menu. Returns the new category_id.

输入参数idname必填menu_id必填sort_order

add_item

Add item

Add a dish/item to a menu (optionally inside a category). Returns the new item_id.

输入参数idname必填pricemenu_id必填sort_ordervariationscategory_iddescriptiondietary_infois_available

update_item

Update item

Update a menu item's fields (name, description, price, availability, category, sort order). Only provided fields change. Setting is_available=false takes a dish off the public site (86 it).

输入参数namepriceitem_id必填sort_ordervariationscategory_iddescriptiondietary_infois_available

delete_item

Delete item

Delete a menu item.

输入参数item_id必填

update_menu

Update menu

Rename a menu, change its description, or switch it on/off on the public site (is_active). Only provided fields change. Menu ids come from get_status.

输入参数namemenu_id必填is_activedescription

delete_menu

Delete menu

Permanently delete a menu together with ALL of its sections and items. To take a menu off the site but keep it, use update_menu is_active=false instead.

输入参数menu_id必填

rename_category

Rename category

Rename a menu category (section).

输入参数name必填category_id必填

reorder_categories

Reorder categories

Set the order of a menu's categories (sections). List category ids top to bottom; any you leave out keep their current relative order after the listed ones.

输入参数menu_id必填category_ids必填

delete_category

Delete category

Delete a menu category (section). Its items are NOT deleted — they stay on the menu without a section; move them with update_item category_id or delete them with delete_item.

输入参数category_id必填

reorder_items

Reorder items

Set the order of the items in one section of a menu. List item ids top to bottom; listed items from another section are moved into this one, and the section's other items keep their relative order after the listed ones.

输入参数menu_id必填item_ids必填category_id必填

update_business

Update business

Update a business's profile: name, description, about text, opening hours, contact info, currency, default locale, menu display options, country, business details, or place (location, address, timezone, category, cuisines). Only provided fields change.

输入参数nameabouthoursplacemaps_urllegal_infobusiness_id必填descriptioncontact_infocountry_codemenu_optionscurrency_code另有 1 个

set_theme

Set theme

Switch the site to a system theme with `theme_id` (lokand-base, lokand-one — get_site lists them; pages, sections and settings are kept). Legacy shape: `theme_key` (a style preset) plus an optional v1 `theme_config` patch (colors, fonts, hero title/subtitle) — prefer apply_style_preset / update_theme_settings for that. Revertible with revert_last_site_change.

输入参数theme_idtheme_keybusiness_id必填theme_config

publish_site

Publish site

Publish (or unpublish) the business's public menu site at https://<slug>.lokand.co.

输入参数publishbusiness_id必填

create_restaurant

Create restaurant

Create a new Lokand restaurant on a customer's behalf — ONE call can produce a complete LIVE website when you pass `menu` (and optionally hours/theme). Returns working OAuth tokens (Bearer, for follow-up edit ops), the live site_url, and a claim_url. NEXT STEPS after this call: refine with add_item/update_item/set_theme if needed, then give the customer the claim_url so they take ownership (free signup); poll claim_status to keep access after they claim. Requires a client registered once via POST /api/auth/oauth2/register (see https://lokand.com/auth.md).

输入参数menuname必填slughoursplacethemepublishmaps_urlclient_id必填descriptioncontact_infoclient_secret必填另有 2 个

claim_status

Claim status

Check whether the customer has claimed an agent-created restaurant. On the first poll after a claim with consent granted, returns fresh OAuth tokens for continued management (delivered exactly once).

输入参数client_id必填claim_token必填client_secret必填

get_billing_summary

Get billing summary

Current plan, billing region, and subscription state of a business the caller manages.

输入参数business_id必填

import_menu

Import menu

Start an AI import of a restaurant's menu from the URL of its existing website. Returns an import_id to poll with import_status; when complete, call commit_import to turn the draft into a real menu.

输入参数url必填business_id必填

import_status

Import status

Check an AI menu import: processing, complete (draft ready to commit), or failed. `progress.found` lists what is known so far; complete responses include the draft for review.

输入参数import_id必填

commit_import

Commit import

Commit a completed AI menu import as a real menu (creates the menu, categories, and items). Returns the new menu_id.

输入参数import_id必填

check_compliance

Check compliance

Check a business's published menu against what a country's menu rules ask for — allergen and calorie declarations, price-list notices, banned surcharges, operator identity. Returns each requirement with its official sources, plus which ones the menu currently falls short of and the item ids involved. ADVISORY ONLY: it reports, it never changes the site, and it is not legal advice.

输入参数countrybusiness_id必填

apply_country_settings

Apply country settings

Fill the business's menu display options with the values a country's rules suggest — a notice about tax-inclusive pricing, the price-effective date, ordering restrictions. These are DEFAULTS: the owner can change any of them afterwards, and nothing here is enforced.

输入参数localecountryoverwritebusiness_id必填

get_site

Get site

Read the business's website: `document` (the v3 site document — settings, home, pages, and templates[page_id] → sections → blocks, with the ids every other site op needs), `theme` (what the live theme offers: every section and block type with its settings, the theme settings, and style presets), `resolved_settings` (the concrete theme settings the site renders with), `live_theme` (the custom theme code in use, with its file paths, or null for a system theme), `style_hooks` (stable [data-lk="…"] attributes custom_css can target on a system theme), `system_themes` (for set_system_theme) and `templates` (segment layouts for apply_template). Settings are listed compactly as "id:type(options)"; pass detail: "full" for labels and defaults. ALWAYS call this before changing the site.

输入参数detailbusiness_id必填

update_site

Update site

Low-level escape hatch: apply an RFC 7386 JSON merge patch to the whole v3 site document returned by get_site.document (objects merge, null deletes a key, arrays REPLACE). Prefer the specific site ops. The result is validated against the theme before anything is saved.

输入参数patch必填business_id必填

update_theme_settings

Update theme settings

Merge-patch the theme's global settings (keys from get_site.theme.theme_settings, e.g. color_primary, font_heading, radius, custom_css). null resets a key to the theme/preset default.

输入参数settings必填business_id必填

apply_style_preset

Apply style preset

Switch the site's style preset (get_site.theme.style_presets, e.g. terra, porto, noir, marche, slate). Colors and fonts the owner changed are reset unless keep_overrides=true.

输入参数preset必填business_id必填keep_overrides

update_theme

Update theme

Legacy look op: switch `preset`, patch v2-style `tokens` (colors, fonts, radius, hero layout, …) or set custom CSS. Prefer update_theme_settings / apply_style_preset.

输入参数presettokenscustom_cssbusiness_id必填

apply_template

Apply template

Rebuild the site's pages and sections from a segment template (cafe, ghost-kitchen, fine-dining, chain, bar, bakery — see get_site.templates). Replaces the page structure; hero copy and custom CSS carry over. keep_theme=true keeps the current style. Revertible with revert_last_site_change.

输入参数template必填keep_themebusiness_id必填

apply_site_preset

Apply site preset

Alias of apply_template (`preset` = template id).

输入参数preset必填keep_themebusiness_id必填

set_page

Set page

Change one page: enable/disable it, show/hide it in the navigation, rename its title, change its path, make it the home page, or move it in the navigation. Only provided fields change. Page ids come from get_site.document.pages (built-ins: home, menu, about, loyalty).

输入参数pathtitleenabledpage_id必填positionmake_homebusiness_id必填show_in_nav

add_page

Add page

Add a new page with a text section (add more with add_section). Returns the updated document, where the new page's id appears.

输入参数pathtitle必填positionbusiness_id必填

remove_page

Remove page

Remove a custom page and its sections. The home page can't be removed — make another page home first (set_page make_home).

输入参数page_id必填business_id必填

add_section

Add section

Add a section of a given `type` (keys of get_site.theme.sections) to a page, optionally from one of its presets, with a settings patch and a 0-based position (default: the end). Sections hold blocks; add them with add_block.

输入参数kindtypepresetpage_id必填positionsettingsbusiness_id必填

update_section

Update section

Change one section: merge-patch its settings (null removes a key; settings: null resets them all) and/or hide/show it. Ids come from get_site.document.templates[page_id].

输入参数hiddenpage_id必填settingssection_id必填business_id必填

remove_section

Remove section

Remove a section from a page. To keep it for later, hide it with update_section hidden=true instead.

输入参数page_id必填section_id必填business_id必填

move_section

Move section

Move a section to a 0-based position within its page.

输入参数page_id必填position必填section_id必填business_id必填

add_block

Add block

Add a block (a repeatable piece inside a section: a link, a photo, a testimonial, …) of a `type` the section accepts (get_site.theme.sections[type].blocks). Nest it in another block with parent_block_id.

输入参数type必填presetpage_id必填positionsettingssection_id必填business_id必填parent_block_id

update_block

Update block

Merge-patch one block's settings (null removes a key) and/or hide/show it.

输入参数hiddenpage_id必填block_id必填settingssection_id必填business_id必填

move_block

Move block

Move a block to a 0-based position among its siblings.

输入参数page_id必填block_id必填position必填section_id必填business_id必填

remove_block

Remove block

Remove a block (and any blocks nested in it).

输入参数page_id必填block_id必填section_id必填business_id必填

set_system_theme

Set system theme

Switch to another system theme (get_site lists `system_themes`). Pages, sections and settings are kept.

输入参数theme_id必填business_id必填

make_menu_only

Make menu only

Turn the site into a single menu page (the menu becomes the home page, every other page is disabled). Use when the owner wants "just the menu". Revertible with revert_last_site_change.

输入参数business_id必填

publish_brand_template

Publish brand template

Chains only: make this location's published site the brand template that every linked location of its organization shows (see set_brand_link). Requires brand owner/admin and the franchise plan.

输入参数business_id必填

revert_last_site_change

Revert last site change

Undo the most recent site change made through the site ops or set_theme (up to the last 10, kept for 30 days). Call repeatedly to step further back. 404 when there is nothing to undo.

输入参数business_id必填

update_loyalty_card

Update loyalty card

Set up or change the business's loyalty stamp card: how many stamps earn the reward, the reward text, whether the card is live, and its look. Only provided fields change; the first call must include stamps_required and reward_text. Requires the Pro plan (402 plan_required otherwise — offer create_checkout_link).

输入参数is_activebusiness_id必填card_configreward_textstamps_required

theme_list

Theme list

List the business's custom themes (id, name, role live|unpublished|development, version, upload status) and the system themes. Custom theme code is a Pro feature.

输入参数business_id必填

theme_get

Theme get

One theme's details and upload status: ready (the version is stored and can be published), processing (poll again in a second or two) or failed (with the error).

输入参数theme_id必填business_id必填

theme_pull

Theme pull

Download a theme's files ({path: text}). theme_id "lokand-base" or "lokand-one" returns a system theme to start from. Custom themes return their latest stored version. A whole theme is large: pass search to find the lines you need to change, or list_only for paths and sizes, then paths for whole files.

输入参数pathssearchtheme_id必填list_onlybusiness_id必填

theme_upload

Theme upload

Upload a complete custom theme (Pro plan) as a new commit in its Git repo. Files are validated and compiled at once — a 422 lists every problem as `path: message` lines — then compiled in the background: poll theme_get until status is ready, then theme_publish. Without theme_id, role development reuses your one development theme and role unpublished creates a new theme; with theme_id it stores the next version of that theme. Updating the live theme needs allow_live: true.

输入参数namerolefiles必填messagetheme_idallow_livebusiness_id必填

theme_write_files

Theme write files

Change some files of a custom theme (Pro plan) as one new commit: files maps path → whole new text (null deletes), edits are find/replace changes. Read the current files with theme_pull first. Same validation and background compile as theme_upload. On the LIVE theme the change goes live automatically once compiled; theme_rollback undoes it. On a system theme id (lokand-base, lokand-one) it creates a new unpublished theme from it; pass publish: true to make that live too.

输入参数nameeditsfilesmessagepublishtheme_id必填business_id必填

theme_publish

Theme publish

Make a custom theme the live site's code (Pro plan). The previous live theme becomes unpublished and cached pages refresh. `warnings` lists parts of the current site document the new theme doesn't define (fix them with the site ops).

输入参数theme_id必填business_id必填

theme_unpublish

Theme unpublish

Stop using custom theme code: the site goes back to its system theme. The custom theme is kept as unpublished.

输入参数business_id必填

theme_delete

Theme delete

Delete a custom theme and all its stored versions. The live theme can't be deleted — unpublish it first.

输入参数theme_id必填business_id必填

get_storefront_context

Get storefront context

The exact data a theme renders with (the StorefrontData Liquid objects are built from): the business (localized, brand site applied), every active menu with items, primary menu id, loyalty/ordering flags, the stamp-card program and its resolved style — plus theme_data (the site document) and live_theme. Use it to preview or test theme code locally.

输入参数localebusiness_id必填

theme_history

Theme history

The commit history of a custom theme's code, newest first: hash, message, author, time. The `commit` on theme_get is the one the site renders.

输入参数limittheme_id必填business_id必填

theme_rollback

Theme rollback

Restore a custom theme's code to an earlier commit (Pro plan). It is saved as a new commit, so the rollback itself can be undone; on the live theme it goes live once compiled. Without commit, restores the version before the latest change.

输入参数committheme_id必填business_id必填

theme_git_access

Theme git access

Git access to a custom theme's code: the HTTPS remote and a repo-scoped token (read, or write on the Pro plan). Pushes to main compile automatically and, for the live theme, publish once compiled; theme_get shows a push that failed to compile as push_error. Tokens expire (default 1 hour).

输入参数scopetheme_id必填business_id必填ttl_seconds

theme_sync

Theme sync

Compile the latest commit on a custom theme's main branch now (Pro plan). Pushes compile on their own; call this to apply a push immediately or to retry. Validates like an upload and, for the live theme, publishes once compiled. Poll theme_get for status.

输入参数theme_id必填business_id必填

list_assets

List assets

List every image the business owns: its media library (uploads, photos copied from its old website at import, photos the owner attached in chat), its logo and every menu item photo. Each entry has its url, kind, source, where it is used, and tags a vision model read off the image: subject (dish, drink, interior, exterior, people, logo, menu), what it shows, whether it matches the dish it is labelled as, quality 1-5, dominant colors and alt text. Use these urls for any site or menu image; never use an outside image.

输入参数kindbusiness_id必填

use_asset

Use asset

Put one of the business's own images (a url from list_assets) to use: as the logo (target "logo") or as a menu item's photo (target "item" with item_id). For a site section or block image, pass the same url to update_section / update_block instead.

输入参数url必填target必填item_idbusiness_id必填

suggest_styles

Suggest styles

Recommend looks for the business's website from Lokand's style library (14 hand-made looks, from a Michelin-style 'gastronomique' to a street 'bufe'), read from its menu, prices, logo and photos. Returns the three best fits, how bold to go (safe / distinct / bold, from how much material the business has) and why, and the whole library. Call this before a new look or a redesign, then get_style for the chosen look.

输入参数business_id必填

get_style

Get style

Compile one look from the style library into the exact settings to send in ONE update_theme_settings call (palette, fonts, shape, spacing and a signature custom_css on the stable [data-lk] hooks), plus the menu section style to set, the photo to put in the home hero (hero_image, if any), how to shape the home page, the copy voice, and do / don't lists. By default it uses the logo's color when the logo has a strong one. level: safe, distinct or bold (from suggest_styles, or the owner's ask: 'bolder' / 'simpler').

输入参数levelstyle必填seed_colorbusiness_id必填use_logo_colors

版本历史

1
  1. v1.0.2最新Nov 11, 2026

评分

已满足适用检查项的 83%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分

    请声明包含 README 的 GitHub 仓库,或在 OAuth 受保护资源元数据中提供 resource_documentation。

  • 许可证不适用

    托管服务按其提供方的条款使用,因此这里不要求许可证。此检查项不计入百分比。