Eduframe

189 tools. 99 can modify or destroy data without limits.

30 destructive tools with no built-in limits. Policy required.

Last updated:

99 can modify or destroy data
90 read-only
189 tools total

Community server · catalogue entry verified 03/07/2026

How to control Eduframe ↓

What Eduframe exposes to your agents

Read (90) Write / Execute (69) Destructive / Financial (30)
Critical Risk

The most dangerous Eduframe tools

99 of Eduframe's 189 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Eduframe

PolicyLayer is an MCP gateway — it sits between your AI agents and Eduframe, and nothing reaches the server without passing your rules. These are the rules we recommend:

Block financial tools by default
{
  "create_invoice_payment_by_invoice_id": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Requires human approval."
      }
    ]
  }
}

Financial tools should be explicitly enabled per use case, not open by default.

Deny destructive operations
{
  "cancel_enrollment": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "activate_teacher": {
    "limits": [
      {
        "counter": "activate_teacher_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "deny_order": {
    "limits": [
      {
        "counter": "deny_order_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Eduframe — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON EDUFRAME →

Instant setup, no code required.

All 189 Eduframe tools

DESTRUCTIVE 29 tools
Destructive cancel_enrollment Cancel an enrollment Destructive cancel_order Cancel an order Destructive cancel_planned_course Cancel a planned course. Destructive cancel_program_enrollment Cancel a program enrollment Destructive delete_affiliation Delete an affiliation Destructive delete_authentication_from_user Remove an authentication from a user. Destructive delete_certificate_from_program_enrollment Deletes a certificate from a program enrollment Destructive delete_comment Delete a comment. Destructive delete_course_location Delete a course location. Destructive delete_custom_record Delete a custom record Destructive delete_grade Delete a grade. Destructive delete_invoice_payment_by_id_and_invoice_id Delete a payment. Destructive delete_label Delete a label Destructive delete_lead Delete a lead. Destructive delete_material Delete a material. Destructive delete_material_group Delete a material group. Destructive delete_meeting Delete a meeting. Destructive delete_meeting_location Delete a course location. Destructive delete_option_of_custom_field Delete an option from custom field Destructive delete_organization_affiliation Delete an organization affiliation record Destructive delete_planning_attendee Remove a teacher from a meeting or planning event. Destructive delete_planning_event Delete a planning event. Destructive delete_program Delete a program Destructive delete_program_edition Delete a program edition Destructive delete_program_element Delete a element Destructive delete_task Delete a task. Destructive delete_teacher_enrollment Delete a teacher enrollment. Destructive delete_teacher_role Delete a teacher role. Destructive delete_webhook Delete a webhook.
WRITE 69 tools
Write activate_teacher Mark teacher as active Write add_label_to_order Add label to an order Write add_option_to_custom_field Add an option to a custom field Write approve_order Approve an order Write award_certificate_to_program_enrollment Awards a certificate to a program enrollment Write create_account Create an account Write create_affiliation Create an affiliation affiliations Write create_authentication Create an authentication. Write create_category Create a category. Write create_comment Create a comment. Write create_course Create a course. Write create_course_location Create a course location. Write create_course_variant Create a course variant Write create_custom_record Create a custom record Write create_email_message_by_user_id Create and send an email message to a user Write create_grade Create a grade Write create_invoice Create an invoice. Write create_invoice_vat Create an invoice vat. Write create_label Create a label Write create_lead Create a lead. Write create_material Create a material. Write create_material_group Create a material group. Write create_meeting_location Create a meeting location. Write create_order Create an order. Write create_organization_affiliation Create an organization affiliation record Write create_planned_course Create a planned course. Write create_planning_attendee Assign a teacher to a meeting or planning event. Write create_planning_required_teacher_group_attendee Assign a teacher to a required teacher group Write create_program Create a program Write create_program_edition Create a program edition Write create_program_element Create a program element Write create_task Create a task. Write create_teacher Create a new teacher Write create_teacher_enrollment Enroll a teacher to a planned_course. Write create_teacher_enrollment_by_planned_course_id Enroll a teacher to the given planned course. Write create_teacher_role Create a teacher role. Write create_user Create a user. Write create_webhook Register a webhook. Write deactivate_teacher Mark teacher as inactive Write get_program_edition_of_elements_batch Adds a set of elements to a program edition. Write open_invoice Changes the state from concept to open.\nThis will assign the actual invoice number so it Write set_attendance Set an attendance. Write update_account Update an account Write update_affiliation Update an affiliation. Write update_catalog_product Update a catalog product Write update_catalog_variant Update a catalog variant Write update_category Update a category. Write update_comment Update a comment. Write update_course Update a course. Write update_course_location Update a course location. Write update_custom_record Update a custom record Write update_enrollment Update an enrollment Write update_grade Update a grade Write update_label Update a label Write update_lead Update a lead Write update_material Update a material. Write update_material_group Update a material group. Write update_meeting_location Update a meeting location. Write update_option_of_custom_field Update an option of a custom field Write update_organization_affiliation Update an organization affiliation record Write update_planned_course Update a planned course. Write update_program Update a program Write update_program_edition Update a program edition Write update_program_element Update an element Write update_task Update a task. Write update_teacher_enrollment Update a teacher enrollment. Write update_teacher_role Update a teacher role. Write update_user Update a user. Write update_webhook Update a webhook.
READ 90 tools
Read deny_order Deny an order Read get_account Get a single account Read get_accounts Get all accounts Read get_affiliations Get all affiliations Read get_associations_of_object Get all associations of a system object Read get_attendances Get all attendance records Read get_authentications_by_user_id Get the authentications of an user Read get_catalog_product Get a catalog product record Read get_catalog_products Get all catalog products Read get_catalog_variant Get a catalog variant record Read get_catalog_variants Get all catalog variants Read get_categories Get all category records Read get_category Get a category record Read get_certificate Get an awarded certificate Read get_certificates Get all awarded certificates Read get_course Get a course record Read get_course_location Get a course location record Read get_course_locations Get all course location records Read get_course_tabs Get all course tab records Read get_course_variant Get a course variant record Read get_course_variants Get all course variant records Read get_courses Get all course records Read get_credit_categories Get all credit category records Read get_credits Get all credit records Read get_current_educator Get an educator record Read get_custom_object_by_object_slug Get a custom object by the object slug Read get_custom_objects Get all custom objects Read get_custom_record Get a custom record Read get_custom_records Get all custom records Read get_discount_codes Get all discount codes Read get_edition_description_sections Get all edition description section records Read get_elements_of_program_edition Get the elements of a program edition Read get_enrollment Get an enrollment record Read get_enrollments Get all enrollment records Read get_grade Get a grade record Read get_invoice Get an invoice record Read get_invoice_payments_by_invoice_id Get all payment records of an invoice Read get_invoice_pdf Get the base64 encoded version of the invoice PDF Read get_invoice_vats Get all invoice vat records Read get_label Get a label Read get_labels Get all labels Read get_lead Get one lead record Read get_leads Get all lead records Read get_material_group Get a material group record Read get_material_groups Get all material group records Read get_materials Get all material records Read get_meeting Get an meeting record Read get_meeting_location Get an meeting location Read get_meeting_locations Get all meeting location records Read get_meetings_by_planned_course_id Get all meeting records of a planned course Read get_option_of_custom_field Get an option of a custom field Read get_options_of_custom_field Get all options of a custom field Read get_order Get an order record Read get_orders Get all order records Read get_organization Get an organization record Read get_organization_affiliations Get all organization affiliation records Read get_payment Get one payment record Read get_payment_methods Get all payment method records available for customers Read get_payment_options Get all payment option records Read get_planned_courses_by_course_id Get all planned course records of a single course Read get_planned_courses_by_id_and_course_id Get a planned course record of a single course Read get_planning_conflicts Get all conflicts Read get_planning_event Get an planning event record Read get_planning_events Get all planning event records Read get_planning_locations Get all locations that are available Read get_planning_materials_of_planing_event Get all planning materials of a planning event Read get_planning_teachers Get all teachers that are available Read get_program Get a program Read get_program_edition Get a program edition Read get_program_element Get an element Read get_program_elements Get all elements Read get_program_enrollment Get a program enrollment record Read get_program_enrollments Get all program enrollments Read get_program_personal_program_elements Get all program personal program elements Read get_programs Get all programs Read get_referrals Get all referral records Read get_signup_questions Get all signup_question records Read get_task Get a task record Read get_tasks Get all task records Read get_teacher Get a teacher record Read get_teacher_enrollments_by_planned_course_id Get all teacher enrollments for given planned course. Read get_teacher_role Get a teacher role Read get_teacher_roles Get all teacher roles Read get_teachers Get all teacher records Read get_theses Get all thesis records Read get_user Get an user record Read get_users Get all user records Read get_webhook Get a registered webhook Read get_webhook_notifications_failed Get the failed webhook notifications Read get_webhooks Get all registered webhooks

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Eduframe

Can an AI agent move money through the Eduframe MCP server? +

Yes. The Eduframe server exposes 1 financial tools including create_invoice_payment_by_invoice_id. Without a policy, an autonomous agent can call these with no spend caps, no rate limits, and no approval flow. PolicyLayer lets you block financial tools by default, require human approval, or set per-tool rate limits — enforced on every call.

Can an AI agent delete data through the Eduframe MCP server? +

Yes. The Eduframe server exposes 29 destructive tools including cancel_enrollment, cancel_order, cancel_planned_course. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Eduframe? +

The Eduframe server has 69 write tools including activate_teacher, add_label_to_order, add_option_to_custom_field. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Eduframe.

How many tools does the Eduframe MCP server expose? +

189 tools across 3 categories: Destructive, Read, Write. 90 are read-only. 99 can modify, create, or delete data.

How do I enforce a policy on Eduframe? +

Register the Eduframe MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Eduframe tool call.

Deterministic rules across all 189 Eduframe tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

189 Eduframe tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.