{"apiVersion":"v1","directorySlug":"kevinchat-mcp-7b24aba165","title":"Kevin","description":"How to connect Kevin to any MCP-capable AI assistant, including the MCP server URL, OAuth details and the logo download.","pageUrl":"https://www.mcpbundles.com/skills/kevinchat-mcp-7b24aba165","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://kevinchat.com/mcp","hostedMcpUrl":null,"toolCount":38,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.kevinchat/kevinchat-mcp-7b24aba165","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"read_global_room","description":"Read up to 15 live messages from Kevin's single public global room. Messages are public and disappear 30 minutes after they were posted. No authorization needed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Show the public conversation","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_global_room","displayName":"Show the public conversation"},{"name":"read_profile","description":"Read one public Kevin profile by handle: its details and links, a page of its published entries, and up to 15 live messages from its public profile room. Read-only: it does not count a profile view.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"entries_cursor":{"type":"string","maxLength":512,"minLength":1},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Show someone's profile","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_profile","displayName":"Show someone's profile"},{"name":"get_news","description":"Answer any question about what is currently going on across Kevin: the news, the biggest topic, what people are talking about, the aggregate public mood, interesting public projects and surprising connections. Ask it in the person's own words, e.g. 'Was gibt es Neues?' or 'What is the big topic today?'. Mood describes public conversation as a whole, never an individual person. Public and read-only.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["question"],"properties":{"question":{"type":"string","maxLength":300,"minLength":2},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Ask what is going on right now","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_news","displayName":"Ask what is going on right now"},{"name":"find_events","description":"Find public events people published on their Kevin profiles: today, tomorrow, this week, the weekend, this month or simply upcoming. Uses structured published entries, so future events stay findable long after the chats that mentioned them expired. Public and read-only.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"range":{"enum":["now","today","tomorrow","this_week","weekend","this_month","upcoming"],"type":"string"},"question":{"type":"string","maxLength":300,"minLength":2},"timezone":{"type":"string","maxLength":64},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Find upcoming events","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"find_events","displayName":"Find upcoming events"},{"name":"get_network_status","description":"The public Kevin statistics, the same numbers shown on kevinchat.com/stats: how many people are active now, in the last 24 hours and in the last 7 days, messages and rooms live in the last 30 minutes, public profiles and published entries, new profiles and entries in the last 24 hours, how many accounts connected Kevin from ChatGPT, and anonymous website visit counts. Counts only, never identities and never internal server metrics. Public and read-only.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Show how busy Kevin is","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_network_status","displayName":"Show how busy Kevin is"},{"name":"get_ai_read_analytics","description":"Show aggregate read counts for the signed-in person's own published profiles and entries across the AI discovery surfaces Kevin serves. Returns totals, breakdowns by surface and coarse reader class, per-item numbers and a daily series. No reader identity, session, address or timeline is stored or returned — only anonymous counts.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"days":{"type":"integer","maximum":90,"exclusiveMinimum":0}},"additionalProperties":false},"title":"Show how often AI systems read my public items","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_ai_read_analytics","displayName":"Show how often AI systems read my public items"},{"name":"read_my_profile","description":"Read the signed-in person's own Kevin profile, links and public counters. When people suggestions are switched on, each suggested profile also carries neutral resonance cues across six qualitative signals (thematic, need, complementary, timeliness, context, intent) plus the older rhythm/resonance/harmony/complementarity/tension fields and a bounded reasons list, all derived by plain code from published words — conversation starters, never a compatibility verdict or score. Interpret them yourself","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Show my profile","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_my_profile","displayName":"Show my profile"},{"name":"set_matching_preferences","description":"Switch Kevin's private, mutual people candidates on or off for the signed-in person. Kevin only prepares eligible candidates deterministically from published content and makes no judgement about who fits; you compare the returned public facts yourself. Suggestions are built only from published profile text and published entries, are visible only to the two people involved, and Kevin never follows anybody automatically. Turning them off retracts every open suggestion on both sides; existing follo","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["enabled","idempotency_key"],"properties":{"enabled":{"type":"boolean"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Turn suggested people on or off","logicalName":"set_matching_preferences","displayName":"Turn suggested people on or off","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"dismiss_profile_match","description":"Remove one suggested person. The suggestion disappears for both people and the other person never learns who dismissed it.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle","idempotency_key"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Stop showing a suggested person","logicalName":"dismiss_profile_match","displayName":"Stop showing a suggested person","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_kevin_support","description":"Kevin's official support desk AND the complete Kevin product guide. Use it for any question about what Kevin is or how any part of it works, in German or English: that Kevin is an MCP-native AI social network with user-controlled AI-readable profiles that a person can create and edit purely by talking (including by voice) and then use from any compatible MCP assistant, how to install Kevin in a compatible MCP host, how someone controls how AI represents them, and that an AI-readable profile is p","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["question"],"properties":{"question":{"type":"string","maxLength":500,"minLength":2}},"additionalProperties":false},"title":"Get official Kevin support","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_kevin_support","displayName":"Get official Kevin support"},{"name":"switch_profile","description":"Switch which of the signed-in person's own Kevin profiles Kevin posts, writes and reads as. Some people hold more than one public profile, for example their own name and a second handle. Call it when somebody says something like 'switch to @satoshi', 'post as my other profile' or asks which profiles they have. Called without a handle it simply reports the active profile and every profile they own. It changes nothing public and never shows anybody else's profiles.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"handle":{"type":"string","maxLength":40}},"additionalProperties":false},"title":"Switch between my Kevin profiles","logicalName":"switch_profile","displayName":"Switch between my Kevin profiles","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"save_my_profile","description":"Create the person's Kevin profile, or update handle, name, bio, language and links. Handles are lowercase letters, digits and underscores. All text is moderated before it is stored and becomes publicly visible.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["idempotency_key"],"properties":{"bio":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"name":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]},"links":{"type":"array","items":{"type":"object","required":["label","url"],"properties":{"url":{"type":"string","format":"uri"},"label":{"type":"string","maxLength":60,"minLength":1}},"additionalProperties":false},"maxItems":10},"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Set up or edit my profile","logicalName":"save_my_profile","displayName":"Set up or edit my profile","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_my_entries","description":"List the person's own structured profile entries, drafts included, ten per page with an opaque cursor.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"cursor":{"type":"string","maxLength":512,"minLength":1},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"List my projects and events","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_my_entries","displayName":"List my projects and events"},{"name":"create_profile_entry","description":"Create one structured entry (project, artwork, event or custom) on the person's profile. It is always created as a private draft and is never public: only publish_profile_entry makes an entry publicly visible. Entries are informational portfolio descriptions only. At most 50 entries per profile.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entryType","title","idempotency_key"],"properties":{"tags":{"type":"array","items":{"type":"string","maxLength":32,"minLength":1},"maxItems":64},"links":{"type":"array","items":{"type":"object","required":["label","url"],"properties":{"url":{"type":"string","format":"uri","maxLength":2048},"label":{"type":"string","maxLength":60,"minLength":1}},"additionalProperties":false},"maxItems":10},"endsAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"summary":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"location":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]},"startsAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"dateLabel":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]},"entryType":{"enum":["project","artwork","event","custom"],"type":"string"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Create a portfolio entry draft","logicalName":"create_profile_entry","displayName":"Create a portfolio entry draft","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"update_profile_entry","description":"Update fields of one of the person's own profile entries. Only the supplied fields change. Editing, hiding, exporting and deleting entries are all free.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entry_id","idempotency_key"],"properties":{"tags":{"type":"array","items":{"type":"string","maxLength":32,"minLength":1},"maxItems":64},"links":{"type":"array","items":{"type":"object","required":["label","url"],"properties":{"url":{"type":"string","format":"uri","maxLength":2048},"label":{"type":"string","maxLength":60,"minLength":1}},"additionalProperties":false},"maxItems":10},"endsAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"summary":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"entry_id":{"type":"string","format":"uuid"},"location":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]},"startsAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"dateLabel":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]},"entryType":{"enum":["project","artwork","event","custom"],"type":"string"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Edit one of my entries","logicalName":"update_profile_entry","displayName":"Edit one of my entries","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_profile_entry","description":"Permanently delete one of the person's own profile entries and its links. The entry is physically removed and cannot be restored, so it requires confirm=true.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entry_id","confirm","idempotency_key"],"properties":{"confirm":{"type":"boolean","const":true},"entry_id":{"type":"string","format":"uuid"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Delete one of my entries","logicalName":"delete_profile_entry","displayName":"Delete one of my entries","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"unpublish_profile_entry","description":"Hide one of the person's own entries from public pages. It can change nothing else about the entry.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entry_id","idempotency_key"],"properties":{"entry_id":{"type":"string","format":"uuid"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Hide one of my entries","logicalName":"unpublish_profile_entry","displayName":"Hide one of my entries","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"publish_profile_entry","description":"Publish or republish one of the person's own entries.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entry_id","idempotency_key"],"properties":{"entry_id":{"type":"string","format":"uuid"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"}},"additionalProperties":false},"title":"Publish one of my entries","logicalName":"publish_profile_entry","displayName":"Publish one of my entries","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"sort_profile_entries","description":"Set the display order of the person's own entries.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["entry_ids","idempotency_key"],"properties":{"entry_ids":{"type":"array","items":{"type":"string","format":"uuid"},"maxItems":50,"minItems":1},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Change the order of my entries","logicalName":"sort_profile_entries","displayName":"Change the order of my entries","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"export_my_portfolio","description":"Export the person's profile and all entries including drafts and links as structured data.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"Export my profile data","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"export_my_portfolio","displayName":"Export my profile data"},{"name":"post_room_message","description":"Post one public message, at most 500 characters and 2 https links, into the global room or a profile room. The message is public and is physically deleted after 30 minutes. The result also contains the room as it looks right after posting, so the reply shows the live conversation instead of only confirming the write.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["room","body","idempotency_key"],"properties":{"body":{"type":"string","maxLength":500,"minLength":1},"room":{"anyOf":[{"type":"string","const":"global"},{"type":"object","required":["handle"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2}},"additionalProperties":false}]},"idempotency_key":{"type":"string","maxLength":200,"minLength":8},"reader_language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z0-9]{2,8})?$"},"reply_to_message_id":{"type":["string","null"]}},"additionalProperties":false},"title":"Say something in a public room","logicalName":"post_room_message","displayName":"Say something in a public room","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_room_message","description":"Delete a message the person wrote, or any message inside their own profile room.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["message_id","idempotency_key"],"properties":{"message_id":{"type":"string","format":"uuid"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Delete a message","logicalName":"delete_room_message","displayName":"Delete a message","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"clear_my_profile_room","description":"Delete every live message in the person's own public profile room. Bulk and irreversible, so it requires confirm=true.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["confirm","idempotency_key"],"properties":{"confirm":{"type":"boolean","const":true},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Clear my own room","logicalName":"clear_my_profile_room","displayName":"Clear my own room","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"report_content","description":"Report public content that breaks Kevin's rules — spam, harassment, sexual content, violence, self-harm, scams, impersonation or anything unsafe for younger people. Reports are private: they are never shown to anyone else, never published and never counted in News or Discover. Reports touching minor safety, sexual content or self-harm hide the reported message from public view immediately, pending review; nothing is deleted automatically. Blocking a profile is a separate control.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["target_kind","target_ref","reason","idempotency_key"],"properties":{"note":{"type":"string","maxLength":500},"reason":{"enum":["spam","harassment","sexual_content","violence","self_harm","scam","minor_safety","impersonation","other"],"type":"string"},"target_ref":{"type":"string","maxLength":80,"minLength":1},"target_kind":{"enum":["message","profile","entry"],"type":"string"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Report a message, profile or entry","logicalName":"report_content","displayName":"Report a message, profile or entry","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"set_profile_like","description":"Set whether the person likes another profile. Exactly one like per person and profile; only the aggregate count is public, never who liked.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle","liked","idempotency_key"],"properties":{"liked":{"type":"boolean"},"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Like or unlike someone","logicalName":"set_profile_like","displayName":"Like or unlike someone","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"set_profile_follow","description":"Set whether the person follows another profile. Following feeds the pull-based activity inbox; Kevin sends no push notifications.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle","following","idempotency_key"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"following":{"type":"boolean"},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Follow or unfollow someone","logicalName":"set_profile_follow","displayName":"Follow or unfollow someone","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"block_profile","description":"Block another profile. Blocking permanently removes follows and likes in both directions and hides both people from each other. Unblocking later does not bring the removed follows or likes back, so this requires confirm=true.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle","confirm","idempotency_key"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"confirm":{"type":"boolean","const":true},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Block someone","logicalName":"block_profile","displayName":"Block someone","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"unblock_profile","description":"Lift a block the person set earlier. The two people can see and reach each other again. Follows and likes removed by the block are not restored.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["handle","idempotency_key"],"properties":{"handle":{"type":"string","pattern":"^[a-z][a-z0-9_]*$","maxLength":30,"minLength":2},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Unblock someone","logicalName":"unblock_profile","displayName":"Unblock someone","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"read_activity_inbox","description":"Show up to 50 recent activity items — mentions, follows, likes, messages in the person's room and new entries from profiles they follow — plus the anonymous new-profile-view count. Pull-based: nothing is pushed.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"cursor":{"type":"string","maxLength":512,"minLength":1}},"additionalProperties":false},"title":"Show my activity","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"read_activity_inbox","displayName":"Show my activity"},{"name":"mark_activity_read","description":"Move the person's private read checkpoint to now and reset the new-profile-view delta. Nothing public changes.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["idempotency_key"],"properties":{"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Mark my activity as read","logicalName":"mark_activity_read","displayName":"Mark my activity as read","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_my_kevin_account","description":"Permanently delete the person's Kevin account: profile, entries, links, messages, social connections and activity. Irreversible and requires confirm=true.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["confirm"],"properties":{"confirm":{"type":"boolean","const":true}},"additionalProperties":false},"title":"Delete my profile and all my data","logicalName":"delete_my_kevin_account","displayName":"Delete my profile and all my data","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_connected_accounts","description":"List the sources the signed-in person has handed to Kevin's Social Media Profile Builder, with the state of each one, when it was last imported and whether imported material is still inside its short retention window. Read-only: it never imports and never shows authorization tokens or raw imported material.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"Show my connected sources","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_connected_accounts","displayName":"Show my connected sources"},{"name":"get_profile_builder_status","description":"Report the state of the signed-in person's profile builder: their sources, whether a run produced drafts, how many drafts are still waiting for a decision, and how long their imported material is kept. Use it before answering any question about their own import, instead of guessing. Rules of the feature come from get_kevin_support.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"Show my profile builder state","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_profile_builder_status","displayName":"Show my profile builder state"},{"name":"get_profile_builder_draft","description":"Show the private draft the profile builder proposed: a suggested profile name, bio and links plus proposed entry drafts, each with the sources it came from and whether it would update an entry that already exists. A draft is private and is never visible to anyone until the person accepts it and it is saved and published.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"Show my profile builder draft","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_profile_builder_draft","displayName":"Show my profile builder draft"},{"name":"start_profile_builder","description":"Build a private profile and entry drafts from material the signed-in person hands over themselves — the text of their own profile or an export they downloaded from a provider. Kevin never logs in anywhere, never asks for a password and never fetches a website. The run only proposes what the material actually contains; a date, employer, location or link with no evidence is dropped. It needs an idempotency key and changes nothing public: it produces drafts the person reviews afterwards.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["sources","idempotency_key"],"properties":{"sources":{"type":"array","items":{"type":"object","required":["source","material"],"properties":{"handle":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]},"source":{"type":"string","maxLength":40,"minLength":1},"material":{"type":"string","maxLength":20000,"minLength":20}},"additionalProperties":false},"maxItems":5,"minItems":1},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Build a profile draft from my own material","logicalName":"start_profile_builder","displayName":"Build a profile draft from my own material","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"apply_profile_builder_changes","description":"Save the drafts the signed-in person explicitly accepted into their Kevin profile and entries, optionally publishing an accepted entry. Every accepted text passes Kevin's normal review. Needs explicit confirmation and an idempotency key. Never claim something was saved or published before this tool returns success; drafts that are not listed as accepted stay private or are rejected.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["confirm","idempotency_key"],"properties":{"confirm":{"type":"boolean","const":true},"profile_bio":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"profile_name":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]},"accept_entries":{"type":"array","items":{"type":"object","required":["draft_id"],"properties":{"publish":{"type":"boolean"},"summary":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"draft_id":{"type":"string","format":"uuid"}},"additionalProperties":false},"maxItems":20},"accept_profile":{"type":"boolean"},"reject_entries":{"type":"array","items":{"type":"string","format":"uuid"},"maxItems":20},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Save the drafts I accepted","logicalName":"apply_profile_builder_changes","displayName":"Save the drafts I accepted","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"disconnect_social_account","description":"Remove one source from Kevin's profile builder and delete the material imported from it. Free at any time. It never touches the profile or entries the person already saved. Needs explicit confirmation and an idempotency key.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["source","confirm","idempotency_key"],"properties":{"source":{"type":"string","maxLength":40,"minLength":1},"confirm":{"type":"boolean","const":true},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Disconnect a source","logicalName":"disconnect_social_account","displayName":"Disconnect a source","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"delete_imported_social_data","description":"Permanently delete every piece of material the signed-in person imported into the profile builder and every draft built from it. Free at any time, and it never touches the profile or entries they already saved. Needs explicit confirmation and an idempotency key.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["confirm","idempotency_key"],"properties":{"confirm":{"type":"boolean","const":true},"idempotency_key":{"type":"string","maxLength":200,"minLength":8}},"additionalProperties":false},"title":"Delete my imported material and drafts","logicalName":"delete_imported_social_data","displayName":"Delete my imported material and drafts","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Kevin&config=eyJ1cmwiOiAiaHR0cHM6Ly9rZXZpbmNoYXQuY29tL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Kevin%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fkevinchat.com%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Kevin%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fkevinchat.com%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Kevin&connectorUrl=https%3A%2F%2Fkevinchat.com%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Kevin\" --url \"https://kevinchat.com/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/kevinchat-mcp-7b24aba165","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/kevinchat-mcp-7b24aba165/tools/{tool}","mcpServerUrl":"https://kevinchat.com/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/kevinchat-mcp-7b24aba165?live=1"}