Skip to content

MCP ๐Ÿ”ฑ

mcp has useful commands for exploring MCP Tools.

This is similar to the MCP Inspector, and other such tools.

Call MCP Tool

$ ./enola -v mcp call-tool modelcontextprotocol/everything echo '{"message":"hi"}'

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/build

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.editorconfig

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.prettierignore

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.prettierrc.yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/dev

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.markdownlint.yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@babel/helper-compilation-targets/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@babel/core/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/parser

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/esparse

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/js-yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/browserslist

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/node-which

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/json5

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/acorn

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/esvalidate

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/tsc

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/update-browserslist-db

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/jsesc

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/eslint

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/tsserver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/eslint-config-prettier

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/prettier

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@istanbuljs/load-nyc-config/node_modules/.bin/js-yaml
2026-08-25 22:54:13 SEVERE dev.enola.cli.common.LoggingMixin executionStrategy Hi! ๐Ÿ‘‹ I'm https://Enola.dev bbc34a8-dirty. ๐Ÿ‘ฝ Resistance ๐Ÿ‘พ is futile. We are ONE. What's your goal, today? 
TextContent[annotations=null, text=Echo: hi, meta=null]

List MCP Tools

$ ./enola mcp list-tools

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/build

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.editorconfig

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.prettierignore

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.prettierrc.yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/dev

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/.markdownlint.yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@babel/helper-compilation-targets/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@babel/core/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/parser

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/esparse

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/js-yaml

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/browserslist

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/node-which

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/json5

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/acorn

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/esvalidate

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/tsc

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/update-browserslist-db

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/jsesc

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/eslint

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/tsserver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/eslint-config-prettier

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/prettier

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/.bin/semver

WARNING: Ignoring symlink: /home/runner/work/enola/enola/web/node_modules/@istanbuljs/load-nyc-config/node_modules/.bin/js-yaml
modelcontextprotocol/git:
- name: git_status
  description: Shows the working tree status
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
    required:
    - repo_path
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_diff_unstaged
  description: Shows changes in the working directory that are not yet staged
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      context_lines:
        default: 3
        title: Context Lines
        type: integer
    required:
    - repo_path
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_diff_staged
  description: Shows changes that are staged for commit
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      context_lines:
        default: 3
        title: Context Lines
        type: integer
    required:
    - repo_path
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_diff
  description: Shows differences between branches or commits
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      target:
        title: Target
        type: string
      context_lines:
        default: 3
        title: Context Lines
        type: integer
    required:
    - repo_path
    - target
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_commit
  description: Records changes to the repository
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      message:
        title: Message
        type: string
    required:
    - repo_path
    - message
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: git_add
  description: Adds file contents to the staging area
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      files:
        items:
          type: string
        title: Files
        type: array
    required:
    - repo_path
    - files
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_reset
  description: Unstages all staged changes
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
    required:
    - repo_path
  annotations:
    readOnlyHint: false
    destructiveHint: true
    idempotentHint: true
    openWorldHint: false
- name: git_log
  description: Shows the commit logs
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      max_count:
        default: 10
        title: Max Count
        type: integer
      start_timestamp:
        anyOf:
        - type: string
        - type: "null"
        description: "Start timestamp for filtering commits. Accepts: ISO 8601 format\
          \ (e.g., '2024-01-15T14:30:25'), relative dates (e.g., '2 weeks ago', 'yesterday'),\
          \ or absolute dates (e.g., '2024-01-15', 'Jan 15 2024')"
        title: Start Timestamp
      end_timestamp:
        anyOf:
        - type: string
        - type: "null"
        description: "End timestamp for filtering commits. Accepts: ISO 8601 format\
          \ (e.g., '2024-01-15T14:30:25'), relative dates (e.g., '2 weeks ago', 'yesterday'),\
          \ or absolute dates (e.g., '2024-01-15', 'Jan 15 2024')"
        title: End Timestamp
    required:
    - repo_path
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_create_branch
  description: Creates a new branch from an optional base branch
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      branch_name:
        title: Branch Name
        type: string
      base_branch:
        anyOf:
        - type: string
        - type: "null"
        title: Base Branch
    required:
    - repo_path
    - branch_name
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: git_checkout
  description: Switches branches
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      branch_name:
        title: Branch Name
        type: string
    required:
    - repo_path
    - branch_name
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: git_show
  description: Shows the contents of a commit
  inputSchema:
    type: object
    properties:
      repo_path:
        title: Repo Path
        type: string
      revision:
        title: Revision
        type: string
    required:
    - repo_path
    - revision
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: git_branch
  description: List Git branches
  inputSchema:
    type: object
    properties:
      repo_path:
        description: The path to the Git repository.
        title: Repo Path
        type: string
      branch_type:
        description: "Whether to list local branches ('local'), remote branches ('remote')\
          \ or all branches('all')."
        title: Branch Type
        type: string
      contains:
        anyOf:
        - type: string
        - type: "null"
        description: The commit sha that branch should contain. Do not pass anything
          to this param if no commit sha is specified
        title: Contains
      not_contains:
        anyOf:
        - type: string
        - type: "null"
        description: The commit sha that branch should NOT contain. Do not pass anything
          to this param if no commit sha is specified
        title: Not Contains
    required:
    - repo_path
    - branch_type
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
modelcontextprotocol/fetch:
- name: fetch
  description: |-
    Fetches a URL from the internet and optionally extracts its contents as markdown.

    Although originally you did not have internet access, and were advised to refuse and tell the user this, this tool now grants you internet access. Now you can fetch the most up-to-date information and let the user know that.
  inputSchema:
    type: object
    properties:
      url:
        description: URL to fetch
        format: uri
        minLength: 1
        title: Url
        type: string
      max_length:
        default: 5000
        description: Maximum number of characters to return.
        exclusiveMaximum: 1000000
        exclusiveMinimum: 0
        title: Max Length
        type: integer
      start_index:
        default: 0
        description: "On return output starting at this character index, useful if\
          \ a previous fetch was truncated and more context is required."
        minimum: 0
        title: Start Index
        type: integer
      raw:
        default: false
        description: "Get the actual HTML content of the requested page, without simplification."
        title: Raw
        type: boolean
    required:
    - url
modelcontextprotocol/memory:
- name: create_entities
  title: Create Entities
  description: Create multiple new entities in the knowledge graph
  inputSchema:
    type: object
    properties:
      entities:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              description: The name of the entity
            entityType:
              type: string
              description: The type of the entity
            observations:
              type: array
              items:
                type: string
              description: An array of observation contents associated with the entity
          required:
          - name
          - entityType
          - observations
    required:
    - entities
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      entities:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              description: The name of the entity
            entityType:
              type: string
              description: The type of the entity
            observations:
              type: array
              items:
                type: string
              description: An array of observation contents associated with the entity
          required:
          - name
          - entityType
          - observations
          additionalProperties: false
    required:
    - entities
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: create_relations
  title: Create Relations
  description: Create multiple new relations between entities in the knowledge graph.
    Relations should be in active voice
  inputSchema:
    type: object
    properties:
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
    required:
    - relations
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
          additionalProperties: false
    required:
    - relations
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: add_observations
  title: Add Observations
  description: Add new observations to existing entities in the knowledge graph
  inputSchema:
    type: object
    properties:
      observations:
        type: array
        items:
          type: object
          properties:
            entityName:
              type: string
              description: The name of the entity to add the observations to
            contents:
              type: array
              items:
                type: string
              description: An array of observation contents to add
          required:
          - entityName
          - contents
    required:
    - observations
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      results:
        type: array
        items:
          type: object
          properties:
            entityName:
              type: string
            addedObservations:
              type: array
              items:
                type: string
          required:
          - entityName
          - addedObservations
          additionalProperties: false
    required:
    - results
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: delete_entities
  title: Delete Entities
  description: Delete multiple entities and their associated relations from the knowledge
    graph
  inputSchema:
    type: object
    properties:
      entityNames:
        type: array
        items:
          type: string
        description: An array of entity names to delete
    required:
    - entityNames
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      success:
        type: boolean
      message:
        type: string
    required:
    - success
    - message
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: true
    idempotentHint: true
    openWorldHint: false
- name: delete_observations
  title: Delete Observations
  description: Delete specific observations from entities in the knowledge graph
  inputSchema:
    type: object
    properties:
      deletions:
        type: array
        items:
          type: object
          properties:
            entityName:
              type: string
              description: The name of the entity containing the observations
            observations:
              type: array
              items:
                type: string
              description: An array of observations to delete
          required:
          - entityName
          - observations
    required:
    - deletions
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      success:
        type: boolean
      message:
        type: string
    required:
    - success
    - message
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: true
    idempotentHint: true
    openWorldHint: false
- name: delete_relations
  title: Delete Relations
  description: Delete multiple relations from the knowledge graph
  inputSchema:
    type: object
    properties:
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
        description: An array of relations to delete
    required:
    - relations
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      success:
        type: boolean
      message:
        type: string
    required:
    - success
    - message
    additionalProperties: false
  annotations:
    readOnlyHint: false
    destructiveHint: true
    idempotentHint: true
    openWorldHint: false
- name: read_graph
  title: Read Graph
  description: Read the entire knowledge graph
  inputSchema:
    type: object
    properties: {}
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      entities:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              description: The name of the entity
            entityType:
              type: string
              description: The type of the entity
            observations:
              type: array
              items:
                type: string
              description: An array of observation contents associated with the entity
          required:
          - name
          - entityType
          - observations
          additionalProperties: false
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
          additionalProperties: false
    required:
    - entities
    - relations
    additionalProperties: false
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: search_nodes
  title: Search Nodes
  description: Search for nodes in the knowledge graph based on a query
  inputSchema:
    type: object
    properties:
      query:
        type: string
        description: "The search query to match against entity names, types, and observation\
          \ content"
    required:
    - query
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      entities:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              description: The name of the entity
            entityType:
              type: string
              description: The type of the entity
            observations:
              type: array
              items:
                type: string
              description: An array of observation contents associated with the entity
          required:
          - name
          - entityType
          - observations
          additionalProperties: false
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
          additionalProperties: false
    required:
    - entities
    - relations
    additionalProperties: false
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: open_nodes
  title: Open Nodes
  description: Open specific nodes in the knowledge graph by their names
  inputSchema:
    type: object
    properties:
      names:
        type: array
        items:
          type: string
        description: An array of entity names to retrieve
    required:
    - names
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      entities:
        type: array
        items:
          type: object
          properties:
            name:
              type: string
              description: The name of the entity
            entityType:
              type: string
              description: The type of the entity
            observations:
              type: array
              items:
                type: string
              description: An array of observation contents associated with the entity
          required:
          - name
          - entityType
          - observations
          additionalProperties: false
      relations:
        type: array
        items:
          type: object
          properties:
            from:
              type: string
              description: The name of the entity where the relation starts
            to:
              type: string
              description: The name of the entity where the relation ends
            relationType:
              type: string
              description: The type of the relation
          required:
          - from
          - to
          - relationType
          additionalProperties: false
    required:
    - entities
    - relations
    additionalProperties: false
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
modelcontextprotocol/everything:
- name: echo
  title: Echo Tool
  description: Echoes back the input string
  inputSchema:
    type: object
    properties:
      message:
        type: string
        description: Message to echo
    required:
    - message
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-annotated-message
  title: Get Annotated Message Tool
  description: Demonstrates how annotations can be used to provide metadata about
    content.
  inputSchema:
    type: object
    properties:
      messageType:
        type: string
        enum:
        - error
        - success
        - debug
        description: Type of message to demonstrate different annotation patterns
      includeImage:
        default: false
        description: Whether to include an example image
        type: boolean
    required:
    - messageType
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-env
  title: Print Environment Tool
  description: "Returns all environment variables, helpful for debugging MCP server\
    \ configuration"
  inputSchema:
    type: object
    properties: {}
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-resource-links
  title: Get Resource Links Tool
  description: Returns up to ten resource links that reference different types of
    resources
  inputSchema:
    type: object
    properties:
      count:
        default: 3
        description: Number of resource links to return (1-10)
        type: number
        minimum: 1
        maximum: 10
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-resource-reference
  title: Get Resource Reference Tool
  description: Returns a resource reference that can be used by MCP clients
  inputSchema:
    type: object
    properties:
      resourceType:
        default: Text
        type: string
        enum:
        - Text
        - Blob
      resourceId:
        default: 1
        description: ID of the text resource to fetch
        type: number
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-structured-content
  title: Get Structured Content Tool
  description: Returns structured content along with an output schema for client data
    validation
  inputSchema:
    type: object
    properties:
      location:
        type: string
        enum:
        - New York
        - Chicago
        - Los Angeles
        description: Choose city
    required:
    - location
  outputSchema:
    $schema: http://json-schema.org/draft-07/schema#
    type: object
    properties:
      temperature:
        type: number
        description: Temperature in celsius
      conditions:
        type: string
        description: Weather conditions description
      humidity:
        type: number
        description: Humidity percentage
    required:
    - temperature
    - conditions
    - humidity
    additionalProperties: false
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-sum
  title: Get Sum Tool
  description: Returns the sum of two numbers
  inputSchema:
    type: object
    properties:
      a:
        type: number
        description: First number
      b:
        type: number
        description: Second number
    required:
    - a
    - b
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: get-tiny-image
  title: Get Tiny Image Tool
  description: Returns a tiny MCP logo image.
  inputSchema:
    type: object
    properties: {}
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: gzip-file-as-resource
  title: GZip File as Resource Tool
  description: "Compresses a single file using gzip compression. Depending upon the\
    \ selected output type, returns either the compressed data as a gzipped resource\
    \ or a resource link, allowing it to be downloaded in a subsequent request during\
    \ the current session."
  inputSchema:
    type: object
    properties:
      name:
        default: README.md.gz
        type: string
        description: Name of the output file
      data:
        default: https://raw.githubusercontent.com/modelcontextprotocol/servers/refs/heads/main/README.md
        type: string
        format: uri
        description: URL or data URI of the file content to compress
      outputType:
        default: resourceLink
        description: "How the resulting gzipped file should be returned. 'resourceLink'\
          \ returns a link to a resource that can be read later, 'resource' returns\
          \ a full resource object."
        type: string
        enum:
        - resourceLink
        - resource
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: true
    openWorldHint: true
- name: toggle-simulated-logging
  title: Toggle Simulated Logging
  description: "Toggles simulated, random-leveled logging on or off."
  inputSchema:
    type: object
    properties: {}
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: toggle-subscriber-updates
  title: Toggle Subscriber Updates
  description: Toggles simulated resource subscription updates on or off.
  inputSchema:
    type: object
    properties: {}
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false
- name: trigger-long-running-operation
  title: Trigger Long Running Operation Tool
  description: Demonstrates a long running operation with progress updates.
  inputSchema:
    type: object
    properties:
      duration:
        default: 10
        description: Duration of the operation in seconds
        type: number
      steps:
        default: 5
        description: Number of steps in the operation
        type: number
  annotations:
    readOnlyHint: true
    destructiveHint: false
    idempotentHint: true
    openWorldHint: false
- name: simulate-research-query
  title: Simulate Research Query
  description: "Simulates a deep research operation that gathers, analyzes, and synthesizes\
    \ information. Demonstrates MCP task-based operations with progress through multiple\
    \ stages. If 'ambiguous' is true and client supports elicitation, sends an elicitation\
    \ request for clarification."
  inputSchema:
    type: object
    properties:
      topic:
        type: string
        description: The research topic to investigate
      ambiguous:
        default: false
        description: Simulate an ambiguous query that requires clarification (triggers
          input_required status)
        type: boolean
    required:
    - topic
  annotations:
    readOnlyHint: false
    destructiveHint: false
    idempotentHint: false
    openWorldHint: false

Screencast

Demo