io.github.OrygnsCode/omnicord
NPM · @ORYGN/OMNICORD · SCANNED SEP 20
Discord server management MCP for AI agents: chat, moderation, admin, and full server building.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security99
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 111 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency35
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: the license (Elastic-2.0) isn't a recognized OSI-approved license. See how to fix → Fail
- Actively maintained (last published 12 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability79
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 14841 tokens (~95/item across 155 items; 155 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
- Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage89
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 68% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 29 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 155 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.OrygnsCode/omnicord MCP server?
io.github.OrygnsCode/omnicord runs locally as an npm package, launched with npx -y @orygn/omnicord. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @orygn/omnicord
claude mcp add orygnscode-omnicord -- npx -y @orygn/omnicord
{
"mcpServers": {
"orygnscode-omnicord": {
"command": "npx",
"args": [
"-y",
"@orygn/omnicord"
]
}
}
} {
"servers": {
"orygnscode-omnicord": {
"command": "npx",
"args": [
"-y",
"@orygn/omnicord"
]
}
}
} codex mcp add orygnscode-omnicord -- npx -y @orygn/omnicord
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"orygnscode-omnicord": {
"type": "local",
"command": [
"npx",
"-y",
"@orygn/omnicord"
],
"enabled": true
}
}
} openclaw mcp add orygnscode-omnicord --command npx --arg -y --arg @orygn/omnicord
mcp_servers:
orygnscode-omnicord:
command: "npx"
args: ["-y", "@orygn/omnicord"] {
"McpServers": {
"orygnscode-omnicord": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"@orygn/omnicord"
]
}
}
} assistant mcp add orygnscode-omnicord -t stdio -c npx -a -y @orygn/omnicord
{
"mcpServers": {
"orygnscode-omnicord": {
"command": "npx",
"args": [
"-y",
"@orygn/omnicord"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 19 Sept 26 −2
- Stability: pass → 0.83 functional
- 18 Sept 26 0
- Stability: 0.97 → pass security
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes. Other categories moved too: Supply Chain Security rose 1.
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 −3
- Stability: pass → 0.80 functional
- 11 Sept 26 +1
- Stability: 0.97 → pass security
- 9 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed npm/@orygn/omnicord@1.4.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 111 packages
| Packages resolved | 111 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
list_thread_members List thread members ~48
Who is in a thread.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| thread | string | yes | Thread name or ID. |
No output schema declared.
No examples provided.
list_threads List threads ~80
Active threads across the server or one channel. Archived threads come from a specific channel with include_archived.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | – | Limit to threads under this channel. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| include_archived | boolean | – | Also list archived threads; needs channel. |
No output schema declared.
No examples provided.
list_voice_members List voice members ~84
Who is currently in a voice or stage channel, with their mute and deafen state. This reads the live voice presence the gateway tracks, so it reflects the time since Omnicord connected.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Voice or stage channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
No output schema declared.
No examples provided.
list_webhooks List webhooks ~52
Webhooks in the server or one channel. Tokens are never included.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
No output schema declared.
No examples provided.
lock_channel Lock channel ~80
Lock a channel by denying everyone the ability to send messages. Existing role overwrites that allow posting still apply, so moderators keep access. Reverse with unlock_channel.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| reason | string | – | – |
No output schema declared.
No examples provided.
pin_message Pin message ~86
Pin a message in a channel. Needs the Pin Messages permission (split from Manage Messages in 2026). Channels hold at most 50 pins.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| message_id | string | yes | – |
| reason | string | – | – |
No output schema declared.
No examples provided.
plan_server_build Plan server build ~118
Validate a blueprint against the live server and stage an ordered build plan. Checks Discord limits, name collisions, role references, feature requirements, and the bot's permissions, and reports every problem at once. Changes nothing. Compose the blueprint from the user's request, optionally starting from a reference layout. Existing channels and roles with matching names are reused, never duplicated.
| Name | Type | Req | Description |
|---|---|---|---|
| blueprint | object | yes | The desired structure: roles, categories, channels. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
No output schema declared.
No examples provided.
prune_members Prune members ~112
Remove members inactive for a number of days who hold no roles. Safe to call directly: the first call counts who would go using Discord's own preview and returns a confirm_token; repeating the call with the token prunes for real.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | – |
| days | integer | yes | Inactivity threshold in days. |
| dry_run | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| reason | string | – | – |
No output schema declared.
No examples provided.
read_messages Read messages ~113
Recent messages from a channel as a digest: author, time, content, attachments, reactions, and resolved reply references. Returns oldest first. Use next_before to page further back.
| Name | Type | Req | Description |
|---|---|---|---|
| before | string | – | Message ID cursor: only messages older than this. |
| channel | string | yes | Channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| limit | integer | – | How many messages, 1 to 100. Default 25. |
No output schema declared.
No examples provided.
register_app_command Register app command ~164
Register a slash command, or update it in place if the name is already taken. Pass a guild while iterating: guild commands appear immediately, while global commands can take up to an hour to show up everywhere and are rate limited per day. Subcommands and subcommand groups are not supported here.
| Name | Type | Req | Description |
|---|---|---|---|
| bot | string | – | Which bot to act as, by name, when more than one is configured. Omit to use the default bot. |
| description | string | yes | Shown to users in the command picker. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| name | string | yes | Command name without the slash, lowercase, no spaces. |
| options | array | – | Arguments the command takes. |
No output schema declared.
No examples provided.
remove_reaction Remove reaction ~96
Remove a reaction: the bot's own by default, or another user's (which needs Manage Messages).
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| emoji | string | yes | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| message_id | string | yes | – |
| user | string | – | Whose reaction to remove; omit for the bot's own. |
No output schema declared.
No examples provided.
remove_role Remove role ~88
Take a role away from a member. Preflights the bot's role hierarchy so a failure is an explanation, not a 403.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| member | string | yes | Member name or user ID. |
| reason | string | – | – |
| role | string | yes | Role name or ID. |
No output schema declared.
No examples provided.
remove_thread_member Remove thread member ~65
Remove a member from a thread. Needs Manage Threads.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| member | string | yes | Member name or user ID. |
| thread | string | yes | Thread name or ID. |
No output schema declared.
No examples provided.
remove_timeout Remove timeout ~58
Lift an active timeout from a member early.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| member | string | yes | Member name or user ID. |
| reason | string | – | – |
No output schema declared.
No examples provided.
reorder_channels Reorder channels ~54
Move channels to new positions, and optionally into a different category, in one call.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| moves | array | yes | – |
No output schema declared.
No examples provided.
reorder_roles Reorder roles ~60
Move roles to new hierarchy positions in one call. Higher positions sit higher in the list and outrank lower ones.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| moves | array | yes | – |
No output schema declared.
No examples provided.
reply_to_forum_post Reply to forum post ~72
Add a reply inside a forum post.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | – |
| embeds | array | – | Up to 10 embeds. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| post | string | yes | Post title or thread ID. |
No output schema declared.
No examples provided.
run_setup_check Run setup check ~109
End-to-end health check of the Omnicord setup: token presence and validity, privileged gateway intent toggles, guild count against Discord's verification thresholds, and default guild membership. Every failed check comes with instructions for fixing it. With more than one bot configured, pass bot to check a specific one. Run this first when anything misbehaves.
| Name | Type | Req | Description |
|---|---|---|---|
| bot | string | – | Which bot to act as, by name, when more than one is configured. Omit to use the default bot. |
No output schema declared.
No examples provided.
save_blueprint Save blueprint ~61
Save a blueprint to the local store for reuse: apply it to other servers with execute_build_plan or track drift with diff_blueprint. Names are unique.
| Name | Type | Req | Description |
|---|---|---|---|
| blueprint | object | yes | – |
| description | string | – | – |
| name | string | yes | – |
No output schema declared.
No examples provided.
schedule_message Schedule message ~186
Post a text message to a channel at a later time, once or on a daily or weekly repeat. This sends an ordinary message; for a community event members can RSVP to, use create_event. Omnicord sends it when the time comes. One limit worth knowing: delivery needs the Omnicord process to be running at that moment, so always-on scheduling wants the hosted or Docker deployment rather than a laptop that sleeps. A message that came due during downtime is sent at the next start.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| content | string | yes | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| repeat | string | – | Default none. |
| send_at | string | yes | When to send, ISO time like 2026-07-01T17:00:00Z. |
No output schema declared.
No examples provided.
search_members Search members ~143
Find specific members by a name fragment, or list those holding a given role. For the whole roster use list_members; for one member's full profile use get_member; to turn a fuzzy name into an id use find. Name search uses Discord's member search; role filtering walks the member list and reports if it hit the paging cap.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| limit | integer | – | Max results. Default 25. |
| query | string | – | Name prefix to search for (username or nickname). |
| role | string | – | Role name or ID; returns members holding it. |
No output schema declared.
No examples provided.
search_messages Search messages ~291
Search the server's message history through Discord's native search index. Covers every channel the bot can read, or one channel if you name it, and looks inside embeds and polls, not just plain text. Matching is whole-word full text, not substring, so search for words rather than fragments. Filter by author, by what a message carries (image, link, file, and so on), or by pinned state, and order by newest first or by relevance.
| Name | Type | Req | Description |
|---|---|---|---|
| author | string | – | Only messages from this member (name or ID). |
| channel | string | – | Limit to one channel by name or ID. Default: the whole server. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| has | string | – | Only messages that carry this kind of content. |
| limit | integer | – | Max results to return, 1 to 25. Default 10. |
| offset | integer | – | Skip this many results, for paging. Default 0. |
| pinned | boolean | – | Only pinned (true) or only unpinned (false) messages. |
| query | string | – | Words to look for. Whole-word full text match, not substring. Optional if you filter by author, has, or pinned instead. |
| sort | string | – | Order by newest first (recent, the default) or best match (relevant). |
No output schema declared.
No examples provided.
send_dm Send direct message ~90
Send a direct message from the bot to a member who shares a server with it. Fails gracefully when the recipient has DMs closed. The message comes from the bot, never from a user account.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| user | string | yes | Member name or user ID. |
No output schema declared.
No examples provided.
send_message Send message ~274
Send a message to a channel, optionally as a reply, with embeds, or as a Components V2 layout of text, sections, image galleries, separators and link buttons inside colored containers. Components replace content and embeds rather than joining them, and the choice is permanent for that message. For a private message to one person use send_dm; to post under a custom name and avatar use send_webhook_message; to send later use schedule_message. Mentions are suppressed by default; raise the mentions mode only deliberately. Supports dry_run.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| components | array | – | Rich layout, in place of content and embeds. Sending this sets the Components V2 flag, which is permanent for that message: it can never show plain content or embeds afterward, so the two cannot be c… |
| content | string | – | Message text. Required unless components is used. |
| dry_run | boolean | – | Preview without sending. |
| embeds | array | – | Up to 10 embeds. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| mentions | string | – | Which mention types may ping. Default none. |
| reply_to | string | – | Message ID to reply to. |
| silent | boolean | – | Send without triggering notifications. |
No output schema declared.
No examples provided.
send_webhook_message Send webhook message ~98
Post through a webhook with an optional display name and avatar override. Mentions are suppressed.
| Name | Type | Req | Description |
|---|---|---|---|
| avatar_url_override | string | – | – |
| content | string | – | – |
| embeds | array | – | Up to 10 embeds. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| username_override | string | – | – |
| webhook | string | yes | Webhook name or ID. |
No output schema declared.
No examples provided.
set_bot_presence Set bot presence ~56
Change the bot's status dot and custom status text. Needs the gateway connection that Omnicord keeps by default.
| Name | Type | Req | Description |
|---|---|---|---|
| activity_text | string | – | Custom status text shown under the bot's name. |
| status | string | yes | – |
No output schema declared.
No examples provided.
set_channel_permissions Set channel permissions ~107
Set a permission overwrite on a channel for one role or member: which permissions are explicitly allowed and which are denied. Permission names like manage_messages or send_messages.
| Name | Type | Req | Description |
|---|---|---|---|
| allow | array | – | Permissions to allow. |
| channel | string | yes | Channel name or ID. |
| deny | array | – | Permissions to deny. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| target | string | yes | Role or member name or ID. |
No output schema declared.
No examples provided.
set_incident_actions Pause invites and DMs ~189
Discord's raid-defense security actions for the whole server. Pause new invites, and pause DMs between members who are not friends, each for up to 24 hours, to lock the server down during a raid. Give a number of hours to pause, 0 to lift a pause, or omit a field to leave it unchanged. Called with neither field, it reports the current state, including any raid or DM spam Discord detected on its own.
| Name | Type | Req | Description |
|---|---|---|---|
| dms | number | – | Hours to pause DMs between non-friend members, up to 24. Use 0 to resume, or omit to leave them unchanged. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| invites | number | – | Hours to pause new invites, up to 24. Use 0 to resume invites, or omit to leave them unchanged. |
No output schema declared.
No examples provided.
set_voice_channel_status Set voice channel status ~103
Set the short status line shown on a voice channel, a note about what is happening in it right now, up to 500 characters. Pass an empty status to clear it. This is the live status, not the topic.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Voice channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| status | string | yes | Status text. Empty clears it. |
No output schema declared.
No examples provided.
start_stage Start stage ~86
Open a live stage on a stage channel with a topic. Members can then be invited to speak.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Stage channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| notify | boolean | – | Notify members that the stage started. Needs Mention Everyone. |
| topic | string | yes | – |
No output schema declared.
No examples provided.
subscribe_events Subscribe to events ~195
Watch the server live: start recording real-time activity as it happens (messages, joins and leaves, reactions, channel and role changes, bans, voice movement) into a buffer you then read with get_recent_events. Use this to observe what is going on now. It is not for scheduled community events (create_event) or timed messages (schedule_message). Available types: message_created, message_deleted, member_joined, member_left, reaction_added, reaction_removed, channel_created, channel_deleted, role_created, role_updated, role_deleted, ban_added, ban_removed, voice_state_changed.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | – | Only record events from this channel. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| include_bots | boolean | – | Also record events caused by bots, including this one. Default false. |
| types | array | yes | Which event types to record. |
No output schema declared.
No examples provided.
sync_server_template Sync server template ~55
Update a template to match the server's current structure.
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | Template code from list_server_templates. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
No output schema declared.
No examples provided.
timeout_member Timeout member ~155
Time a member out so they cannot talk, react, or join voice, for up to 28 days. Safe to call directly: the first call changes nothing and returns a preview plus a confirm_token; repeating the call with the token applies the timeout. Relay the preview for the user's go-ahead. The reason lands in the audit log.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm_token | string | – | – |
| dry_run | boolean | – | – |
| duration_minutes | integer | yes | Timeout length in minutes, up to 40320 (28 days). |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| member | string | yes | Member name or user ID. |
| reason | string | – | – |
No output schema declared.
No examples provided.
unban_member Unban member ~63
Lift a ban so the user can rejoin with an invite.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| reason | string | – | – |
| user_id | string | yes | The banned user's ID. |
No output schema declared.
No examples provided.
unlock_channel Unlock channel ~62
Reverse lock_channel by removing the send-message denial from the everyone overwrite.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| reason | string | – | – |
No output schema declared.
No examples provided.
unpin_message Unpin message ~68
Unpin a message. The message itself is untouched.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | yes | Channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| message_id | string | yes | – |
| reason | string | – | – |
No output schema declared.
No examples provided.
unsubscribe_events Unsubscribe from events ~25
Stop recording and discard a subscription's buffer.
| Name | Type | Req | Description |
|---|---|---|---|
| subscription_id | string | yes | – |
No output schema declared.
No examples provided.
update_app_command Update app command ~132
Change a registered command's description or options. Anything not passed is left as it is. Replacing options replaces the whole list, so send every option you want to keep.
| Name | Type | Req | Description |
|---|---|---|---|
| bot | string | – | Which bot to act as, by name, when more than one is configured. Omit to use the default bot. |
| command | string | yes | Command name or ID. |
| description | string | – | New description. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| options | array | – | Replacement option list, replacing the existing one entirely. |
No output schema declared.
No examples provided.
update_automod_rule Update AutoMod rule ~88
Rename a rule, enable or disable it, or replace its keyword list.
| Name | Type | Req | Description |
|---|---|---|---|
| enabled | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| keywords | array | – | Replaces the keyword list on keyword rules. |
| name | string | – | – |
| rule | string | yes | Rule name or ID. |
No output schema declared.
No examples provided.
update_channel Update channel ~139
Edit a channel's name, topic, slowmode, NSFW flag, or category. Only passed fields change. Pass category "none" to move a channel out of its category. Supports dry_run.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Category name or ID, or "none" to remove. |
| channel | string | yes | Channel name or ID. |
| dry_run | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| name | string | – | – |
| nsfw | boolean | – | – |
| slowmode_seconds | integer | – | – |
| topic | string | – | – |
No output schema declared.
No examples provided.
update_emoji Update emoji ~55
Rename a custom emoji.
| Name | Type | Req | Description |
|---|---|---|---|
| emoji | string | yes | Current emoji name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| name | string | yes | – |
No output schema declared.
No examples provided.
update_event Update event ~110
Edit a scheduled event's details, or move it through its lifecycle: status start makes it live, status end completes it.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | – |
| end_time | string | – | – |
| event | string | yes | Event name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| location | string | – | – |
| name | string | – | – |
| start_time | string | – | – |
| status | string | – | – |
No output schema declared.
No examples provided.
update_forum_post Update forum post ~111
Edit a post's title or tags, pin or unpin it within the forum, lock or unlock replies, or archive it.
| Name | Type | Req | Description |
|---|---|---|---|
| archived | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| locked | boolean | – | – |
| pinned | boolean | – | – |
| post | string | yes | Post title or thread ID. |
| tags | array | – | Replace the applied tags with these. |
| title | string | – | – |
No output schema declared.
No examples provided.
update_forum_tag Update forum tag ~78
Rename a forum tag or change its moderated flag.
| Name | Type | Req | Description |
|---|---|---|---|
| forum | string | yes | Forum channel name or ID. |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| moderated | boolean | – | – |
| name | string | – | – |
| tag | string | yes | Current tag name. |
No output schema declared.
No examples provided.
update_member Update member ~147
Edit a member's nickname or voice state. Voice changes (server mute, server deafen, move to another voice channel) only apply while the member is connected to voice. Role changes go through assign_role and remove_role.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| member | string | yes | Member name or user ID. |
| move_to_voice | string | – | Voice channel name or ID to move the member into. |
| nickname | string | – | New nickname, or empty string to clear it. |
| reason | string | – | – |
| server_deafen | boolean | – | – |
| server_mute | boolean | – | – |
No output schema declared.
No examples provided.
update_onboarding Update onboarding ~140
Configure the new-member onboarding flow on a Community server: prompts with options that grant channels and roles, the default channels every member sees, and the enabled state. Discord's app asks for at least seven default channels when configuring this by hand; the API has been observed to accept fewer.
| Name | Type | Req | Description |
|---|---|---|---|
| default_channels | array | – | Channel names or IDs every new member gets. |
| enabled | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| mode | string | – | default counts only default channels toward the constraints; advanced counts prompt option channels too. |
| prompts | array | – | – |
No output schema declared.
No examples provided.
update_role Update role ~148
Edit a role's name, color, hoist, mentionable flag, or permissions. Passing preset and/or permissions replaces the role's permission set with the named bundle plus listed names. Only passed fields change. Supports dry_run.
| Name | Type | Req | Description |
|---|---|---|---|
| color | string | – | Hex color like #00b0f4. |
| dry_run | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| hoist | boolean | – | – |
| mentionable | boolean | – | – |
| name | string | – | – |
| permissions | array | – | – |
| preset | string | – | – |
| role | string | yes | Role name or ID. |
No output schema declared.
No examples provided.
update_server Update server ~198
Edit server settings: name, description, AFK behavior, system and rules channels, verification level. Only passed fields change. Descriptions need a Community server.
| Name | Type | Req | Description |
|---|---|---|---|
| afk_channel | string | – | Voice channel name or ID, or none to clear. |
| afk_timeout_seconds | number | – | – |
| community | boolean | – | Enable or disable the Community feature. Enabling needs rules_channel and public_updates_channel. |
| description | string | – | – |
| dry_run | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| name | string | – | – |
| public_updates_channel | string | – | Text channel for Discord's mod updates, when enabling Community. |
| rules_channel | string | – | Text channel for the rules, when enabling Community. |
| system_channel | string | – | Channel for join notices, or none to clear. |
| verification_level | string | – | – |
No output schema declared.
No examples provided.
update_server_widget Update server widget ~67
Enable or disable the widget, or point its invite channel.
| Name | Type | Req | Description |
|---|---|---|---|
| channel | string | – | Invite channel name or ID, or none to clear. |
| enabled | boolean | – | – |
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
No output schema declared.
No examples provided.
update_soundboard_sound Update soundboard sound ~67
Rename a soundboard sound or change its volume.
| Name | Type | Req | Description |
|---|---|---|---|
| guild | string | – | Guild (server) name or ID. Omit to use the default guild. |
| name | string | – | – |
| sound | string | yes | Sound name or ID. |
| volume | number | – | – |
No output schema declared.
No examples provided.
What is the io.github.OrygnsCode/omnicord MCP server?
io.github.OrygnsCode/omnicord is an MCP server listed in the public MCP registry as io.github.OrygnsCode/omnicord. Discord server management MCP for AI agents: chat, moderation, admin, and full server building. This page covers its npm package (@orygn/omnicord).
Is the io.github.OrygnsCode/omnicord MCP server safe to use?
io.github.OrygnsCode/omnicord scores 80 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.OrygnsCode/omnicord MCP server expose?
io.github.OrygnsCode/omnicord exposes 155 tools: get_rate_limit_status, get_bot_info, run_setup_check, get_server_overview, list_channels, and 150 more. Their descriptions and schemas cost roughly 14,841 tokens of context every time the server is loaded.
Is the io.github.OrygnsCode/omnicord MCP server still maintained?
io.github.OrygnsCode/omnicord is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.OrygnsCode/omnicord MCP server under?
io.github.OrygnsCode/omnicord declares the Elastic-2.0 licence, which is not on the OSI-approved list. Read the terms before using it at work, and note this covers the source only, not the cost of any service it calls.