Server

Server capabilities encompass all the features MCP servers provide to enhance your applications through tools, resources, prompts, and real-time notifications.

Overview

MCP servers offer five main types of interactions:

  • Tools - Server-side operations that can be executed by LLMs
  • Resources - Static and dynamic data that can be included in conversations
  • Prompts - Pre-defined prompts with arguments for consistent interactions
  • Tasks - Pollable background work with lifecycle state and cancellation (experimental)
  • Notifications - Real-time updates from servers about ongoing operations

Table of contents

  1. Overview
  2. Table of contents
  3. Server Capabilities
    1. Tools
    2. Resources
    3. Prompts
    4. Tasks
    5. Notifications
  4. Getting Started
  5. Next Steps

Server Capabilities

Tools

Execute server-side operations like reading files, making API calls, or running calculations. Tools are automatically converted into RubyLLM-compatible tools for seamless LLM integration.

Resources

Access structured data from files, databases, or dynamic sources. Resources can be static content or parameterized templates that generate content based on arguments.

Prompts

Use pre-defined prompts with arguments to ensure consistent interactions across your application. Prompts help standardize common queries and maintain formatting consistency.

Tasks

Track and manage long-running server operations with task lifecycle endpoints (tasks/list, tasks/get, tasks/result, tasks/cancel). This surface is experimental and may change in both the MCP spec and this gem implementation.

Notifications

Handle real-time updates from servers including logging messages, progress tracking, and resource change notifications during long-running operations.

Getting Started

Explore each server interaction type to understand how to leverage MCP server capabilities:

  • Tools - Execute server-side operations
  • Resources - Access and include data in conversations
  • Prompts - Use predefined prompts with arguments
  • Tasks - Poll and manage long-running background operations (experimental)
  • Notifications - Handle real-time server updates

Next Steps

Once you understand server interactions, explore:


Table of contents