MCPサーバー

LMGram

io.github.saezbaldo/lmgram
コミュニケーション 公開・接続可能 MCP 2025-11-25

このMCPでできること

Enables consent-based matching between people seeking peer advice, collaboration, mentoring, or practical help, with chat messaging.

get_current_user
Get current LMGram profile
Returns the LMGram profile linked to the connected account.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
list_match_requests
List LMGram match requests
Lists recent match requests for the current LMGram user, optionally filtered by role and status.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'role': {'enum': ['candidate', 'requester'], 'type': 'string', 'default': 'candidate'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1}, 'status': {'enum': ['pending', 'chat_requested', 'accepted', 'declined'], 'type': 'string', 'description': 'Optional exact request status to return.'}}, 'additionalProperties': False}
list_messages
List chat messages
Lists messages in a LMGram chat. End-to-end encrypted payloads are never exposed as ciphertext; they are represented by a safe placeholder.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['chatId'], 'properties': {'chatId': {'type': 'string'}}, 'additionalProperties': False}
open_lmgram_panel
Open LMGram conversation panel
Open LMGram chats, groups and suggestions for the current ChatGPT conversation. Each conversation has a separate context; never copy a transcript or private documents. This does not publish an intent or send a message.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_chat
Read private chat
Retrieve authorized chat data for client-side decryption, not model context.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'chatId'], 'properties': {'before': {'type': 'string', 'maxLength': 32}, 'chatId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_create_intent
Publish approved intent
Publish only the minimized intent explicitly reviewed and submitted by the user in this conversation panel. Do not include secrets, private transcripts, or dating requests.
外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['contextId', 'topic', 'summary', 'need'], 'properties': {'need': {'type': 'string', 'maxLength': 1000}, 'topic': {'type': 'string', 'maxLength': 240}, 'summary': {'type': 'string', 'maxLength': 2000}, 'language': {'type': 'string', 'maxLength': 40}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_dismiss_suggestion
Dismiss suggestion
Decline an unopened match suggestion.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'matchRequestId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'matchRequestId': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_join_group
Join group
Accept an existing group invitation related to this context.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'roomId'], 'properties': {'roomId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_mark_read
Mark chat read
Mark the displayed chat as read.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'chatId'], 'properties': {'chatId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_register_device
Register encryption device
Register only a public encryption key for this user's panel.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'deviceId', 'publicKey'], 'properties': {'deviceId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'publicKey': {'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_send_message
Send encrypted message
Send a client-encrypted text message after the user presses Send. Retry only the identical payload and clientMessageId.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'chatId', 'clientMessageId', 'body', 'encryptionScheme', 'encryptionNonce', 'senderDeviceId', 'encryptedKeys'], 'properties': {'body': {'type': 'string', 'maxLength': 32000}, 'chatId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'encryptedKeys': {'type': 'object', 'maxProperties': 1000, 'additionalProperties': {'type': 'string', 'maxLength': 96}}, 'senderDeviceId': {'type': 'string', 'maxLength': 32}, 'clientMessageId': {'type': 'string', 'maxLength': 36}, 'encryptionNonce': {'type': 'string', 'maxLength': 40}, 'encryptionScheme': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_snapshot
Refresh conversation
Refresh this conversation's private panel data.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_start_chat
Request conversation
Request a chat with a suggestion in this context, without sending a plaintext introduction.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'matchRequestId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'matchRequestId': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_sync_device_keys
Sync own encryption devices
Share client-encrypted message keys only with this account's registered devices. Does not send messages, plaintext or private keys.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['contextId', 'chatId', 'sourceDeviceId', 'updates'], 'properties': {'chatId': {'type': 'string', 'maxLength': 32}, 'updates': {'type': 'array', 'items': {'type': 'object', 'required': ['messageId', 'encryptionNonce', 'encryptedKeys'], 'properties': {'messageId': {'type': 'string', 'maxLength': 32}, 'encryptedKeys': {'type': 'object', 'maxProperties': 100, 'additionalProperties': {'type': 'string', 'maxLength': 96}}, 'encryptionNonce': {'type': 'string', 'maxLength': 40}}, 'additionalProperties': False}, 'maxItems': 60, 'minItems': 1}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'sourceDeviceId': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
request_human_match
Request a human match
Creates an opt-in LMGram human match request only after the user explicitly asks to use LMGram to find a collaborator, peer, mentor, or helper. Never invoke for general advice, dating or romantic matchmaking. Never include secrets, credentials, API keys, raw transcripts, customer data, or private documents; ask for a minimized non-sensitive summary first.
外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['topic', 'summary', 'need'], 'properties': {'need': {'type': 'string', 'description': 'The concrete collaborator, peer, mentor, or helper the user explicitly wants. Dating and romantic matching are not supported.'}, 'topic': {'type': 'string', 'description': 'Short, non-sensitive title for the practical or professional session topic. Dating and romantic requests are not supported.'}, 'summary': {'type': 'string', 'description': 'Minimized non-sensitive summary. Never send secrets, credentials, API keys, raw transcripts, customer data, or private documents.'}, 'urgency': {'type': 'number', 'default': 0.5, 'maximum': 1, 'minimum': 0}, 'language': {'type': 'string'}, 'matchType': {'enum': ['peer', 'mentor', 'collaborator', 'helper'], 'type': 'string', 'default': 'peer'}, 'sensitivity': {'enum': ['normal', 'sensitive', 'high'], 'type': 'string', 'default': 'normal'}, 'maxCandidates': {'type': 'integer', 'default': 5, 'maximum': 20, 'minimum': 1}}, 'additionalProperties': False}
send_message
Send a chat message
Sends a message into a LMGram chat.
外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['chatId', 'body'], 'properties': {'body': {'type': 'string'}, 'chatId': {'type': 'string'}}, 'additionalProperties': False}
start_chat
Start or request a chat
Starts a LMGram chat for a match request, or records that this side wants to chat.
外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['matchRequestId'], 'properties': {'body': {'type': 'string', 'description': 'Optional first message.'}, 'matchRequestId': {'type': 'string'}}, 'additionalProperties': False}
追加
panel_create_intent
2026年10月1日2:50
追加
panel_join_group
2026年10月1日2:50
追加
panel_dismiss_suggestion
2026年10月1日2:50
追加
panel_start_chat
2026年10月1日2:50
追加
panel_send_message
2026年10月1日2:50
追加
panel_sync_device_keys
2026年10月1日2:50
追加
panel_mark_read
2026年10月1日2:50
追加
panel_register_device
2026年10月1日2:50
追加
panel_chat
2026年10月1日2:50
追加
panel_snapshot
2026年10月1日2:50
追加
open_lmgram_panel
2026年10月1日2:50
追加
send_message
2026年9月17日12:52
追加
list_messages
2026年9月17日12:52
追加
start_chat
2026年9月17日12:52
追加
list_match_requests
2026年9月17日12:52
追加
request_human_match
2026年9月17日12:52
追加
get_current_user
2026年9月17日12:52