Available Tools =============== .. important:: **Beta Feature** — MCP Server (AI Access) is currently in beta and is being rolled out to databases over the coming weeks. It may not be available in your database yet, and the details on this page may still change during the beta. See :doc:`index`. A *tool* is a single operation the AI agent can perform in TouchPoint. You never call these directly — you ask the agent for what you want in plain language and it decides which tools to use. The list below is here so you know what is possible, and so an administrator can see exactly what surface area is exposed. Every tool runs as *you*. If your TouchPoint roles do not let you see an organization or edit a person, the tool cannot either, and results are still filtered by ``McpViewContact`` and ``McpViewDemographics``. Tools marked **write** additionally require the `Allow Write Actions` setting to be on for your church. People ------ | ``find_person`` — search for people by name, email, phone, or address | ``get_person_profile`` — full profile for one person | ``get_people_profiles`` — profiles for several people at once | ``get_family`` — family members and their relationships | ``list_orgs_for_person`` — the involvements a person belongs to | ``create_person`` — **write** — add a new person record | ``update_person`` — **write** — change fields on a person | ``update_person_phone`` — **write** — change a phone number | ``update_family`` — **write** — change family-level fields such as the address Involvements and Organizations ------------------------------ | ``find_organization`` — search involvements by name | ``get_organization`` — settings and details for one involvement | ``list_org_members`` — members of an involvement | ``list_org_leaders`` — leaders of an involvement | ``list_orgs_by_division`` — involvements within a division | ``find_program`` / ``find_division`` — locate programs and divisions | ``list_member_types`` — the member types available | ``add_org_member`` — **write** — add someone to an involvement | ``drop_org_member`` — **write** — drop someone from an involvement | ``change_org_member_type`` — **write** — change a member's type Attendance ---------- | ``list_meetings_for_org`` — meetings for an involvement | ``get_meeting`` — details for one meeting | ``get_meeting_counts`` — headcounts for a meeting | ``list_meeting_attendees`` — who attended a meeting | ``get_attendance_for_person`` — a person's attendance history Events and Registrations ------------------------ | ``list_calendar`` — public calendar events | ``list_event_registrations`` — registrations for an event | ``get_event_registration_for_person`` — one person's registration | ``list_reservations_for_meeting`` — reservations tied to a meeting Giving ------ Giving tools return contribution data, so they are available only to users who already have the appropriate finance roles in TouchPoint. | ``get_giving_for_person`` — individual contributions | ``get_giving_summary_for_person`` — totals by year or fund | ``get_pledge_summary_for_person`` — pledges and progress | ``list_funds`` — contribution funds | ``get_lapsed_givers`` — givers who have stopped Search Builder -------------- | ``list_saved_queries`` / ``find_saved_query`` / ``describe_saved_query`` — browse saved searches | ``run_saved_query`` — run a saved search and return the people it finds | ``list_query_fields`` / ``describe_query_field`` — discover what can be searched on | ``list_lookup_codes`` / ``list_extra_value_fields`` — valid values for coded and extra-value fields | ``preview_query_count`` — count the results of a search before running it | ``run_built_query`` — run a search the agent has assembled from your description | ``save_built_query`` — **write** — save that search back into TouchPoint Process Builder --------------- | ``list_processes`` / ``get_process`` — the processes defined for your church | ``list_processes_for_person`` — processes a person is enrolled in | ``enroll_person_in_process`` — **write** — start someone on a process | ``complete_step_for_person`` — **write** — mark a step complete | ``complete_process_for_person`` — **write** — finish a process | ``abandon_process_for_person`` — **write** — abandon a process | ``move_person_to_process`` — **write** — move someone to a different process Tasks, Notes, and Contact Logging --------------------------------- | ``add_task_note`` — **write** — add a note to a task | ``complete_task`` — **write** — complete a task | ``log_call`` / ``log_message`` / ``log_email`` — **write** — record a contact attempt Special Content --------------- | ``list_special_content`` / ``get_special_content`` — browse HTML, text, and Python content | ``create_special_content`` / ``update_special_content`` — **write** — add or edit that content User Administration ------------------- These tools are restricted to administrators. | ``list_roles`` / ``list_user_roles`` / ``list_users_in_role`` — role membership | ``find_user`` / ``list_users_for_person`` — locate user accounts | ``create_user_for_person`` — **write** — create a user account | ``add_role_to_user`` / ``remove_role_from_user`` — **write** — change a user's roles | ``unlock_user`` — **write** — unlock a locked-out account | ``set_must_change_password`` — **write** — force a password change at next login | ``reset_password`` — **write** — send a password reset Session ------- | ``who_am_i`` — reports the user the connection is running as, along with the roles and permissions in effect. Use it to confirm a new connection works. Result Limits ------------- Tools that return lists are capped by the `Max Results Per Tool Call` setting, so a broad request comes back as one page at a time and the agent asks for more if it needs them. Raising that setting increases the amount of data a single call can send to the AI provider.