Skip to main content
Glama

Spreadsheet MCP Server

by HosakaKeigo
getSpreadsheet.ts1.78 kB
/** * スプレッドシート情報取得ツール */ import { z } from "zod"; import { extractSpreadsheetId, getSpreadsheetInfo } from "../api/spreadsheet.js"; import { formatSpreadsheetInfo } from "../utils/format.js"; /** * スプレッドシート情報取得ツール * ユーザーが提供したURLからスプレッドシートの基本情報を取得 */ export const getSpreadsheetTool = { name: "getSpreadsheet", description: "スプレッドシートの基本情報と含まれるシート一覧を取得", schema: { url: z.string().describe("スプレッドシートのURL") }, handler: async ({ url }: { url: string }) => { try { const spreadsheetId = extractSpreadsheetId(url); if (!spreadsheetId) { return { content: [ { type: "text" as const, text: "有効なスプレッドシートURLではありません。Google SpreadsheetのURLを入力してください。" } ], isError: true }; } const spreadsheetInfo = await getSpreadsheetInfo(spreadsheetId); // フォーマットして返す const formattedResult = formatSpreadsheetInfo(spreadsheetInfo); return { content: [ { type: "text" as const, text: formattedResult } ] }; } catch (error) { console.error("スプレッドシート情報取得エラー:", error); return { content: [ { type: "text" as const, text: `スプレッドシート情報の取得中にエラーが発生しました: ${error instanceof Error ? error.message : String(error)}` } ], isError: true }; } } };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HosakaKeigo/spreadsheet-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server