Skip to content

MisarDev MCP Server

by Misar-AI · remote · local (npm) · no sign-in to list tools · v3.0.0 · published by GitHub user Misar-AI

Create, build and deploy projects, roll back with checkpoints, connect custom domains, and search…

Deletes · 13Changes · 16

54 tools: 13 can delete or cancel things, 16 change things and 25 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http misardev https://api.misar.io/dev/mcp --header 'Authorization: <your-authorization>'

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "archive_project" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "archive_project" says "archive": a word for removing or ending something.

    What this check looks for
  • The server marks "create_chat_completion" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "create_chat_completion" says "create": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

54 tools

Deletes or cancels 13Claude Code: deny
  • archive_projectArchive (archived=true) or un-archive (archived=false) a project.1 finding

    Why it is in this group

    • The name "archive_project" says "archive": a word for removing or ending something.
    • The server marks it not destructive (destructiveHint: false), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "archive_project" not destructive (destructiveHint: false), and its own name, description or input give the class "destructive".

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "archive_project" says "archive": a word for removing or ending something.

      What this check looks for
    Description, as the server wrote it
    Archive (archived=true) or un-archive (archived=false) a project. Archiving hides it from the active list without deleting anything; it is fully reversible.

    Annotations the server declares

    • title: Archive project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • cancel_buildCancel the build currently running on a project.No findings

    Why it is in this group

    • The name "cancel_build" says "cancel": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Cancel the build currently running on a project. Work the build had not yet saved is discarded.

    Annotations the server declares

    • title: Cancel build
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • clear_code_indexDelete every embedding for a project.No findings

    Why it is in this group

    • The description's first verb is "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete every embedding for a project. Code search returns nothing until the project is indexed again. Project files are not touched.

    Annotations the server declares

    • title: Clear code index
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_checkpointDelete one checkpoint from a project's version history.No findings

    Why it is in this group

    • The name "delete_checkpoint" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete one checkpoint from a project's version history. It can no longer be restored afterwards, and the last remaining checkpoint cannot be deleted. Confirm with the user first.

    Annotations the server declares

    • title: Delete checkpoint
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • delete_projectMove a project to the trash.No findings

    Why it is in this group

    • The name "delete_project" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Move a project to the trash. It disappears from every list and route immediately; restore_project brings it back during the retention window. Confirm with the user first — anything published from it stops being editable.

    Annotations the server declares

    • title: Delete project
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • deploy_projectPublish a project to the public internet on the MisarDev runtime (optionally at a chosen subdomain).No findings

    Why it is in this group

    • The name "deploy_project" says "deploy": a word for a change.
    • The description's first verb is "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Publish a project to the public internet on the MisarDev runtime (optionally at a chosen subdomain). The site becomes reachable by anyone. Confirm with the user before calling, check the address first with check_subdomain, and follow with get_deployment_status. Counts against the plan's deploy quota.

    Annotations the server declares

    • title: Deploy project
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • remove_custom_domainDetach a project's custom domain and remove its route.No findings

    Why it is in this group

    • The name "remove_custom_domain" says "remove": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Detach a project's custom domain and remove its route. The domain stops serving the app immediately; the default subdomain keeps working. Confirm with the user first.

    Annotations the server declares

    • title: Remove custom domain
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • restore_checkpointRestore a project's files to a checkpoint.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Restore a project's files to a checkpoint. The current state is snapshotted first, so the restore itself can be undone — but it does overwrite the working files, so confirm with the user. A published site does not change until you deploy again.

    Annotations the server declares

    • title: Restore checkpoint
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
  • revoke_api_keyRevoke an API key by ID.No findings

    Why it is in this group

    • The name "revoke_api_key" says "revoke": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Revoke an API key by ID. It is deleted permanently and anything still using it fails immediately. Confirm with the user first, and never revoke the key this session is using without saying so.

    Annotations the server declares

    • title: Revoke API key
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • unpublish_projectTake a published site offline.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Take a published site offline. Its public URL stops serving immediately. This is not a rollback — to go back to an earlier version, restore_checkpoint and deploy again. Confirm with the user first.

    Annotations the server declares

    • title: Unpublish project
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • update_project_knowledgeReplace a project's knowledge (up to 20,000 characters) — the standing notes the AI builder reads on every change.No findings

    Why it is in this group

    • The name "update_project_knowledge" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Replace a project's knowledge (up to 20,000 characters) — the standing notes the AI builder reads on every change. This replaces the whole text, so read it with get_project_knowledge first and send the edited version.

    Annotations the server declares

    • title: Update project knowledge
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • update_project_subdomainMove a project to a new <subdomain>.misar.app address (check it first with check_subdomain).No findings

    Why it is in this group

    • The name "update_project_subdomain" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Move a project to a new <subdomain>.misar.app address (check it first with check_subdomain). If the app is published, the live site moves immediately and the OLD address stops working — get the user's explicit approval. If it is not published yet, this just reserves the name for the next deploy.

    Annotations the server declares

    • title: Change project subdomain
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: true
  • write_project_filesCreate, update or delete files in a project (1–100 per call, each up to 1 MB; paths are relative, no `..`).No findings

    Why it is in this group

    • The name "write_project_files" says "write": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create, update or delete files in a project (1–100 per call, each up to 1 MB; paths are relative, no `..`). Other files are left as they are. Overwrites and deletes are applied to the working files immediately — confirm with the user, and use list_checkpoints/restore_checkpoint to undo. Pass `version` (from get_project) to refuse the write if anything changed since you read it. The published site does not change until you deploy again.

    Annotations the server declares

    • title: Write project files
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
Changes things 16Claude Code: ask
  • check_subdomainCheck whether a subdomain label is free for this project and, if not, get suggestions.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check whether a subdomain label is free for this project and, if not, get suggestions. The project's own current subdomain reads as available.

    Annotations the server declares

    • title: Check subdomain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • create_api_keyCreate a new API key.No findings

    Why it is in this group

    • The name "create_api_key" says "create": a word for a change.
    Description, as the server wrote it
    Create a new API key. The raw key is returned ONCE — hand it to the user and never repeat or store it. Every MisarDev key has full API access; keys expire (default 90 days, max 365).

    Annotations the server declares

    • title: Create API key
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • create_chat_completionRun a one-shot, non-streaming chat completion on MisarDev's OpenAI-compatible model API.1 finding

    Why it is in this group

    • The name "create_chat_completion" says "create": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "create_chat_completion" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "create_chat_completion" says "create": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Run a one-shot, non-streaming chat completion on MisarDev's OpenAI-compatible model API. model='misar-online' grounds the answer in the web with citations; omit model for the default coding model. Spends model credits.

    Annotations the server declares

    • title: Chat completion
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • create_projectCreate a new, empty project (optionally seeded with a file map).No findings

    Why it is in this group

    • The name "create_project" says "create": a word for a change.
    Description, as the server wrote it
    Create a new, empty project (optionally seeded with a file map). Counts against the plan's project quota. To start from a starter instead, use use_template.

    Annotations the server declares

    • title: Create project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • duplicate_projectCopy a project (files and settings) into a new project you own, named after the original.No findings

    Why it is in this group

    • The description's first verb is "copy": a word for a change.
    Description, as the server wrote it
    Copy a project (files and settings) into a new project you own, named after the original. Counts against the plan's project quota. Any member with read access may duplicate.

    Annotations the server declares

    • title: Duplicate project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • import_artifactImport a published Misar artifact page into a project as imported/ARTIFACT_ID.html.No findings

    Why it is in this group

    • The name "import_artifact" says "import": a word for a change.
    Description, as the server wrote it
    Import a published Misar artifact page into a project as imported/ARTIFACT_ID.html. The url must be exactly https://misar.ai/code/artifact/ARTIFACT_ID; anything else is refused before any fetch.

    Annotations the server declares

    • title: Import artifact into project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • index_project_codeIndex a project's files for semantic code search (RAG).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Index a project's files for semantic code search (RAG). Pass the files to index as a path → content map; re-indexing a path replaces it. Metered — a paid-plan feature.

    Annotations the server declares

    • title: Index project code
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • mark_notification_readMark one notification as read (use mark_notifications_read for all of them).No findings

    Why it is in this group

    • The name "mark_notification_read" says "mark": a word for a change.
    Description, as the server wrote it
    Mark one notification as read (use mark_notifications_read for all of them).

    Annotations the server declares

    • title: Mark one notification read
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • mark_notifications_readMark every notification as read, clearing the unread badge.No findings

    Why it is in this group

    • The name "mark_notifications_read" says "mark": a word for a change.
    Description, as the server wrote it
    Mark every notification as read, clearing the unread badge. Nothing is deleted.

    Annotations the server declares

    • title: Mark notifications read
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • provision_project_backendProvision the database backend for a full-stack project: its own isolated schema, protected by row-level security.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Provision the database backend for a full-stack project: its own isolated schema, protected by row-level security. Safe to repeat — an already-provisioned project reports its existing backend.

    Annotations the server declares

    • title: Provision project backend
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • rename_checkpointGive a checkpoint a human-readable label (1–80 characters) so it is easy to find later.No findings

    Why it is in this group

    • The name "rename_checkpoint" says "rename": a word for a change.
    Description, as the server wrote it
    Give a checkpoint a human-readable label (1–80 characters) so it is easy to find later.

    Annotations the server declares

    • title: Rename checkpoint
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • restore_projectRestore a project from the trash.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Restore a project from the trash. A project that was archived before it was trashed returns to the archive, not to the active list.

    Annotations the server declares

    • title: Restore project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • set_custom_domainAttach a domain the user owns to a published project and provision routing/TLS.No findings

    Why it is in this group

    • The name "set_custom_domain" says "set": a word for a change.
    Description, as the server wrote it
    Attach a domain the user owns to a published project and provision routing/TLS. Paid plans only (the API answers with an upgrade offer otherwise). Returns the DNS record to set — the domain only serves once that record is live.

    Annotations the server declares

    • title: Set custom domain
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • toggle_connectorEnable or disable a connector by slug (from list_connectors).No findings

    Why it is in this group

    • The name "toggle_connector" says "toggle": a word for a change.
    Description, as the server wrote it
    Enable or disable a connector by slug (from list_connectors). Reversible.

    Annotations the server declares

    • title: Toggle connector
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • update_projectUpdate a project's name, description, files, settings or visibility.No findings

    Why it is in this group

    • The name "update_project" says "update": a word for a change.
    Description, as the server wrote it
    Update a project's name, description, files, settings or visibility. Files passed here REPLACE the matching paths. Pass the `version` you read with get_project to avoid overwriting someone else's newer edit (the API answers 409 on a conflict).

    Annotations the server declares

    • title: Update project
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • use_templateCreate a new project from a template.No findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.
    Description, as the server wrote it
    Create a new project from a template. Returns the new project; counts against the plan's project quota.

    Annotations the server declares

    • title: Use template
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Only reads 25Claude Code: allow
  • get_build_statusGet whether a project currently has a build running and its latest build state.No findings

    Why it is in this group

    • The name "get_build_status" says "get": a word for reading.
    Description, as the server wrote it
    Get whether a project currently has a build running and its latest build state. Poll this rather than assuming a build finished.

    Annotations the server declares

    • title: Get build status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_code_index_statsGet embedding statistics for a project — how many files and chunks are indexed and when.No findings

    Why it is in this group

    • The name "get_code_index_stats" says "get": a word for reading.
    Description, as the server wrote it
    Get embedding statistics for a project — how many files and chunks are indexed and when.

    Annotations the server declares

    • title: Get code index stats
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_custom_domainGet a project's custom domain, its status, the DNS record the user must set, and whether DNS already resolves to the platform (TLS is issued automatically once it does).No findings

    Why it is in this group

    • The name "get_custom_domain" says "get": a word for reading.
    Description, as the server wrote it
    Get a project's custom domain, its status, the DNS record the user must set, and whether DNS already resolves to the platform (TLS is issued automatically once it does).

    Annotations the server declares

    • title: Get custom domain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_deployment_statusGet a project's current deployment: whether it is live, its URL, subdomain and custom-domain state.No findings

    Why it is in this group

    • The name "get_deployment_status" says "get": a word for reading.
    Description, as the server wrote it
    Get a project's current deployment: whether it is live, its URL, subdomain and custom-domain state. Call after deploy_project to confirm the site is actually up before telling anyone it is.

    Annotations the server declares

    • title: Get deployment status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • get_projectGet one project by ID — name, description, settings, visibility, version and deployment fields.No findings

    Why it is in this group

    • The name "get_project" says "get": a word for reading.
    Description, as the server wrote it
    Get one project by ID — name, description, settings, visibility, version and deployment fields. Read this before update_project so you change the current version, not a stale copy.

    Annotations the server declares

    • title: Get project
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_project_backendShow a full-stack project's database backend: whether one is provisioned, its schema name, table count and connection state.No findings

    Why it is in this group

    • The name "get_project_backend" says "get": a word for reading.
    Description, as the server wrote it
    Show a full-stack project's database backend: whether one is provisioned, its schema name, table count and connection state.

    Annotations the server declares

    • title: Get project backend
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_project_filesGet a project's file tree with file contents.No findings

    Why it is in this group

    • The name "get_project_files" says "get": a word for reading.
    Description, as the server wrote it
    Get a project's file tree with file contents. Use this to read code before answering questions about it or proposing an update_project change.

    Annotations the server declares

    • title: Get project files
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_project_knowledgeRead a project's knowledge — the standing notes (product context, conventions, constraints) the AI builder reads on every change.No findings

    Why it is in this group

    • The name "get_project_knowledge" says "get": a word for reading.
    Description, as the server wrote it
    Read a project's knowledge — the standing notes (product context, conventions, constraints) the AI builder reads on every change.

    Annotations the server declares

    • title: Get project knowledge
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_subscriptionGet the account's subscription: plan, status, current period end and whether it cancels at period end.No findings

    Why it is in this group

    • The name "get_subscription" says "get": a word for reading.
    Description, as the server wrote it
    Get the account's subscription: plan, status, current period end and whether it cancels at period end.

    Annotations the server declares

    • title: Get subscription
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_templateGet one template by ID — its description, stack and the files it would create.No findings

    Why it is in this group

    • The name "get_template" says "get": a word for reading.
    Description, as the server wrote it
    Get one template by ID — its description, stack and the files it would create.

    Annotations the server declares

    • title: Get template
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_usageGet detailed usage for the account.No findings

    Why it is in this group

    • The name "get_usage" says "get": a word for reading.
    Description, as the server wrote it
    Get detailed usage for the account. format=quick returns a lightweight summary, format=dashboard the full dashboard data; analytics=true adds a per-day breakdown over `days` (default 30). For plan limits at a glance, use upgrade.

    Annotations the server declares

    • title: Get usage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_api_keysList your API keys — name, prefix, created/expiry dates and IP allowlist.No findings

    Why it is in this group

    • The name "list_api_keys" says "list": a word for reading.
    Description, as the server wrote it
    List your API keys — name, prefix, created/expiry dates and IP allowlist. Never returns the secret.

    Annotations the server declares

    • title: List API keys
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_audit_logList your own audit trail — API-key, deployment and billing events where you were the actor, newest first.No findings

    Why it is in this group

    • The name "list_audit_log" says "list": a word for reading.
    Description, as the server wrote it
    List your own audit trail — API-key, deployment and billing events where you were the actor, newest first. Needs a plan that includes audit logs; otherwise it returns an upgrade message.

    Annotations the server declares

    • title: List audit log
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_buildsList your recent AI builds across all projects, newest first, with status, model and the project each belongs to.No findings

    Why it is in this group

    • The name "list_builds" says "list": a word for reading.
    Description, as the server wrote it
    List your recent AI builds across all projects, newest first, with status, model and the project each belongs to.

    Annotations the server declares

    • title: List builds
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_checkpointsList a project's saved checkpoints (up to 100, newest first) with label, changed paths and timestamp.No findings

    Why it is in this group

    • The name "list_checkpoints" says "list": a word for reading.
    Description, as the server wrote it
    List a project's saved checkpoints (up to 100, newest first) with label, changed paths and timestamp. Checkpoints are the project's version history — use one to undo a bad change.

    Annotations the server declares

    • title: List checkpoints
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_connectorsList the connectors available on MisarDev and whether each is enabled for you, with its category, status and dashboard path.No findings

    Why it is in this group

    • The name "list_connectors" says "list": a word for reading.
    Description, as the server wrote it
    List the connectors available on MisarDev and whether each is enabled for you, with its category, status and dashboard path.

    Annotations the server declares

    • title: List connectors
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_notificationsList your notifications (build finished, deploy failed, invitations…), newest first, with the unread count.No findings

    Why it is in this group

    • The name "list_notifications" says "list": a word for reading.
    Description, as the server wrote it
    List your notifications (build finished, deploy failed, invitations…), newest first, with the unread count. Pass `before` (an ISO timestamp from the last row) to page back; unread_only=true returns just the count.

    Annotations the server declares

    • title: List notifications
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_plansList MisarDev's plans with prices, limits and features — what each upgrade would unlock.No findings

    Why it is in this group

    • The name "list_plans" says "list": a word for reading.
    Description, as the server wrote it
    List MisarDev's plans with prices, limits and features — what each upgrade would unlock.

    Annotations the server declares

    • title: List plans
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_projectsList the projects you own or can access, newest first, with cursor pagination.No findings

    Why it is in this group

    • The name "list_projects" says "list": a word for reading.
    Description, as the server wrote it
    List the projects you own or can access, newest first, with cursor pagination. view=active (default) hides archived and trashed projects; pass view=archived or view=trash to see those.

    Annotations the server declares

    • title: List projects
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_templatesList the starter templates a new project can begin from, with their IDs, names and categories.No findings

    Why it is in this group

    • The name "list_templates" says "list": a word for reading.
    Description, as the server wrote it
    List the starter templates a new project can begin from, with their IDs, names and categories. Pick one here before calling use_template.

    Annotations the server declares

    • title: List templates
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • lookup_domainLook up a domain's public registration data (RDAP): whether it is registered, its registrar and key dates.No findings

    Why it is in this group

    • The name "lookup_domain" says "lookup": a word for reading.
    Description, as the server wrote it
    Look up a domain's public registration data (RDAP): whether it is registered, its registrar and key dates. Useful before suggesting a custom domain.

    Annotations the server declares

    • title: Look up domain
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • search_project_codeSemantic search inside an indexed project's code.No findings

    Why it is in this group

    • The name "search_project_code" says "search": a word for reading.
    Description, as the server wrote it
    Semantic search inside an indexed project's code. Answer only from the snippets it returns and cite their file paths; if get_code_index_stats shows nothing indexed, index first.

    Annotations the server declares

    • title: Search project code
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_workspaceSearch across your projects and the public catalogue (templates, skills, the published gallery) by name and description.No findings

    Why it is in this group

    • The name "search_workspace" says "search": a word for reading.
    Description, as the server wrote it
    Search across your projects and the public catalogue (templates, skills, the published gallery) by name and description. Does NOT search inside project files — use search_project_code for that. A source that could not be reached is reported as unavailable, never as zero results.

    Annotations the server declares

    • title: Search workspace
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • upgradeShow the current MisarDev plan, how much of each quota (builds, edits, projects) is left this period, and the link to compare plans and upgrade.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show the current MisarDev plan, how much of each quota (builds, edits, projects) is left this period, and the link to compare plans and upgrade. Call it any time — not only after hitting a limit. Reads only: it never changes the plan or takes payment. On a local install, open=true also opens the pricing page in the user's browser.

    Annotations the server declares

    • title: Plan usage and upgrade
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 3.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http misardev https://api.misar.io/dev/mcp --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__misardev__list_projects",
      "mcp__misardev__get_project",
      "mcp__misardev__get_project_files",
      "mcp__misardev__get_project_knowledge",
      "mcp__misardev__get_project_backend",
      "mcp__misardev__list_templates",
      "mcp__misardev__get_template",
      "mcp__misardev__get_deployment_status",
      "mcp__misardev__list_builds",
      "mcp__misardev__get_build_status",
      "mcp__misardev__list_checkpoints",
      "mcp__misardev__get_custom_domain",
      "mcp__misardev__lookup_domain",
      "mcp__misardev__search_workspace",
      "mcp__misardev__web_search",
      "mcp__misardev__search_project_code",
      "mcp__misardev__get_code_index_stats",
      "mcp__misardev__upgrade",
      "mcp__misardev__get_usage",
      "mcp__misardev__get_subscription",
      "mcp__misardev__list_plans",
      "mcp__misardev__list_notifications",
      "mcp__misardev__list_api_keys",
      "mcp__misardev__list_audit_log",
      "mcp__misardev__list_connectors"
    ],
    "ask": [
      "mcp__misardev__create_project",
      "mcp__misardev__update_project",
      "mcp__misardev__restore_project",
      "mcp__misardev__duplicate_project",
      "mcp__misardev__import_artifact",
      "mcp__misardev__provision_project_backend",
      "mcp__misardev__use_template",
      "mcp__misardev__check_subdomain",
      "mcp__misardev__rename_checkpoint",
      "mcp__misardev__set_custom_domain",
      "mcp__misardev__create_chat_completion",
      "mcp__misardev__index_project_code",
      "mcp__misardev__mark_notifications_read",
      "mcp__misardev__create_api_key",
      "mcp__misardev__mark_notification_read",
      "mcp__misardev__toggle_connector"
    ],
    "deny": [
      "mcp__misardev__delete_project",
      "mcp__misardev__archive_project",
      "mcp__misardev__write_project_files",
      "mcp__misardev__update_project_knowledge",
      "mcp__misardev__deploy_project",
      "mcp__misardev__unpublish_project",
      "mcp__misardev__update_project_subdomain",
      "mcp__misardev__cancel_build",
      "mcp__misardev__restore_checkpoint",
      "mcp__misardev__delete_checkpoint",
      "mcp__misardev__remove_custom_domain",
      "mcp__misardev__clear_code_index",
      "mcp__misardev__revoke_api_key"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as misardev. Review it before you use it.