The eRS MCP Server gives AI assistants like Claude, ChatGPT, Microsoft Copilot, and more direct access to eResource Scheduler data, resources, projects, bookings, timesheets, requirements, rates, reports, and more. This article covers every tool available through that connection, what each one does, and how to prompt it effectively.
Haven't connected an AI assistant to eRS yet? See the eRS MCP Server: Setup Guide for connection steps.
How It Works
- An AI assistant is asked a question or given a task in plain language.
- The assistant matches that request to one of the tools available on the eRS MCP Server.
- The tool calls eRS to retrieve or update the relevant data.
- The result comes back into the conversation, and the assistant summarizes or acts on it.
Types
| Tool | What it does | Example prompt |
|---|---|---|
| ers_type_get | Shows resource or project types, and the fields needed to create one. |
"What resource types do we have?" "Show me the required fields for creating a Personnel resource." "List project types and their field codes." |
Resources
| Tool | What it does | Example prompt |
|---|---|---|
| ers_resource_search | Searches for resources. |
"Find resources named Amy." "Show everyone on the Design team." |
| ers_resource_get | Gets details for one resource. | "Get full details for the John Doe resource." |
| ers_resource_create | Creates a new resource. | "Create a new Personnel resource for Jordan Lee." |
| ers_resource_update | Updates a resource's details | "Update Amy's email to amy@example.com." |
| ers_resource_bulk_edit | Changes one field across many resources at once. | "Set skills to Python for all resources matching 'Engineer.'" |
| ers_resource_delete | Deletes a resource. Always asks for confirmation first. | "Delete the test resource 'Temp Contractor.'" |
| ers_manage_resource_record | Lists, creates, updates, or deletes a resource's timings, exceptions, and notes. |
"List Amy's calendar timings." "Add a day-off exception for Amy on 15 Aug." "Add a note to John Doe: Work completed for Task Bug fixing."
|
Projects
| Tool | What it does | Example prompt |
|---|---|---|
| ers_project_search | Searches for projects. |
"Find projects with Apollo in the title." "Show projects with priority High." |
| ers_project_get | Gets details for one project. | “What are the details for Project A?” |
| ers_project_create | Creates a new project. | "Create a Standard project titled Q4 Marketing Launch if it does not already exist." |
| ers_project_update | Updates a project's details | "Rename Apollo to Apollo Phase 2." |
| ers_project_bulk_edit | Changes one field across many projects at once. | "Set color to blue for all projects title matching 'Internal.'" |
| ers_project_delete | Deletes a project. Always asks for confirmation first. | "Delete the draft project 'Sandbox Test.'" |
| ers_manage_project_record | Lists, creates, updates, or deletes a project's tasks, phases, milestones, exceptions, and notes. |
"Create a Kickoff task on Apollo." "Add a Go-Live milestone on Apollo for 1 Sep." "List notes on Apollo." |
Bookings
| Tool | What it does | Example prompt |
|---|---|---|
| ers_booking_search | Searches for bookings in a date range. |
"Show Amy's bookings next week." "What is booked on Apollo in July?" |
| ers_booking_get | Gets details for one booking. | "Get details for that booking." |
| ers_booking_create | Creates a booking, including a recurring one. |
"Book Amy on Apollo Monday to Friday next week, 8 hours a day." “Create a daily booking for Albert Murphy on Project A through 5 Sep 2026, 8 total hours per day.” |
| ers_booking_bulk_move | Postpones, prepones, or extends booking dates. Always asks for confirmation first. | "Postpone all of Amy's July bookings by one week." "Extend Amy's Apollo booking by 3 days." |
| ers_booking_update | Updates a booking, including splitting it across dates. |
"Move Amy's Apollo booking to start next Monday." “Split Albert Murphy's Project E booking on 2026-09-21 so the second half becomes a new booking.” |
| ers_booking_bulk_edit | Changes one field across many bookings at once. | "Update this week’s bookings for Albert Murphy and Ayn Dante to mark the travel required to Yes.” |
| ers_booking_delete | Deletes a booking. Always asks for confirmation first. | "Delete the test booking on Sandbox." |
Timesheets
| Tool | What it does | Example prompt |
|---|---|---|
| ers_timesheet_search | Searches timesheet entries in a date range. |
"Show Amy's timesheets for last week." "What hours were logged on Apollo in July?" |
| ers_timesheet_get | Gets details for one timesheet entry. | "Get details for Albert Murphy's 18 Aug Project B timesheet." |
| ers_timesheet_create | Logs hours for a day or a date range. |
"Log 8 hours for Amy on Apollo yesterday." "Log 8 hours per working day for Amy on Apollo from 27–30 Jul." |
| ers_timesheet_update | Updates a logged timesheet entry. | “Change Albert Murphy's 18 Aug Project B time entry to 6 hours.” |
| ers_timesheet_delete | Deletes a timesheet entry. Always asks for confirmation first. | "Delete that timesheet entry for 8 hours on Project A." |
| ers_manage_timesheet_record | Lists, adds, edits, or deletes a comment on an existing timesheet entry. Always asks for confirmation before deleting. |
"Add a comment to Amy's timesheet from last Friday." "Show comments on Amy's last Friday timesheet entry." |
Timesheet Approvals
| Tool | What it does | Example prompt |
|---|---|---|
| ers_timesheet_decision | Approves or rejects a timesheet entry. Only acts when asked; never decides on its own. |
"Approve Amy's timesheet for last Friday." "Reject Amy's timesheet for last Friday." |
Requirements
| Tool | What it does | Example prompt |
|---|---|---|
| ers_requirement_search | Searches requirements in a date range. |
"Show open requirements for next month." "What roles are needed on Apollo in August?" |
| ers_requirement_get | Gets details for one requirement. | "Get details for Software Developer requirements for Project A." |
| ers_requirement_create | Creates a new requirement. | "Create a requirement for a Senior Dev on Apollo starting 1 Sep." |
| ers_requirement_update | Updates a requirement. | "Change Senior Dev requirement's role to Lead." |
| ers_requirement_bulk_edit | Changes one field across many requirements at once. | "Set role to Consultant for all open requirements on Apollo." |
| ers_requirement_delete | Deletes a requirement. Always asks for confirmation first. | "Delete the draft requirement just created." |
| ers_manage_requirement_record | Lists, adds, edits, or deletes a comment on a requirement. Always asks for confirmation before deleting. |
"Add a comment on the Senior Dev requirement for Apollo." "Show comments on that requirement." |
Financial Rates
| Tool | What it does | Example prompt |
|---|---|---|
| ers_rate | Lists, creates, updates, or deletes rates for a resource, project, or role. |
"List resource rates for John Doe." "Set Amy's cost rate to 50 from 1 Aug." "Show billing rates for project Apollo." "Add a project billing rate of 120 for Apollo effective 1 Sep." |
| ers_project_billable_update | Marks a project as billable or not. |
"Mark Apollo as billable." "Set Sandbox to non-billable." |
Reports
| Tool | What it does | Example prompt |
|---|---|---|
| ers_report_get | Runs a report, like utilization, availability, financials, or timesheets. |
"Show planned utilization for July." "Who is available next week on the Design team?" "Planned vs actual financials for Q3." "Resource gap for August on Apollo." "Project progress for the top 25 projects." "Timesheet report for last month." |
Calendars (Read-Only)
| Tool | What it does | Example prompt |
|---|---|---|
| ers_calendar_get | Shows calendars, holidays, and exceptions |
"List all calendars." "Show holidays and exceptions on the calendar named United States." |
Tags
| Tool | What it does | Example prompt |
|---|---|---|
| ers_tag_search | Finds existing tags. |
"What tags do we already have?" "Find tags containing 'Full.'" |
| ers_tag_create | Creates a new tag. | "Create a tag called Urgent." |
Best Practices for Prompting
- Be specific. Naming the resource, project, or date range gets a better answer than a broad question.
- Break big requests into smaller ones. Instead of "who should work on this project," first ask who's free, then narrow it down by role or skill.
- Ask for a format. Saying "as a table" or "as a list" gives a cleaner answer.
- Anything that deletes records or changes many at once needs confirmation first. Read it carefully before approving.
- Treat AI answers as a starting point, not the final word. Double-check anything important, like staffing or budget, in eRS itself.
- Walking the assistant through the usual steps of a process helps it follow the same path instead of guessing.
- Delete tools should stay out of any auto-approve or allowlist settings in the AI tool, so every delete always asks for approval first.