{
  "schemaVersion": "2025-03-26",
  "name": "percontact-mcp",
  "displayName": "perContact",
  "description": "Contact manager with per-contact journal, groups, custom fields, and optional field-level encryption.",
  "version": "1.0.0",
  "endpoint": "https://percontact.com/mcp",
  "transport": "streamable-http",
  "protocolVersion": "2025-03-26",
  "authentication": {
    "type": "bearer",
    "header": "Authorization",
    "scheme": "Bearer",
    "tokenLocation": "header",
    "registration": {
      "url": "https://percontact.com/profile.php#api-keys",
      "description": "Sign in to perContact and generate an API key from your profile page."
    }
  },
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false,
    "sampling": false
  },
  "scopes": [
    "contacts:read",
    "contacts:write",
    "journal:read",
    "journal:write",
    "groups:read",
    "groups:write"
  ],
  "tools": [
    {"name": "search_contacts",           "description": "Search and list contacts with filters and pagination"},
    {"name": "get_contact",               "description": "Fetch one contact with custom fields, files, images, groups"},
    {"name": "create_contact",            "description": "Create a new contact"},
    {"name": "update_contact",            "description": "Update an existing contact"},
    {"name": "delete_contact",            "description": "Delete a contact"},
    {"name": "toggle_contact_public",     "description": "Toggle public share and return shareable URL"},
    {"name": "list_journal",              "description": "List journal entries for a contact"},
    {"name": "add_journal_entry",         "description": "Add a journal entry"},
    {"name": "update_journal_entry",      "description": "Update a journal entry"},
    {"name": "delete_journal_entry",      "description": "Delete a journal entry"},
    {"name": "list_groups",               "description": "List groups"},
    {"name": "create_group",              "description": "Create a group"},
    {"name": "add_contact_to_group",      "description": "Add a contact to a group"},
    {"name": "remove_contact_from_group", "description": "Remove a contact from a group"},
    {"name": "list_group_members",        "description": "List group members"},
    {"name": "list_custom_fields",        "description": "List custom fields"},
    {"name": "list_statuses",             "description": "List status labels"},
    {"name": "whoami",                    "description": "Return identity for the authenticated API key"}
  ],
  "publisher": {
    "name": "perContact",
    "url": "https://percontact.com",
    "contact": "support@percontact.com"
  },
  "documentation": "https://percontact.com/api/v1/openapi.json",
  "privacyPolicy": "https://percontact.com/privacy",
  "termsOfService": "https://percontact.com/terms"
}
