generated: '2026-08-13' method: derived source: >- mcp/line-mcp.yml (tool list transcribed from github.com/line/line-bot-mcp-server) bound against openapi/line-messaging-api-openapi.yml (harvested verbatim from github.com/line/line-openapi) description: >- Binds each tool exposed by the first-party LINE Bot MCP Server to the LINE Messaging API operation(s) that back it. Every operationId below was verified present in the harvested OpenAPI. Because the MCP server is stdio-only there is no live endpoint to introspect, so the binding is by name and documented semantics rather than by observed inputSchema — confidence is recorded accordingly. surfaces: openapi: path: openapi/line-messaging-api-openapi.yml operations: 73 gated: false servers: - https://api.line.me mcp: transport: stdio endpoint: null package: "@line/line-bot-mcp-server" tools: 12 gated: true note: >- Local-stdio only — no URL an MCP client can POST tools/list to. Live inputSchema introspection would require installing and running the server with a channel access token. graphql: endpoint: null note: LINE publishes no GraphQL surface. crosswalk: - tool: push_text_message category: messaging rest: [pushMessage] binding: POST /v2/bot/message/push with a single text message object confidence: high note: >- The REST operation accepts the X-Line-Retry-Key idempotency header and an array of up to 5 message objects; the tool narrows this to one text message and does not expose the retry key. - tool: push_flex_message category: messaging rest: [pushMessage] binding: POST /v2/bot/message/push with a single flex message object confidence: high - tool: broadcast_text_message category: messaging rest: [broadcast] binding: POST /v2/bot/message/broadcast with a single text message object confidence: high - tool: broadcast_flex_message category: messaging rest: [broadcast] binding: POST /v2/bot/message/broadcast with a single flex message object confidence: high - tool: get_profile category: identity rest: [getProfile] binding: GET /v2/bot/profile/{userId} confidence: high - tool: get_message_quota category: quota rest: [getMessageQuota, getMessageQuotaConsumption] binding: >- GET /v2/bot/message/quota plus GET /v2/bot/message/quota/consumption — the tool returns both the limit and current usage, which are two separate REST operations. confidence: high - tool: get_rich_menu_list category: rich-menu rest: [getRichMenuList] binding: GET /v2/bot/richmenu/list confidence: high - tool: delete_rich_menu category: rich-menu rest: [deleteRichMenu] binding: DELETE /v2/bot/richmenu/{richMenuId} confidence: high - tool: set_rich_menu_default category: rich-menu rest: [setDefaultRichMenu] binding: POST /v2/bot/user/all/richmenu/{richMenuId} confidence: high - tool: cancel_rich_menu_default category: rich-menu rest: [cancelDefaultRichMenu] binding: DELETE /v2/bot/user/all/richmenu confidence: high - tool: create_rich_menu category: rich-menu rest: [createRichMenu, setRichMenuImage, setDefaultRichMenu] binding: >- Composite. POST /v2/bot/richmenu to create the menu, POST /v2/bot/richmenu/{richMenuId}/content (api-data.line.me) to upload the generated image, then POST /v2/bot/user/all/richmenu/{richMenuId} to set it as default — the README describes all three steps as one tool call. confidence: medium note: The image is generated by the server, not supplied by the caller. - tool: get_follower_ids category: audience rest: [getFollowers] binding: GET /v2/bot/followers/ids with start/limit continuation paging confidence: high mcp_only: [] rest_only: - operation: replyMessage reason: >- Reply requires a replyToken from an inbound webhook event; the MCP server exposes no webhook ingress, so the single most-used Messaging API operation has no tool. - operation: multicast reason: No multicast tool — only push (one recipient) and broadcast (all). - operation: narrowcast reason: Audience-targeted sending is not exposed. - operation: getNarrowcastProgress reason: No narrowcast tool to track. - operation: validateReply reason: Message-object validation endpoints are not exposed as tools. - operation: validatePush reason: Message-object validation endpoints are not exposed as tools. - operation: validateMulticast reason: Message-object validation endpoints are not exposed as tools. - operation: validateNarrowcast reason: Message-object validation endpoints are not exposed as tools. - operation: validateBroadcast reason: Message-object validation endpoints are not exposed as tools. - operation: getMessageContent reason: Inbound media retrieval (api-data.line.me) is not exposed. - operation: getMessageContentPreview reason: Inbound media retrieval is not exposed. - operation: getMessageContentTranscodingByMessageId reason: Inbound media retrieval is not exposed. - operation: getWebhookEndpoint reason: Channel/webhook configuration is not exposed. - operation: setWebhookEndpoint reason: Channel/webhook configuration is not exposed. - operation: testWebhookEndpoint reason: Channel/webhook configuration is not exposed. - operation: getBotInfo reason: No tool. - operation: getGroupSummary reason: Group and room surface is entirely absent from the tool set. - operation: getGroupMemberProfile reason: Group and room surface is entirely absent from the tool set. - operation: getRoomMemberProfile reason: Group and room surface is entirely absent from the tool set. - operation: getGroupMembersIds reason: Group and room surface is entirely absent from the tool set. - operation: getRoomMembersIds reason: Group and room surface is entirely absent from the tool set. - operation: getGroupMemberCount reason: Group and room surface is entirely absent from the tool set. - operation: getRoomMemberCount reason: Group and room surface is entirely absent from the tool set. - operation: leaveGroup reason: Group and room surface is entirely absent from the tool set. - operation: leaveRoom reason: Group and room surface is entirely absent from the tool set. - operation: getRichMenu reason: Single rich-menu read is not exposed (only the list). - operation: getRichMenuImage reason: Not exposed. - operation: validateRichMenuObject reason: Not exposed. - operation: createRichMenuAlias reason: The whole rich-menu alias surface is absent. - operation: getRichMenuAlias reason: The whole rich-menu alias surface is absent. - operation: updateRichMenuAlias reason: The whole rich-menu alias surface is absent. - operation: deleteRichMenuAlias reason: The whole rich-menu alias surface is absent. - operation: getRichMenuAliasList reason: The whole rich-menu alias surface is absent. - operation: getRichMenuIdOfUser reason: Per-user rich-menu linking is not exposed. - operation: linkRichMenuIdToUser reason: Per-user rich-menu linking is not exposed. - operation: unlinkRichMenuIdFromUser reason: Per-user rich-menu linking is not exposed. - operation: linkRichMenuIdToUsers reason: Bulk rich-menu linking is not exposed. - operation: unlinkRichMenuIdFromUsers reason: Bulk rich-menu linking is not exposed. - operation: richMenuBatch reason: Batch rich-menu control is not exposed. - operation: validateRichMenuBatchRequest reason: Batch rich-menu control is not exposed. - operation: getRichMenuBatchProgress reason: Batch rich-menu control is not exposed. - operation: getNumberOfSentReplyMessages reason: Delivery statistics are not exposed. - operation: getNumberOfSentPushMessages reason: Delivery statistics are not exposed. - operation: getNumberOfSentMulticastMessages reason: Delivery statistics are not exposed. - operation: getNumberOfSentBroadcastMessages reason: Delivery statistics are not exposed. - operation: getAggregationUnitUsage reason: Aggregation-unit surface is not exposed. - operation: getAggregationUnitNameList reason: Aggregation-unit surface is not exposed. - operation: issueLinkToken reason: Account linking is not exposed. - operation: markMessagesAsRead reason: Not exposed. - operation: markMessagesAsReadByToken reason: Not exposed. - operation: showLoadingAnimation reason: Not exposed. - operation: pushMessagesByPhone reason: Partner-only LINE notification messages; not exposed. - operation: getPNPMessageStatistics reason: Partner-only LINE notification messages; not exposed. - operation: getMembershipSubscription reason: Membership surface is not exposed. - operation: getMembershipList reason: Membership surface is not exposed. - operation: getJoinedMembershipUsers reason: Membership surface is not exposed. - operation: listCoupon reason: Coupon surface is not exposed. - operation: createCoupon reason: Coupon surface is not exposed. - operation: getCouponDetail reason: Coupon surface is not exposed. - operation: closeCoupon reason: Coupon surface is not exposed. coverage: mcp_tools: 12 mcp_tools_bound: 12 mcp_only: 0 rest_operations_messaging_api: 73 rest_operations_bound: 12 rest_only: 61 rest_coverage_pct: 16 note: >- The MCP server covers 16% of the Messaging API and none of the Insight, Manage Audience, LIFF, Module, Channel Access Token or Shop APIs — 111 published operations across the nine specs, 12 of which have a tool. Most notably replyMessage, the operation every LINE bot is built on, has no tool because the server has no webhook ingress to obtain a replyToken.