Skip to content

Tool inputSchema uses additionalProperties: {} which breaks Letta Cloud validation #63

@jigonr

Description

@jigonr

Description

Some tools in obsidian-mcp-tools return inputSchema with {"type": "object", "additionalProperties": {}} which doesn't comply with the MCP specification and causes validation failures in MCP clients like Letta Cloud.

Affected Tools

  • get_server_info
  • delete_active_file

Current Schema (problematic)

{
  "name": "get_server_info",
  "description": "Returns basic details about the Obsidian Local REST API...",
  "inputSchema": {
    "type": "object",
    "additionalProperties": {}
  }
}

Expected Schema (compliant)

Per the MCP specification, tools with no parameters should use:

{
  "name": "get_server_info",
  "description": "Returns basic details about the Obsidian Local REST API...",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "required": []
  }
}

Error Message

When trying to refresh tools in Letta Cloud:

Failed to refresh: 500 {"detail":"{'type': 'object', 'additionalProperties': {}}","trace_id":""}

Environment

  • obsidian-mcp-tools version: 0.2.27
  • MCP protocol version: 2024-11-05
  • Client: Letta Cloud (api.letta.com)

Suggested Fix

Update the schema generation to always include properties and optionally required arrays, even when empty, instead of using additionalProperties: {}.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions