Skip to main content
Glama

Roundtable MCP

Role-Based Multi-Model Orchestration Server โ€” Turn multiple AI models into a coordinated expert council.

License: MIT MCP Standard TypeScript Node.js


๐Ÿ›๏ธ What is Roundtable?

Roundtable MCP is a Model Context Protocol (MCP) server designed for role-based multi-model council orchestration.

Instead of asking several models the same question and voting on their answers, Roundtable assigns each model a specialized role, equips them with custom skill guidelines, runs them across a 3-tier priority execution pipeline (Antigravity CLI, Local Ollama, Cloud APIs), and synthesizes their findings into unified reports automatically persisted to your Obsidian Vault.

                 โ”Œโ”€โ”€ Architect (Gemini 3.7 Flash) โ”€โ”€โ”€โ”€โ”
                 โ”œโ”€โ”€ Developer (Gemma 4 Local GPU) โ”€โ”€โ”€โ”ค
Prompt โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€ QA Tester (Claude Sonnet 4.6) โ”€โ”€โ”€โ”ผโ”€โ”€> Synthesis Report
                 โ””โ”€โ”€ DevOps (GPT-OSS 120B) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                       PARALLEL ROUNDTABLE

Related MCP server: Councly MCP Server

๐Ÿ’ก Key Capabilities

  • ๐Ÿ‘ฅ Parallel Expert Panels (roundtable_start): Execute multiple specialized LLMs (Gemini, Claude, Gemma, GPT-OSS) simultaneously for multi-dimensional problem solving.

  • โšก Host Delegation & Exclusion: Automatically skips spawning redundant background CLI/API subprocesses for the active host model, delegating lead synthesis directly to the live session.

  • ๐ŸŒŠ Sequential Cascade Relays (roundtable_cascade): Pipeline tasks across multi-stage handoffs (Architect $\rightarrow$ Developer $\rightarrow$ QA $\rightarrow$ DevOps).

  • ๐Ÿ›ก๏ธ 3-Tier Execution Pipeline: Prioritizes zero-config Antigravity CLI (leveraging your subscription Google OAuth), falls back to Local Ollama GPU, and routes to direct Cloud APIs when needed.

  • ๐ŸŽฏ Dynamic Roles & Skills Engine (roundtable_roles, roundtable_assign_role): Assign models distinct roles (ROLES.md) with dynamic .skill and SKILL.md rules.

  • ๐Ÿ““ Persistent Obsidian Memory & Graph Hubs (roundtable_save, roundtable_search): Automatically log sessions, search past memories, and ingest documents/folders with 30-minute auto-save throttling and automatic Graph View clustering.

  • ๐Ÿ” Honest Execution (Zero Faked Personas): No single-model roleplay simulations. If a model is offline or out of quota, Roundtable honestly reports the connectivity diagnostic.


๐Ÿ› ๏ธ Official Tools Catalog

Official Tool Name

Mode / Category

Description

roundtable_start

๐Ÿ‘ฅ Parallel Council

Starts a multi-model council advisory discussion across registered expert models.

roundtable_cascade

๐ŸŒŠ Sequential Relay

Runs multi-stage sequential relay (Architect โž” Dev โž” QA โž” DevOps).

roundtable_route

๐ŸŽฏ Single Router

Routes a specialized prompt to a single target model or role.

roundtable_roles

๐Ÿ“‹ Project Roles

Displays active project model roles, aliases, and ROLES.md priority sources.

roundtable_assign_role

โœ๏ธ Assign Role

Dynamically assigns a custom role to a model & persists in ROLES.md.

roundtable_assign_skill

๐Ÿง  Assign Skill

Associates a .skill file or skill guideline to a specific model.

roundtable_models

๐Ÿ›๏ธ List Experts

Lists all registered expert models, their roles, and provider status.

roundtable_presets

๐Ÿ“‹ Preset Catalog

Lists all built-in expert roles (qa_tester, cicd_engineer, security_auditor, etc.).

roundtable_search

๐Ÿ““ Vault Search

Searches past session notes in Obsidian memory.

roundtable_save

โœ๏ธ Save Vault Note

Saves custom notes or ingests files/folders into your Obsidian Vault.

roundtable_read

๐Ÿ“– Read Vault Note

Reads full markdown content of an Obsidian note.

roundtable_help

โ“ Help & Cheatsheet

Displays the complete quickstart cheatsheet directly in chat.


๐Ÿš€ Quick Start

1. Clone & Build

git clone https://github.com/hardc0l2e/roundtable-mcp.git
cd roundtable-mcp
npm install
npm run build

2. Configure Models (config.json)

{
  "models": [
    {
      "id": "gemini-flash",
      "name": "Gemini 3.7 Flash (Antigravity)",
      "role_preset": "architect",
      "aliases": ["gemini", "flash", "lead", "architect"],
      "provider": "antigravity-cli",
      "model": "gemini-3.7-flash-medium",
      "enabled": true
    },
    {
      "id": "claude-sonnet",
      "name": "Claude Sonnet 4.6 (Antigravity)",
      "role_preset": "qa_tester",
      "aliases": ["claude", "sonnet", "qa"],
      "provider": "antigravity-cli",
      "model": "claude-sonnet-4-6",
      "enabled": true
    },
    {
      "id": "gpt-oss",
      "name": "GPT-OSS 120B (Antigravity)",
      "role_preset": "cicd_engineer",
      "aliases": ["gpt", "gpt-oss", "devops"],
      "provider": "antigravity-cli",
      "model": "gpt-oss-120b-medium",
      "enabled": true
    },
    {
      "id": "gemma-local",
      "name": "Gemma4 26B 128k (Local GPU)",
      "role": "Primary Implementation Engineer",
      "aliases": ["gemma", "gemma4", "local", "coder"],
      "provider": "ollama",
      "endpoint": "http://localhost:11434/api/generate",
      "model": "gemma4-26b-128k:latest",
      "enabled": true
    }
  ],
  "obsidian": {
    "enabled": true,
    "vault_path": "C:/Users/username/Documents/Obsidian Vault",
    "folder": "roundtable-mcp/Sessions",
    "auto_save": true
  }
}

For detailed provider settings and environment variables, see docs/configuration.md.


๐Ÿ—๏ธ Architecture & Execution Pipeline

Roundtable MCP resolves every model query through a resilient 3-tier priority execution pipeline:

flowchart TD
    Client["MCP Client Host (OpenCode / Antigravity / Codex)"] -->|"JSON-RPC (STDIO)"| Server["Roundtable Server (dist/index.js)"]
    
    subgraph CoreManagers["Core Managers"]
        Server --> Roles["RolesManager (ROLES.md Override)"]
        Server --> Skills["SkillResolver (.skill / SKILL.md)"]
        Server --> Obsidian["ObsidianManager (Vault Search & Ingestion)"]
    end
    
    Roles --> Pipeline["Provider Routing Engine"]
    Skills --> Pipeline
    Obsidian --> Pipeline
    
    subgraph ExecutionPipeline["Execution Pipeline"]
        Pipeline --> Tier1["Tier 1: agy.exe (Google OAuth)"]
        Tier1 -.-> Gemini["Gemini / Claude / GPT-OSS"]
        
        Pipeline --> Tier2["Tier 2: Local GPU (llama.cpp / Ollama)"]
        Tier2 -.-> Gemma["Qwen / Gemma 4 / GPT-OSS"]
        
        Pipeline --> Tier3["Tier 3: Cloud APIs (OpenCode Zen / OpenRouter / Direct)"]
        Tier3 -.-> OpenRouter["Direct REST API Providers"]
    end
    
    Tier1 --> ErrorCheck["Fault Isolation & Root Cause Extraction"]
    Tier2 --> ErrorCheck
    Tier3 --> ErrorCheck
    
    ErrorCheck --> Output["Council Synthesis & Obsidian Vault Auto-Save"]

๐Ÿ”Œ Client Integration Setup

OpenCode (~/.config/opencode/opencode.jsonc)

{
  "mcp": {
    "roundtable": {
      "type": "local",
      "command": [
        "node",
        "C:\\projects\\roundtable-mcp\\dist\\index.js",
        "--config",
        "C:\\projects\\roundtable-mcp\\config.json"
      ]
    }
  }
}

Google Antigravity (~/.gemini/config/mcp_config.json)

{
  "mcpServers": {
    "roundtable-mcp": {
      "command": "node",
      "args": ["c:/projects/roundtable-mcp/dist/index.js"],
      "env": {
        "ROUNDTABLE_CONFIG_PATH": "c:/projects/roundtable-mcp/config.json"
      }
    }
  }
}

๐Ÿ’ก Practical Examples

  1. Run a Parallel Council Discussion:

    roundtable_start(prompt: "Design high-concurrency authentication microservice for 1M DAU")
  2. Run a Multi-Stage Feature Cascade:

    roundtable_cascade(prompt: "Build JWT Authentication Endpoint", pipeline: ["architect", "coder", "qa_tester", "cicd_engineer"])
  3. Ingest Documentation to Obsidian Graph Hub:

    roundtable_save(source_path: "docs/architecture.md", target_folder: "roundtable-mcp", target_base: "ROUNDTABLE MCP", tags: ["architecture", "roundtable"])
  4. Search Past Decision Memory:

    roundtable_search(query: "circuit breakers")

๐Ÿ“„ License

This project is licensed under the MIT License.

Available Tools

6 tools
list_preset_rolesA

Lists all pre-built preset roles available to assign in Roundtable (e.g., qa_tester, cicd_engineer, security_auditor).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It states the tool lists *all* pre-built roles, which indicates a complete, unfiltered read operation, and adds examples to clarify what types of roles are included. However, it does not mention the return format or any potential for empty results, which would be even more transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that states the action and resource with helpful examples. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, no-output-schema tool, the description covers the essential purpose and gives concrete examples. It could mention whether the list is exhaustive or just a subset, but 'all' addresses that. It lacks explicit return format details, but that is not critical for such a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, so the baseline is 4. The description provides contextual value by giving examples of valid role names, which helps the agent understand what to expect. No parameter details are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Lists' and clearly identifies the resource as 'all pre-built preset roles available to assign in Roundtable'. It includes concrete examples, which distinguishes it from sibling tools like list_roundtable_models.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is used when you need to see available preset roles, but it does not explicitly state when to use it over alternatives or provide exclusions. The sibling tool list_roundtable_models exists for models, not roles, but the description does not make this differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_roundtable_modelsA

Lists all registered expert models and their roles on the Roundtable.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It correctly identifies the tool as read-only ('lists'), which implies no destructive side effects. However, it does not state whether results are cached, require authentication, or reflect real-time changes. A 3 is appropriate as it meets the minimum for a safe read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 10 words, concise and front-loaded with the verb 'lists.' Every word earns its place, and there is no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no annotations, and no output schema, the description is reasonably complete for a simple listing operation. It explains what is listed (models and roles). A missing piece is whether the list is of all available models or only those currently activated, but 4 is fair given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0 parameters with 100% coverage, so the baseline is 3. The description adds value beyond the schema by specifying that the output includes not just model names but also 'their roles,' giving context about what each model does. This justifies a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the verb 'lists' and specifies the resource ('all registered expert models and their roles on the Roundtable'), providing a clear and specific purpose. It distinguishes itself from siblings like 'run_roundtable' and 'route_prompt' by focusing on listing models, not executing or routing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'list_preset_roles' (which likely lists roles rather than model-role mappings). There is no mention of prerequisites, such as whether the Roundtable must be initialized first, or when listing models is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

route_promptA

Routes prompt to a single specific expert model or auto-detects target based on prompt triggers.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYes
target_model_idNoID of the target model (e.g., 'gemma-local', 'claude-sonnet', 'deepseek-r1').

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavioral traits. It only states the core action and auto-detection, but omits details like what happens when both parameters are provided, error handling, authentication requirements, or how auto-detection triggers work.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence of 16 words that conveys the essential function without any redundancy. Every word is necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters and no output schema, the description covers the basic purpose but leaves gaps around auto-detection behavior, error scenarios, and parameter interaction. It is minimally adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50% (prompt missing description). The description adds context that 'prompt' is the input to be routed, which is helpful but does not specify format or constraints. For 'target_model_id', the schema already provides a clear description with examples, so the description adds no extra value. Baseline 3 is appropriate given borderline coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('routes prompt') and resource ('specific expert model'), distinguishing it from siblings like 'run_roundtable' which likely sends to multiple models. The mention of 'auto-detects' further clarifies the tool's dual mode.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly suggests when to use this tool (single model routing vs. auto-detection) but does not explicitly contrast with alternatives like 'run_roundtable' or state when not to use it. No exclusions or prerequisites are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_roundtableA

Executes a prompt across the Roundtable of expert models in parallel and synthesizes a role-based council report. Automatically logs session notes to Obsidian vault if configured.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe task or question to submit to the Roundtable panel.
include_modelsNoOptional filter: array of model IDs to include (e.g. ['gemma-local', 'claude-sonnet']). Omit to run all enabled models.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full transparency burden. It discloses the parallel execution and automatic logging side-effect, but does not cover failure modes, required permissions, rate limits, or whether the tool modifies any state. The logging behavior is useful but partial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The main action is front-loaded and the optional side-effect is stated clearly. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should explain return values more clearly. While it states the output is a 'role-based council report', it does not specify format, structure, or how the agent can use it. The description is adequate but leaves ambiguity about the result, which is important for a tool that produces synthesized output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers both parameters (prompt and include_models) with descriptions, achieving 100% schema description coverage. The tool description itself adds no additional meaning for either parameter beyond what the schema already provides. Baseline 3 is appropriate as no extra semantic value is added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool executes a prompt across multiple expert models in parallel and synthesizes a role-based report, with an optional side-effect of logging to Obsidian. This is a specific verb+resource combination that distinguishes it from siblings like route_prompt (single model) or list_roundtable_models (listing only).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for parallel multi-model queries and mentions automatic logging, but it does not explicitly state when to use this tool versus route_prompt or other alternatives. There are no exclusion criteria or prerequisites, though the context of sibling tools provides indirect guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_to_obsidianB

Saves a session summary or custom markdown note directly into the configured Obsidian Vault.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the note.
contentYesMarkdown content to save.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose all behavioral traits. It does not mention that this tool is a write operation (could overwrite existing files), schema constraints (e.g., content size limits, character limits), or whether it requires specific configuration or authentication. This leaves the agent with critical unknowns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that front-loads the key action and resource. It is concise with no wasted words, though it could benefit from minor behavioral disclosure without losing efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (2 params, no nested objects, no enums, no output schema) and lack of annotations, the description should be more complete. It does not explain return behavior, overwrite semantics, or note location, leaving significant gaps for an agent to determine success or errors.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for both parameters: 'title' is 'Title of the note' and 'content' is 'Markdown content to save.' The description itself does not add new meaning beyond the schema, so a baseline score of 3 is appropriate given perfect schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool saves a session summary or custom markdown note into a configured Obsidian Vault. The verb 'saves' and the resource 'Obsidian Vault' are specific, and the description distinguishes it from siblings like search_obsidian_memory which searches rather than saves.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for saving notes, but it does not explicitly state when to use it versus alternatives like search_obsidian_memory. No exclusions or when-not-to-use guidance is provided, which would help the agent avoid misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_obsidian_memoryB

Searches past Roundtable session notes in the configured Obsidian Vault for relevant memory snippets.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesKeywords or topic to search for in past Obsidian vault notes.
max_resultsNoMaximum number of past note snippets to return (default: 3).

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It does not mention result format (snippets vs full notes), limitations (e.g., scope of vault, recency, required setup), or error conditions. The agent lacks critical context about what a 'memory snippet' contains or how results are ordered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the core action. Every word is functional with no redundancy. Achieves maximum conciseness while remaining clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite few parameters and no output schema, the description omits essential context: what a 'memory snippet' looks like, whether results are ranked by relevance, and prerequisites (e.g., must have configured Obsidian vault). This forces the agent to guess the tool's behavior and output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters described. The description adds no extra semantic value beyond the schema's own descriptions (e.g., 'Keywords or topic' and 'Maximum number of past note snippets'). Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches Roundtable session notes in Obsidian Vault for memory snippets. The verb 'searches' and resource are explicit, distinguishing it from sibling tools like save_to_obsidian (write) or run_roundtable (conversational).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The sibling list includes other tools but no contrast or exclusion criteria (e.g., 'use this when you need specific facts, otherwise use route_prompt'). The agent must infer use case from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.0.0
    • First observedlist_preset_roles
    • First observedlist_roundtable_models
    • First observedroute_prompt
    • First observedrun_roundtable
    • First observedsave_to_obsidian
    • First observedsearch_obsidian_memory

TDQS

A3.5/5.0
Disambiguation4/5

Tools are mostly distinct: run_roundtable vs route_prompt target different execution modes (parallel council vs single expert), while list_roundtable_models and list_preset_roles list different types of entities. However, save_to_obsidian and run_roundtable's auto-logging could slightly overlap in concept, though descriptions clarify separate intents.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case (run_roundtable, route_prompt, list_roundtable_models, etc.), with verbs like 'run', 'route', 'list', 'search', 'save' clearly indicating the action. No mixing of conventions.

Tool Count4/5

6 tools is a reasonable size for a niche server focused on AI council orchestration and Obsidian integration. The count feels slightly lean (no tool for managing models directly), but it's well within the optimal range and each tool serves a distinct function.

Completeness3/5

Core workflows (listing models/roles, running roundtables, routing prompts, and saving/searching notes) are covered. However, missing operations like registering/updating custom models or deleting roundtable history leave notable gaps for a fully autonomous workflow.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/hardc0l2e/roundtable-mcp'

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