HiveLearn

io.github.williamechevarria由 GitHub 账号 williamechevarria 发布v0.4.0更新于 Oct 25, 2026

Read and author HiveLearn courses, events, quizzes, certificates, resources, leaderboards, tracks.

已验证Streamable HTTP可网页运行效率与工作流知识与记忆沟通与协作

概览

AI 生成的概览

HiveLearn 让助手在一个 HiveLearn 社区中读取和编写课程、课时、测验、活动、帖子、成员与证书等内容。

可以做什么
读取社区信息与成员,并修改成员角色或封禁状态。列出、创建和编辑社区帖子,包括置顶。列出、创建和编辑活动,包括取消和人数上限。搭建课程:模块、课时、课程大纲、课时内容、排序与发布。管理测验及其题目,以及选课、进度、成绩册和证书。
适用场景
适合让助手协助运营 HiveLearn 社区:起草并发布课程结构、填写课时内容、编写测验,或查看选课、进度和证书。也适合处理帖子、活动和成员角色等社区管理事务。
运行要求
需要一个 HiveLearn API 密钥(hl_live_...),在社区的 Admin → API Keys 中创建;本地 npm 包通过环境变量 HIVELEARN_API_KEY 传入,远程端点通过请求头 X-Hivelearn-Api-Key 传入。密钥绑定固定社区,无法切换。
安装前请注意
密钥仅限一个社区,权限取决于其角色。许多工具会写入数据:创建和编辑帖子、活动、课程、课时、测验和选课,修改成员角色和封禁成员,以及发布课程。发布时会校验每个课时是否已有内容。批量修改和角色变更需谨慎。

安装

在 SourceWeft 中

  1. 打开 控制台中的 HiveLearn,将其添加到工作区。
  2. 连接 X-Hivelearn-Api-Key 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.williamechevarria%2Fhivelearn-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "hivelearn": {
      "type": "http",
      "url": "https://mcp.hivelearn.app/",
      "headers": {
        "X-Hivelearn-Api-Key": "<YOUR_API_KEY>"
      }
    }
  }
}

README

该仓库没有 README。

工具

96

hivelearn_get_community_me

Returns the community the current API key is scoped to. Use this first whenever you need the community_id, owner, slug, or tier — the API key determines tenancy, you cannot switch community.

无需输入参数。

hivelearn_list_members

List members of the authenticated community. Returns id (profile uuid), role, email, display_name, avatar_url, and joined_at. Filter by role to find admins/owners.

输入参数rolelimitoffset

hivelearn_get_member

Fetch a single member by profile uuid. Returns the same fields as list_members for one row.

输入参数id必填

hivelearn_update_member

Change a member's role or ban status. role accepts member/moderator/admin (owner cannot be assigned via the API). Set is_banned=true to ban, false to lift. At least one field required.

输入参数id必填roleis_banned

hivelearn_list_posts

List community feed posts, newest first. Use category to filter (e.g. "announcements"). Returns id, title, content, category, author, reply counts, timestamps.

输入参数limitoffsetcategory

hivelearn_get_post

Fetch one post with full content. Reply thread is NOT included — this is the post itself only.

输入参数id必填

hivelearn_create_post

Publish a new post to the community feed. Either content (markdown) or content_json (tiptap) is required. content_format must match which field you sent. category is optional — omit for default "general".

输入参数contentcategorycontent_jsoncontent_format

hivelearn_update_post

Edit an existing post. Only include fields you want to change. Use is_pinned to pin/unpin a post from the top of the feed.

输入参数id必填contentcategoryis_pinnedcontent_jsoncontent_format

hivelearn_list_events

List community events. Use upcoming=true for future events only (recommended for calendar UI). Returns id, title, start/end dates, event_type, location/meeting_url, attendee counts.

输入参数limitoffsetupcoming

hivelearn_get_event

Fetch one event by id with full description and RSVP metadata.

输入参数id必填

hivelearn_create_event

Create a calendar event. Dates are ISO 8601 strings in UTC. For virtual events set meeting_url; for in-person set location. event_type controls which field the UI shows.

输入参数tagstitle必填end_date必填locationtimezoneevent_type必填start_date必填descriptionmeeting_urlmax_attendeescover_image_urldescription_json另有 1 个

hivelearn_update_event

Edit an event. Set is_cancelled=true to cancel (preserves history). Set max_attendees=null to lift the cap.

输入参数id必填tagstitleend_datelocationtimezoneevent_typestart_datedescriptionmeeting_urlis_cancelledmax_attendees另有 3 个

hivelearn_list_courses

List courses in the authenticated community. status=published returns only courses visible to learners. Returns id, title, visibility, is_published, thumbnail_url, timestamps.

输入参数limitoffsetstatus

hivelearn_get_course

Fetch one course with full metadata (description, instructor, tags, flags). For the lesson tree use hivelearn_get_course_structure instead.

输入参数id必填

hivelearn_create_course

Create an empty course (no modules/lessons). Prefer hivelearn_create_course_outline when you already know the structure — it scaffolds course + modules + lesson placeholders in one call.

输入参数tagstitle必填difficultyvisibilitydescriptionthumbnail_urlinstructor_namedescription_jsondescription_formatinstructor_avatar_url

hivelearn_update_course

Edit course metadata. Use hivelearn_publish_course instead of setting is_published=true directly — publish runs validation.

输入参数id必填tagstitleis_pinneddifficultyvisibilitydescriptionis_featuredis_publishedthumbnail_urlinstructor_namedescription_json另有 2 个

hivelearn_list_course_modules

List modules (sections) of a course, ordered by sort_order. Modules group lessons; a course has 1..N modules.

输入参数course_id必填

hivelearn_create_module

Add a module to a course. sort_order is optional — server auto-appends if omitted.

输入参数title必填course_id必填sort_order

hivelearn_update_module

Rename or reorder a module. To reorder lessons within a module use hivelearn_reorder_module_lessons.

输入参数id必填titlesort_order

hivelearn_list_course_lessons

List lessons of a course, optionally filtered to one module. Use hivelearn_get_course_structure for a nested tree.

输入参数course_id必填module_id

hivelearn_create_lesson

Add a lesson to a course. content_type must match content_url (e.g. youtube URL → content_type:youtube). Set module_id=null to leave the lesson unassigned; otherwise pass a module uuid from list_course_modules.

输入参数title必填course_id必填module_idis_previewsort_ordercontent_url必填descriptioncontent_jsoncontent_typeis_publishedthumbnail_urlcontent_format另有 1 个

hivelearn_update_lesson

Edit lesson metadata or move it between modules. To edit ONLY the content body use hivelearn_update_lesson_content (narrower scope, safer).

输入参数id必填titlemodule_idis_previewsort_ordercontent_urldescriptioncontent_jsoncontent_typeis_publishedthumbnail_urlcontent_format另有 1 个

hivelearn_create_course_outline

Scaffold an entire course in one call: course + modules + lesson placeholders (title/description only, no content yet). After this, loop over the returned lesson ids with hivelearn_update_lesson_content to fill in video/document URLs. This is the preferred first step when authoring a new course from a plan.

输入参数tagstitle必填modules必填difficultyvisibilitydescriptionthumbnail_urlinstructor_namedescription_jsondescription_formatinstructor_avatar_url

hivelearn_update_lesson_content

Replace just the content of a lesson — URL, content_type, and optional description/duration/thumbnail. Narrower than update_lesson; safe for bulk agent writes. Does NOT change title, sort_order, or module assignment.

输入参数id必填content_urldescriptioncontent_jsoncontent_typethumbnail_urlcontent_formatduration_seconds

hivelearn_reorder_module_lessons

Set the full lesson order within a module in one atomic call. Pass the desired final order as lesson_ids — every lesson currently in the module must appear exactly once.

输入参数module_id必填lesson_ids必填

hivelearn_publish_course

Publish a course: sets is_published=true after validating that every lesson has content_url. Returns error if any lesson is still empty — run hivelearn_get_course_structure to diagnose.

输入参数id必填

hivelearn_get_course_structure

Return a compact titles-only tree of the course: course → modules → lessons. Ideal for agents to plan reorders, spot empty lessons, or summarize a course. Does NOT include lesson body content.

输入参数id必填

hivelearn_list_quizzes

List quizzes, optionally scoped to a course or a specific lesson. Each quiz belongs to one lesson.

输入参数limitoffsetcourse_idlesson_id

hivelearn_get_quiz

Fetch one quiz with metadata (passing_score, time_limit, max_attempts). Questions are NOT included — use hivelearn_list_quiz_questions.

输入参数id必填

hivelearn_create_quiz

Create a quiz attached to a lesson. passing_score is 0-100 (percent). Omit time_limit_seconds or max_attempts for unlimited.

输入参数title必填lesson_id必填descriptionmax_attemptspassing_scoreshuffle_questionstime_limit_seconds

hivelearn_update_quiz

Edit quiz settings. Cannot move a quiz to a different lesson — create a new one instead.

输入参数id必填titledescriptionmax_attemptspassing_scoreshuffle_questionstime_limit_seconds

hivelearn_list_quiz_questions

List all questions for a quiz, ordered by sort_order. Each question carries its options and correct answer.

输入参数quiz_id必填

hivelearn_create_quiz_question

Add a question to a quiz. Supply the answer field for the type: multiple_choice → options [{text, is_correct}] with exactly one is_correct:true; multi_select → options with one or more correct; true_false → correct_answer (boolean); fill_in_blank → accepted_answers; matching → pairs [{left, right}]; ordering → items [{text}] in correct order (or with position 1..n).

输入参数itemspairspointsoptionsquiz_id必填sort_orderexplanationquestion_text必填question_type必填correct_answeraccepted_answers

hivelearn_update_quiz_question

Edit a question. Sending question_type or any answer field (options, correct_answer, accepted_answers, pairs, items) rebuilds the answer key, so supply the full answer for the effective type.

输入参数id必填itemspairspointsoptionssort_orderexplanationquestion_textquestion_typecorrect_answeraccepted_answers

hivelearn_list_enrollments

List course enrollments, optionally scoped to one course or one user. Returns enrollment_id, user_id, course_id, status, progress %, enrolled_at, completed_at.

输入参数limitoffsetuser_idcourse_id

hivelearn_get_enrollment

Fetch one enrollment with status and progress.

输入参数id必填

hivelearn_create_enrollment

Enroll a user in a course. Both user_id and course_id must belong to the authenticated community. Duplicate enrollments are rejected.

输入参数user_id必填course_id必填

hivelearn_get_course_progress

Aggregate lesson-completion progress for a course across enrolled users. Returns per-user percent_complete, last_accessed_at, completed_lesson_count.

输入参数limitoffsetuser_idcourse_id必填

hivelearn_get_course_gradebook

Quiz-score gradebook for a course: per-user quiz attempts, scores, pass/fail. Use for analytics or grading dashboards.

输入参数limitoffsetuser_idcourse_id必填

hivelearn_list_certificates

List issued certificates, optionally scoped to one user or one course. Returns id, user, course, verification_code, status, issued_at.

输入参数limitoffsetuser_idcourse_id

hivelearn_get_certificate

Fetch one certificate by id. Includes verification_code and download URL.

输入参数id必填

hivelearn_create_certificate

Issue a certificate of completion to a user for a course. Normally the platform auto-issues on course completion — use this tool for bulk backfill or manual awards.

输入参数user_id必填course_id必填expires_atfinal_scorecompletion_dateinstructor_name

hivelearn_update_certificate

Change a certificate status. Use "revoked" to invalidate (verify endpoint will reject).

输入参数id必填status必填

hivelearn_verify_certificate

Public verification lookup by verification_code. Returns { valid, certificate } if found and active. Use this when a third party presents a certificate code.

输入参数code必填

hivelearn_list_resources

List published resources in the authenticated community, newest first. Filter by folder_id, resource_type, or access_level. Returns id, title, resource_type, resource_url/file_url, access_level, counts (downloads, views, favorites), author. The internal storage key is never exposed.

输入参数limitoffsetfolder_idaccess_levelresource_type

hivelearn_get_resource

Fetch one published resource by id, with joined author. 404 if unpublished or in another community.

输入参数id必填

hivelearn_create_resource

Add a resource to the community library. Supply either resource_url (external link) or file_url (already-uploaded file) — at least one is required. price must be > 0 if set (omit for free). access_level defaults to public.

输入参数tagspricetitle必填file_urlfolder_idis_premiumdescriptionaccess_levelis_publishedresource_urlresource_typecover_image_url

hivelearn_update_resource

Edit a resource. Only include fields you want to change. Set is_featured to surface it; set is_published=false to unlist.

输入参数id必填tagspricetitlefile_urlfolder_idis_premiumdescriptionis_featuredaccess_levelis_publishedresource_url另有 2 个

hivelearn_get_leaderboard

Ranked member leaderboard for the community. period chooses the window: all_time (default), 30_day, or 7_day. Each entry carries rank and the points for the selected period, plus level info.

输入参数limitoffsetperiod

hivelearn_get_member_points

Full points breakdown for one member (by auth user id) in the community: total, per-category (posts/comments/events/courses/engagement), period totals, level. 404 if the member has no points record here.

输入参数user_id必填

hivelearn_list_tracks

List published learning tracks (curated course sequences) in the community, newest first. Returns id, title, description, difficulty_level, estimated_hours, flags.

输入参数limitoffset

hivelearn_get_track

Fetch one learning track by id with full metadata. For its ordered curriculum use hivelearn_list_track_courses.

输入参数id必填

hivelearn_list_track_courses

Return the ordered curriculum of a track: its courses with sort_order, is_required, and unlock_after_course_id (prerequisite gating).

输入参数track_id必填

hivelearn_get_track_progress

Per-member progress through a learning track: enrolled_at, started_at, completed_at, total_courses, completed counts. Use for cohort/track analytics.

输入参数limitoffsettrack_id必填

hivelearn_create_track

Create a learning track (curated course sequence). After this, add courses in order with hivelearn_add_track_course. is_published defaults to false — publish once the curriculum is set.

输入参数title必填descriptionis_featuredis_publishedthumbnail_urlestimated_hoursdifficulty_level

hivelearn_update_track

Edit a learning track. Only include fields you want to change. Set is_published=true to make it live.

输入参数id必填titledescriptionis_featuredis_publishedthumbnail_urlestimated_hoursdifficulty_level

hivelearn_add_track_course

Add a course to a track at a given position. sort_order sets the order within the track. Set unlock_after_course_id to a prerequisite course that must be completed first (omit/null for no gate). is_required defaults to true.

输入参数track_id必填course_id必填sort_order必填is_requiredunlock_after_course_id

hivelearn_get_ai_credits

AI credit balance for the API key's creator: monthly allowance remaining, purchased top-ups (never expire), total available, reset date, and whether the AI Course Builder is enabled for this community. Check this before generating. Needs scope read:ai.

无需输入参数。

hivelearn_list_ai_jobs

List the key creator's AI course generation jobs in this community, newest first, with status and progress. Needs scope read:ai.

输入参数limitoffset

hivelearn_get_ai_job

Status and progress of one AI generation job. Poll after hivelearn_generate_ai_course. status is queued | processing | completed | failed | refunded; current_step shows the phase; course_id is the resulting course. A job that stays queued with started_at null was never picked up and is failed and refunded automatically within about an hour. Needs scope read:ai.

输入参数job_id必填

hivelearn_generate_ai_course

Generate a full course with AI and return a job_id to poll with hivelearn_get_ai_job. SPENDS the key creator's AI credits: 1 credit, or 5 for hybrid_chapters (paid plans only), plus 1 when include_recap_video is true in a video mode. Confirm with the user before calling. Requires the explicit generate:ai_courses scope, which admin:* does NOT include. source_type video_url imports a public YouTube/Vimeo/Loom link; every other type needs a file already uploaded to HiveLearn media storage (external URLs are rejected). Limited to 2 running and 10 per hour.

输入参数source_url必填video_modecontext_urlsource_type必填style_presetcontent_depthbrand_intensityinclude_quizzessource_filenameinclude_intro_videoinclude_recap_videoquiz_questions_per_chapter

hivelearn_list_event_attendees

List an event's attendees with check-in status and basic profile. source='rsvp' (default) for free RSVPs, 'ticket' for paid ticket purchases. Requires scope read:events.

输入参数limitoffsetsourceevent_id必填rsvp_statuspayment_status

hivelearn_list_event_waitlist

List an event's waitlist in queue order (oldest first) with position and basic profile. Requires scope read:events.

输入参数limitoffsetevent_id必填

hivelearn_list_post_comments

List comments on a feed post, oldest first. Returns id, content, parent_comment_id, author, likes_count, timestamps. 404 if the post is not in this community.

输入参数limitoffsetpost_id必填

hivelearn_create_post_comment

Comment on a feed post as the API key's owner. The comment is visible to all members immediately, notifies the post author, and awards comment points. Set parent_comment_id to reply to another comment on the same post.

输入参数contentpost_id必填content_jsoncontent_formatparent_comment_id

hivelearn_list_discussions

List published discussions (forum threads), pinned first then newest. Returns id, title, content, category, tags, reply/like counts, is_locked, author.

输入参数limitoffsetcategory

hivelearn_get_discussion

Fetch one discussion by uuid, with author. Use list_discussion_replies for its replies.

输入参数id必填

hivelearn_create_discussion

Start a discussion as the API key's owner. It is published and visible to all members immediately, and notifies every member who has new-discussion notifications on.

输入参数tagstitle必填contentcategorycontent_jsoncontent_format

hivelearn_list_discussion_replies

List replies in a discussion, oldest first. Returns id, content, parent_reply_id, is_accepted_answer, author, likes_count.

输入参数id必填limitoffset

hivelearn_create_discussion_reply

Reply to a discussion as the API key's owner. The reply is visible to all members immediately and notifies the discussion author. Fails with 409 if the discussion is locked. Set parent_reply_id to nest under another reply.

输入参数id必填contentcontent_jsoncontent_formatparent_reply_id

hivelearn_get_analytics_summary

Community analytics over a trailing window of `days` (default 30): total and new members, posts created, enrollments (total, new, completions, completion rate), published courses, and events created/held with RSVPs and check-ins. Definitions match the admin dashboard. Requires read:analytics.

输入参数days

hivelearn_get_course_analytics

Per-course analytics for the community (newest course first): enrollments, new enrollments and completions in the last `days`, completion rate, average progress, and average rating. Paginated. Requires read:analytics.

输入参数dayslimitoffset

hivelearn_list_quiz_attempts

List attempts for one quiz: learner, score (0-100), points, passed, started_at and completed_at (null = in progress). Never includes answers or answer keys. Requires read:courses.

输入参数limitoffsetquiz_id必填user_id

hivelearn_list_assignment_submissions

List assignment submissions in the community, newest first, with student profile and lesson title. Filter by course_id, lesson_id or status. Requires read:courses.

输入参数limitoffsetstatuscourse_idlesson_id

hivelearn_get_assignment_submission

Fetch one assignment submission: text/url, status, instructor feedback and reviewer. Requires read:courses.

输入参数id必填

hivelearn_grade_assignment_submission

Review an assignment submission: sets status (reviewed, approved, revision_requested, submitted) and instructor feedback, recorded as reviewed by the API key's creator. This changes a member's record and the student will see it. revision_requested requires feedback. Requires write:grades.

输入参数id必填status必填feedback

hivelearn_list_resource_folders

List resource-library folders in the authenticated community, ordered by position then name. Folders nest via parent_folder_id; pass parent_folder_id="root" for top-level only, or a folder id for its children. Each folder includes resource_count.

输入参数limitoffsetparent_folder_id

hivelearn_get_resource_folder

Fetch one resource folder by id, with its resource_count. 404 if it belongs to another community.

输入参数id必填

hivelearn_create_resource_folder

Create a resource-library folder. parent_folder_id (optional) must be a folder in the same community. Names must be unique among siblings (409). price must be > 0 if set.

输入参数iconname必填colorpricepositiondescriptionparent_folder_id

hivelearn_update_resource_folder

Update a resource folder (rename, recolor, reorder, reprice, or move). parent_folder_id=null moves it to top level; moving a folder into itself or a descendant is rejected. Only supplied fields change.

输入参数id必填iconnamecolorpricepositiondescriptionparent_folder_id

hivelearn_list_question_banks

List question banks (reusable question pools that bank-draw quizzes sample from), newest first.

输入参数limitoffset

hivelearn_get_question_bank

Fetch one question bank with its item_count. Items are listed separately via hivelearn_list_question_bank_items.

输入参数id必填

hivelearn_create_question_bank

Create an empty question bank. Add questions with hivelearn_create_question_bank_item.

输入参数name必填description

hivelearn_update_question_bank

Rename a question bank or change its description.

输入参数id必填namedescription

hivelearn_list_question_bank_items

List the questions in a bank, WITH the answer key (is_correct, pairs/items, explanation). Authoring view for admins.

输入参数limitoffsetbank_id必填

hivelearn_create_question_bank_item

Add a question to a bank. Supports all 6 types; supply the answer field for the type: options (multiple_choice / multi_select), correct_answer (true_false), accepted_answers (fill_in_blank), pairs (matching), items (ordering).

输入参数itemspairspointsbank_id必填optionsexplanationquestion_text必填question_type必填correct_answeraccepted_answers

hivelearn_update_question_bank_item

Edit a bank question. Changing question_type or any answer field rebuilds the answer key, so resupply the answer field for the (new) type.

输入参数id必填itemspairspointsoptionsexplanationquestion_textquestion_typecorrect_answeraccepted_answers

hivelearn_list_member_notes

List private admin notes on a member, newest first.

输入参数limitoffsetuser_id必填

hivelearn_create_member_note

Add a private admin note to a member. The author is the API key's creator.

输入参数note必填user_id必填

hivelearn_list_member_tags

List the community's member tags (id, name, color).

输入参数limitoffset

hivelearn_create_member_tag

Create a member tag. Names are unique per community (409 on duplicate).

输入参数name必填color

hivelearn_list_member_tag_assignments

List the tags assigned to a member.

输入参数user_id必填

hivelearn_add_member_tag

Assign a tag to a member. Idempotent: returns the existing assignment if already tagged.

输入参数tag_id必填user_id必填

hivelearn_list_segments

List saved member segments with their filter rules.

输入参数limitoffset

hivelearn_list_segment_members

List members matching a segment's rules, evaluated server-side the same way the admin CRM does.

输入参数limitoffsetsegment_id必填

hivelearn_get_member_health

Get a member's health score (engagement, activity, risk level). 404 until the daily job has scored them.

输入参数user_id必填

版本历史

2
  1. v0.4.0最新Sep 21, 2026
  2. v0.3.0Sep 16, 2026

评分

已满足适用检查项的 75%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分

    请声明包含 README 的 GitHub 仓库,或在 OAuth 受保护资源元数据中提供 resource_documentation。

  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。