get_server_info
Retrieve information about the operations and capabilities available in the CSV Editor server.
Instructions
Get information about the CSV Editor capabilities.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/csv_editor/server.py:51-94 (handler)The main handler/implementation of the get_server_info tool. It is registered via the @mcp.tool decorator and returns a dictionary describing the CSV Editor server's capabilities, supported formats, and configuration.
@mcp.tool async def get_server_info(ctx: Context) -> dict[str, Any]: """Get information about the CSV Editor capabilities.""" if ctx: await ctx.info("Server information requested") return { "name": "CSV Editor", "version": "2.0.0", "description": "A comprehensive MCP server for CSV file operations and data analysis", "capabilities": { "data_io": [ "load_csv", "load_csv_from_url", "load_csv_from_content", "export_csv", "multiple_export_formats", ], "data_manipulation": [ "filter_rows", "sort_data", "select_columns", "rename_columns", "add_column", "remove_columns", "change_column_type", "fill_missing_values", "remove_duplicates", ], "data_analysis": [ "get_statistics", "correlation_matrix", "group_by_aggregate", "value_counts", "detect_outliers", "profile_data", ], "data_validation": ["validate_schema", "check_data_quality", "find_anomalies"], "session_management": ["multi_session_support", "session_isolation", "auto_cleanup"], }, "supported_formats": ["csv", "tsv", "json", "excel", "parquet", "html", "markdown"], "max_file_size_mb": int(os.getenv("CSV_MAX_FILE_SIZE", "1024")), "session_timeout_minutes": int(os.getenv("CSV_SESSION_TIMEOUT", "60")), } - src/csv_editor/server.py:51-51 (registration)Registration of get_server_info as a tool using the @mcp.tool decorator on the FastMCP instance.
@mcp.tool - src/csv_editor/server.py:1-16 (helper)Server setup: FastMCP instance ('mcp') is initialized here, and the @mcp.tool decorator binds the tool.
"""Main FastMCP server for CSV Editor.""" import logging import os from typing import Any from fastmcp import Context, FastMCP # Configure logging logging.basicConfig( level=logging.INFO, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s" ) logger = logging.getLogger(__name__) # Initialize FastMCP server mcp = FastMCP("CSV Editor")