ai.monnet/mcp
NPM · @MONNET/MCP · SCANNED SEP 25
MCP server for Monnet — motions, plans, files, approvals, and the team's company brain.
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 Security98
- 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 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
- 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
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 0 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability72
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 5842 tokens (~177/item across 33 items; 33 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management52
- Stability check failed: the tool surface changed between 0.8.4 and 0.9.14: 0 tool removals, 1 breaking changes, 4 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_wiki_page" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 34 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 ai.monnet/mcp server?
ai.monnet/mcp runs locally as an npm package, launched with npx -y @monnet/mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @monnet/mcp
claude mcp add ai-monnet-mcp -- npx -y @monnet/mcp
{
"mcpServers": {
"ai-monnet-mcp": {
"command": "npx",
"args": [
"-y",
"@monnet/mcp"
]
}
}
} {
"servers": {
"ai-monnet-mcp": {
"command": "npx",
"args": [
"-y",
"@monnet/mcp"
]
}
}
} codex mcp add ai-monnet-mcp -- npx -y @monnet/mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ai-monnet-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"@monnet/mcp"
],
"enabled": true
}
}
} openclaw mcp add ai-monnet-mcp --command npx --arg -y --arg @monnet/mcp
mcp_servers:
ai-monnet-mcp:
command: "npx"
args: ["-y", "@monnet/mcp"] {
"McpServers": {
"ai-monnet-mcp": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"@monnet/mcp"
]
}
}
} assistant mcp add ai-monnet-mcp -t stdio -c npx -a -y @monnet/mcp
{
"mcpServers": {
"ai-monnet-mcp": {
"command": "npx",
"args": [
"-y",
"@monnet/mcp"
]
}
}
} 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.
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 +1
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Package version: 0.9.5 → 0.9.14 functional
- 23 Sept 26 0
- Security disclosure: unverified → fail ▼ functional
- 22 Sept 26 +1
- Security disclosure: fail → unverified ▼ functional
- 21 Sept 26 0
- Package version: 0.7.1 → 0.9.5 functional
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 32 to 35.
- 18 Sept 26 +1
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Package version: 0.9.4 → 0.9.5 functional
- 16 Sept 26 +1
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Package version: 0.9.2 → 0.9.4 functional
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 25 Sept 2026 · Analysed npm/@monnet/mcp@0.9.14
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 96 packages
| Packages resolved | 96 |
|---|---|
| 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 →
approve ~107
Approve a plan step on a motion. Requires editor role on the motion. Use get_motion first to see the plan and read the step's number.
| Name | Type | Req | Description |
|---|---|---|---|
| motion_short_id | string | yes | The first 8 characters of the motion UUID. |
| step_path | string | yes | The step's number as get_motion prints it: "2" for a top-level step, "1.2" for the second step inside the first group. |
| workspace_slug | string | yes | The workspace slug. |
No output schema declared.
No examples provided.
ask_monnet ~95
Ask Monnet a question in the context of a specific motion. The question is sent as a private message (only you and Monnet see it). Monnet's response is returned directly.
| Name | Type | Req | Description |
|---|---|---|---|
| motion_short_id | string | yes | The first 8 characters of the motion UUID. |
| question | string | yes | Your question for Monnet (1-10,000 chars). |
| workspace_slug | string | yes | The workspace slug. |
No output schema declared.
No examples provided.
comment ~172
Post a public comment on a motion, either top-level or as a reply within an existing comment thread (pass parent_id). The user is asked to approve the message before it is sent — nothing is posted without their explicit confirmation. Monnet may respond — if it does, the response is included in the return value.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | The comment text (1-10,000 chars). |
| motion_short_id | string | yes | The first 8 characters of the motion UUID. |
| parent_id | string | – | Optional id of the top-level comment to reply under — full UUID or 8-char short id, as shown by get_motion. Omit to post a top-level comment. Replies to replies are not allowed (thread depth is 1). |
| workspace_slug | string | yes | The workspace slug. |
No output schema declared.
No examples provided.
create_playbook ~218
Write a new playbook for a workspace: the instructions Monnet follows when a request lands on that recurring workflow. Call list_playbooks first. Show the draft to the person and get their agreement before calling this — it becomes how Monnet handles that workflow for the whole team. Owners and admins only.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | Markdown. Typically a section on when to use it, a section on how the document should be structured, and the plan Monnet should follow, one step per line as 'Owner — what they do'. |
| description | string | yes | One sentence starting with 'Use for …'. This is what Monnet matches a request against, so it decides whether the playbook is ever loaded. |
| name | string | yes | What the workflow is called, in the team's own words (e.g. 'Vendor security review'). |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
create_thread ~154
Open a new thread in a Monnet workspace from a free-form prompt. A thread is a pre-motion conversation: Monnet picks it up in the background and shapes the idea with the author, and it becomes a motion — a doc, a plan, people to coordinate — only when it earns one. Returns the thread's id and URL immediately; call `get_motion` with the returned short_id to read where it got to.
| Name | Type | Req | Description |
|---|---|---|---|
| prompt | string | yes | What the thread is about, in the user's own words plus any relevant context. Substance matters — Monnet reads it as the opening message of the conversation. |
| workspace_slug | string | yes | The workspace slug (e.g. 'monnet-team-410b'). |
No output schema declared.
No examples provided.
create_wiki_folder ~140
Create a folder in the company brain. Only once a subject already carries several pages that want holding together — a brain the size of a team's is a handful of folders and a couple of dozen pages, and a taxonomy built ahead of the pages mirrors the sources instead of compressing them.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | The folder's name. |
| parent_path | string | – | Path of the folder to nest this one in. Omit for the root. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
create_wiki_page ~306
Create a page in the company brain. Call get_wiki_tree first: most material belongs on a page that already exists, and a brain with one page per source is a filing cabinet, not a brain. Links in the body are verified against the workspace before the page is written — a link that resolves to nothing rejects the whole call, naming the target. Give the page an icon: the tree and the sidebar draw one glyph per row, so a brain where every page looks alike can only be read by reading every label.
| Name | Type | Req | Description |
|---|---|---|---|
| body | string | yes | Markdown, and the reason the page exists — a page with a title and nothing under it is refused. Follow the templates in get_wiki_schema, and skip a section rather than filling it with nothing. |
| emoji | string | yes | One emoji, the page's icon in the tree and the sidebar. Choose for what the page is about. |
| folder_path | string | – | Path of an existing folder, as shown by get_wiki_tree (e.g. 'Product/Design'). Omit to place this at the wiki root — which is the right default: open a folder only once a subject carries several page… |
| title | string | yes | The page's title, which is also its name in the tree. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
delete_wiki_folder ~99
Delete a company-brain folder. Its pages are re-parented, not deleted — deleting a folder never throws away a document. The user is asked to confirm before it happens.
| Name | Type | Req | Description |
|---|---|---|---|
| folder_path | string | yes | Path of the folder to delete. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
delete_wiki_page ~165
Delete a company-brain page, with its comments and its version history. Not reversible, and links pointing at it break. The user is asked to confirm before it happens, so do not ask them yourself first. Prefer editing a page that is wrong, or merging it into the one it duplicates — deleting is for a page that should never have existed.
| Name | Type | Req | Description |
|---|---|---|---|
| page_id | string | yes | The page's full id, as returned by get_wiki_tree, search_wiki or create_wiki_page. Not the 8-character short id — those address motions, not pages. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
delete_wiki_source ~173
Delete one of the company brain's raw source files, and the stored document with it. Not reversible. Every page that linked it is repaired in the same move — the link becomes [Source removed], and what the page says is left untouched. A source is the record a page was built from, so a page that turns out to be wrong is a reason to fix the page, not to remove its source. This is for something that should never have been uploaded. The user is asked to confirm before it happens.
| Name | Type | Req | Description |
|---|---|---|---|
| source_id | string | yes | The source's id, as listed by list_wiki_sources. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
edit_playbook ~240
Revise a playbook the workspace already has. Pass only the fields that change — the others are carried over. A field you do pass REPLACES its whole value, and no previous version is kept, so read_playbook first and revise what comes back. Owners and admins only.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | – | Markdown. Typically a section on when to use it, a section on how the document should be structured, and the plan Monnet should follow, one step per line as 'Owner — what they do'. |
| description | string | – | One sentence starting with 'Use for …'. This is what Monnet matches a request against, so it decides whether the playbook is ever loaded. |
| name | string | – | What the workflow is called, in the team's own words (e.g. 'Vendor security review'). |
| playbook_id | string | yes | The playbook's id, as returned by list_playbooks or create_playbook. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
edit_wiki_page ~341
Change a company-brain page: rename it, and/or replace an exact string in its body. Read the page first — the match is literal, whitespace included. When new material contradicts what a page says, correct the page at the source; never leave the stale fact and append a correction beside it. Links in the result are verified before the write lands, so a bad id rejects the call instead of leaving a dead link nobody sees. A page get_wiki_tree shows without an icon has none yet — give it one while you are here.
| Name | Type | Req | Description |
|---|---|---|---|
| emoji | string | – | One emoji, the page's icon in the tree and the sidebar. Choose for what the page is about. |
| new_string | string | – | What replaces it. Empty string deletes the matched text. |
| old_string | string | – | The exact text to replace, copied from read_wiki_page. On a page read_wiki_page showed as '(this page is empty)', pass that line: new_string becomes the whole body. |
| page_id | string | yes | The page's full id, as returned by get_wiki_tree, search_wiki or create_wiki_page. Not the 8-character short id — those address motions, not pages. |
| replace_all | boolean | – | Replace every occurrence instead of failing when old_string is ambiguous. |
| title | string | – | A new title. Renaming is safe — links point at the id, not the name. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
get_inbox ~195
Fetch the user's inbox — the motions they follow, in two buckets: 'priority' is what is waiting on them (an open motion with a step assigned to them, not yet dismissed), 'active' is everything else they follow. Spans every workspace unless one is named. Use this when the user asks 'what's on my plate', 'what needs my attention', or similar.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Motions per bucket (1-50). Default: 10. |
| page | integer | – | Page number (1-based). Default: 1. Only meaningful together with `tag`. |
| tag | string | – | Return only one bucket, which is also how you page through it. Omit for the first page of both. |
| workspace_slug | string | – | Limit the inbox to one workspace (e.g. 'monnet-team-410b'). Omit for every workspace the user belongs to. |
No output schema declared.
No examples provided.
get_motion ~185
Read a Monnet motion's full details — summary, body, status, priority, plan steps with assignees, member roles, threaded comments (each comment shows a short id usable as parent_id in the comment tool to reply in its thread), your own private 1:1 conversation with Monnet on it (never anybody else's), and the files attached to it, each with the id read_motion_file takes. Call this when the user references a specific motion by its short id or URL. It also reads a thread, whose whole content is that private conversation.
| Name | Type | Req | Description |
|---|---|---|---|
| motion_short_id | string | yes | The first 8 characters of the motion UUID, visible in the motion URL. |
| workspace_slug | string | yes | The workspace slug from the motion URL (e.g. 'monnet-team-410b'). Found in the path /<slug>/motions/<short_id>. |
No output schema declared.
No examples provided.
get_wiki_schema ~136
Read the rules this team's company brain is built on — how pages are typed and templated, when to create one versus extend one, and the link format. Read it BEFORE your first write to a workspace's wiki. It is the same text the nightly ingest job runs on, so a page you write matches the ones Monnet writes; a team that has rewritten it for their own brain is exactly the case where guessing goes wrong.
| Name | Type | Req | Description |
|---|---|---|---|
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
get_wiki_tree ~122
List every folder and page in a workspace's company brain, nested, with each page's id. This is the wiki's table of contents and the only place page ids come from — read it before deciding a subject is missing, because most material belongs on a page that already exists. Names and paths only: use read_wiki_page for a page's contents.
| Name | Type | Req | Description |
|---|---|---|---|
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
list_motions ~116
List motions in a workspace, filterable by status. Returns short ids so you can follow up with get_motion on a specific one. Default status is 'open'.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Number of motions per page (1-50). Default: 10. |
| page | integer | – | Page number (1-based). Default: 1. |
| status | string | – | Filter by status. Default: open. |
| workspace_slug | string | yes | The workspace slug (e.g. 'monnet-team-410b'). |
No output schema declared.
No examples provided.
list_playbooks ~107
The playbooks a workspace has written for Monnet — a playbook is how the team wants one recurring workflow handled, and Monnet loads it when a request lands on it. Call this before writing one: a workflow that already has a playbook wants an edit, not a second copy.
| Name | Type | Req | Description |
|---|---|---|---|
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
list_wiki_sources ~109
List the raw material feeding a workspace's company brain: uploaded files, plus motions the team closed and shared workspace-wide. Shows what the next nightly run will read and what it has already digested. Link a source from a page's ## Sources section as [filename](?source=<id>).
| Name | Type | Req | Description |
|---|---|---|---|
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
list_workspaces ~83
List the Monnet workspaces you are a member of, plus any you have been invited to and not joined yet. Returns the workspace name and slug needed by other tools (get_motion, list_motions, create_thread, etc.). Call this first if you don't know the workspace slug — and before creating one, since an invitation means the team already has a workspace.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mark_wiki_source_ingested ~166
Take a source out of the company brain's queue, once what it says is in the wiki. Call it after folding a source into pages yourself — otherwise it stays queued, the nightly job digests it again in its own way, and writes over what you did. It is what closes the loop when you do the ingesting rather than leaving it to that job. Marking one already digested is not an error, and requeue_wiki_source undoes it.
| Name | Type | Req | Description |
|---|---|---|---|
| source_id | string | yes | The source's id, as listed by list_wiki_sources. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
monnet_whoami ~32
Verify your Monnet MCP connection and list the API keys on your account. Useful for debugging setup issues.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
move_wiki_node ~145
Move a page or a folder into another folder, or to the wiki root. Links survive a move — they point at the id, not the path — so reorganising is safe.
| Name | Type | Req | Description |
|---|---|---|---|
| destination_folder_path | string | – | Path of the destination folder. Omit to move it to the root. |
| node_id | string | yes | Id of the page or folder to move, from get_wiki_tree. |
| node_type | string | yes | Which of the two it is. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
push_wiki_source ~189
Add a text document to a workspace's company brain as raw material — notes, a transcript, a spec. The nightly job reads it and folds what it says into the pages it belongs on. Push the source rather than writing the page yourself when the material is long or covers several subjects: compressing it across pages is what that job does. For a fact that clearly belongs on one page you have read, edit_wiki_page is more direct.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | The document's full text. |
| filename | string | yes | A descriptive filename, with its extension (e.g. 'acme-kickoff-notes.md'). This is how the file is listed and referred to. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
read_motion_file ~214
Read a file attached to a motion. Text, markdown, CSV, JSON and source files come back as their contents; Word, Excel, PowerPoint and PDF documents come back as their extracted text; images come back as the image itself. A PDF whose text cannot be extracted — a scan, or a protected file — comes back as a URL to open instead. Call get_motion first: it lists every attachment with the id and the filename this tool takes.
| Name | Type | Req | Description |
|---|---|---|---|
| file_id | string | – | The file's id, from the FILES section of get_motion. Prefer it over filename — two attachments on one motion may share a name. |
| filename | string | – | The file's name, exactly as get_motion lists it. Used only when file_id is not given. |
| motion_short_id | string | yes | The first 8 characters of the motion UUID, visible in the motion URL. |
| workspace_slug | string | yes | The workspace slug from the motion URL (e.g. 'monnet-team-410b'). |
No output schema declared.
No examples provided.
read_playbook ~124
One playbook in full: its name, its description, and the body Monnet actually follows. Call this before edit_playbook — a revision written without reading the current body replaces it wholesale, and whatever you did not know was in it is gone.
| Name | Type | Req | Description |
|---|---|---|---|
| playbook_id | string | yes | The playbook's id, as returned by list_playbooks or create_playbook. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
read_wiki_page ~137
Read one company-brain page's full contents, as markdown. Read the page before editing it — edit_wiki_page replaces an exact string, and the ## Sources section at the bottom has to be kept current.
| Name | Type | Req | Description |
|---|---|---|---|
| page_id | string | yes | The page's full id, as returned by get_wiki_tree, search_wiki or create_wiki_page. Not the 8-character short id — those address motions, not pages. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
read_wiki_source ~177
Read one of the company brain's raw source files — the material a wiki page was compressed FROM. Use it to check what a page claims against what its source actually says, or to read something the nightly job has not digested yet. Text comes back in full; anything else, or anything long, comes back as a signed link to fetch. The first line always says which. Sources are never edited: correct the page, not the record it was built from.
| Name | Type | Req | Description |
|---|---|---|---|
| source_id | string | yes | The source's id, as listed by list_wiki_sources or carried by a page's ## Sources link (?source=<id>). |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
reject ~141
Reject a plan step on a motion, with an optional reason. Requires editor role on the motion. Use get_motion first to see the plan and read the step's number.
| Name | Type | Req | Description |
|---|---|---|---|
| motion_short_id | string | yes | The first 8 characters of the motion UUID. |
| reason | string | – | Why it is rejected (max 2,000 chars). Left empty, Monnet asks the user for the explanation. |
| step_path | string | yes | The step's number as get_motion prints it: "2" for a top-level step, "1.2" for the second step inside the first group. |
| workspace_slug | string | yes | The workspace slug. |
No output schema declared.
No examples provided.
rename_wiki_folder ~106
Rename a company-brain folder. Safe — nothing links to a folder by name, and the pages inside keep their ids.
| Name | Type | Req | Description |
|---|---|---|---|
| folder_path | string | yes | Path of the folder to rename, as shown by get_wiki_tree. |
| name | string | yes | Its new name. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
requeue_wiki_source ~154
Put a digested source back in the company brain's queue, so the nightly job reads it again. Use it to undo a mark made too early, or to have a source re-read on purpose — after the team rewrites its schema, or when a page the source fed turns out to be wrong. It does not change any page: it only decides what the next run looks at.
| Name | Type | Req | Description |
|---|---|---|---|
| source_id | string | yes | The source's id, as listed by list_wiki_sources under the digested ones. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
search_wiki ~126
Search INSIDE company-brain pages — their titles and their bodies. Use it to find where a fact already lives before writing it somewhere new; get_wiki_tree gives you every title, so reach for this when what you are looking for is in a page's contents rather than its name.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Words to look for. Words shorter than three characters are ignored. |
| workspace_slug | string | yes | The workspace slug, from any Monnet URL (e.g. 'monnet-team-410b'). Call list_workspaces if you do not have it. |
No output schema declared.
No examples provided.
update_motion ~192
Update a motion's summary, body, priority, or plan. All fields are optional — only include the ones you want to change. For plan updates, provide the full list of steps (use get_motion first to see the current plan, then modify and send it back). A plan with groups cannot be written here: ask Monnet with ask_monnet instead.
| Name | Type | Req | Description |
|---|---|---|---|
| body | string | – | New body in markdown (1-50,000 chars). Optional. |
| motion_short_id | string | yes | The first 8 characters of the motion UUID. |
| plan | array | – | Full replacement plan — array of step objects. Each step: {content, status, assignees?, approval?, approved_by?}. Optional. |
| priority | string | – | New priority. Optional. |
| summary | string | – | New summary (1-500 chars). Optional. |
| workspace_slug | string | yes | The workspace slug. |
No output schema declared.
No examples provided.
What is the ai.monnet/mcp server?
ai.monnet/mcp is listed in the public MCP registry as ai.monnet/mcp. MCP server for Monnet, motions, plans, files, approvals, and the team's company brain. This page covers its npm package (@monnet/mcp).
Is the ai.monnet/mcp server safe to use?
ai.monnet/mcp scores 75 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 25 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 ai.monnet/mcp server expose?
ai.monnet/mcp exposes 33 tools: monnet_whoami, list_workspaces, get_motion, read_motion_file, list_motions, and 28 more. Their descriptions and schemas cost roughly 5,166 tokens of context every time the server is loaded.
Is the ai.monnet/mcp server still maintained?
ai.monnet/mcp is still listed as active in the MCP registry. We last reached this channel on 25 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 ai.monnet/mcp server under?
ai.monnet/mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.