MCP-Server

LMGram

io.github.saezbaldo/lmgram
Kommunikation Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

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.
Nur Lesen Idempotent
Eingabeschema
{'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.
Nur Lesen Idempotent
Eingabeschema
{'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.
Nur Lesen Idempotent
Eingabeschema
{'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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'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.
Nur Lesen Idempotent
Eingabeschema
{'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}
Ausgabeschema
{'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.
Externer Zugriff
Eingabeschema
{'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}
Ausgabeschema
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
panel_dismiss_suggestion
Dismiss suggestion
Decline an unopened match suggestion.
Destruktiv Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', 'required': ['contextId', 'matchRequestId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'matchRequestId': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', 'required': ['contextId', 'roomId'], 'properties': {'roomId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', 'required': ['contextId', 'chatId'], 'properties': {'chatId': {'type': 'string', 'maxLength': 32}, 'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'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}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'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}
Ausgabeschema
{'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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'required': ['contextId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}}, 'additionalProperties': False}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', 'required': ['contextId', 'matchRequestId'], 'properties': {'contextId': {'type': 'string', 'maxLength': 43, 'minLength': 43}, 'matchRequestId': {'type': 'string', 'maxLength': 32}}, 'additionalProperties': False}
Ausgabeschema
{'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.
Externer Zugriff Idempotent
Eingabeschema
{'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}
Ausgabeschema
{'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.
Externer Zugriff
Eingabeschema
{'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.
Externer Zugriff
Eingabeschema
{'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.
Externer Zugriff
Eingabeschema
{'type': 'object', 'required': ['matchRequestId'], 'properties': {'body': {'type': 'string', 'description': 'Optional first message.'}, 'matchRequestId': {'type': 'string'}}, 'additionalProperties': False}
Hinzugefügt
panel_create_intent
1. October 2026 02:50
Hinzugefügt
panel_join_group
1. October 2026 02:50
Hinzugefügt
panel_dismiss_suggestion
1. October 2026 02:50
Hinzugefügt
panel_start_chat
1. October 2026 02:50
Hinzugefügt
panel_send_message
1. October 2026 02:50
Hinzugefügt
panel_sync_device_keys
1. October 2026 02:50
Hinzugefügt
panel_mark_read
1. October 2026 02:50
Hinzugefügt
panel_register_device
1. October 2026 02:50
Hinzugefügt
panel_chat
1. October 2026 02:50
Hinzugefügt
panel_snapshot
1. October 2026 02:50
Hinzugefügt
open_lmgram_panel
1. October 2026 02:50
Hinzugefügt
send_message
17. September 2026 12:52
Hinzugefügt
list_messages
17. September 2026 12:52
Hinzugefügt
start_chat
17. September 2026 12:52
Hinzugefügt
list_match_requests
17. September 2026 12:52
Hinzugefügt
request_human_match
17. September 2026 12:52
Hinzugefügt
get_current_user
17. September 2026 12:52