tablestakes
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| update_cells | Batch-update cells. Requires version hash from read_table. Each update is {row, column, value} where:
On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:", e.g. "a1b2c3d4e5f6"). updates: List of {row: int, column: str, value: str} objects. |
| insert_row | Insert a new row. Requires version hash from read_table. Provide values as a dict mapping column identifiers to cell content. Column identifiers: letter ("A"), name ("Priority"), or composite ("B:Priority"). Omitted columns default to empty string. On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). position: 0-based row index for insertion. Use -1 to append at the end. values: Dict mapping column identifiers to cell values. Example: {"Name": "Alice", "B": "30", "C:City": "NYC"} |
| delete_row | Delete a row. Requires version hash from read_table. On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). row_index: 0-based data row index to delete (header row is NOT counted). |
| replace_table | Replace an entire table with new content. Requires version from read_table. Provide new_content as a pipe table string (header row + delimiter + data rows). The server writes back in the ORIGINAL file format: pipe stays pipe, GitBook HTML stays GitBook HTML (attributes preserved). On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). new_content: Full pipe table string including header and delimiter rows. |
| create_table | Create a new table in a Markdown file. Provide content as a pipe table. The table is written in the specified format: "html" (default, collapsed single-line HTML suitable for GitBook) or "pipe" (GFM pipe table). No version hash needed — this creates, not edits. On success returns Args: file_path: Absolute path to the Markdown file. Created if it doesn't exist. content: Table in pipe format (header row + delimiter + data rows). Example: "| Name | Age |\n| --- | --- |\n| Alice | 30 |" position: 1-based line number to insert AFTER. -1 appends (default). 0 inserts at top. format: "html" (default) or "pipe". HTML produces collapsed single-line GitBook-compatible output. GitBook will auto-add width/data-* attributes on sync. |
| insert_column | Insert a new column. Requires version hash from read_table. All existing rows are populated with default_value (empty string if omitted). On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). name: Header text for the new column. default_value: Value for all existing rows (default: empty string). position: 0-based column index for insertion. -1 appends to the right (default). |
| delete_column | Delete a column. Requires version hash from read_table. On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). column: Column letter ("A"), name ("Priority"), or composite ("B:Priority"). |
| rename_column | Rename a column header. Row data is unchanged. Requires version from read_table. On success returns ONLY Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables. version: 12-char hex hash from read_table (after "v:"). old_name: Current column identifier: letter ("A"), name, or composite ("B:Priority"). new_name: New header text for the column. |
| list_tables | List all tables in a Markdown file with column descriptors and row previews. Prefer this over grep for discovering table structure — returns column names, row counts, formats, and version hashes. Use search_tables to find specific data across tables. Output format per table: T{index} {format} {rows}r {cols}c v:{hash} [{section heading}] {column descriptors as A:Name | B:Age | ...} row0: {first row cell values} Use table_index (the number after T) with read_table and write tools. Args: file_path: Absolute path to the Markdown file. preview_rows: Number of data rows to preview (default 1, 0 for none). |
| read_table | Read a full table as a clean pipe table with version hash. Prefer this over reading files directly — handles HTML tables, preserves inline formatting, and returns the version hash needed for any edit. First line of output is metadata: v:{hash} {format} {rows}r {cols}c [{section}] Extract the 12-char hex hash after "v:" (e.g. "a1b2c3d4e5f6") and pass it as the version argument to any write tool. If a write returns STALE_READ, call read_table again for a fresh version. Args: file_path: Absolute path to the Markdown file. table_index: 0-based table index from list_tables (the number after T). |
| search_tables | Search for rows matching a value across one or all tables in a file. Returns matching rows with table index, row index, and version hash so you can immediately follow up with a write tool. Prefer this over grep for table data — it understands column structure and handles HTML tables. Two search modes (regex overrides pattern if both given):
If neither pattern nor regex is provided, returns all rows. Args: file_path: Absolute path to the Markdown file. pattern: Case-insensitive substring to match in cell values. regex: Regular expression to match in cell values (overrides pattern). table_index: Search a specific table (0-based), or -1 for all tables. column: Restrict search to a column (letter, name, or composite). Empty string searches all columns. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |