Standardize MCP interface to match canonical specification#12
Standardize MCP interface to match canonical specification#12SamMorrowDrums merged 5 commits intomainfrom
Conversation
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
|
@copilot I've added
The canonical interface spec is at: https://github.com/SamMorrowDrums/mcp-starters/blob/main/CANONICAL_INTERFACE.md |
I've verified all canonical interface changes using the new setup files: ✅ Format/Lint: All changes from commits ef22140, 313ee0d, and b58fe00 are complete and validated. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Aligns Python implementation with canonical MCP interface for cross-language consistency. Changes parameter naming convention from snake_case to camelCase and adds schema metadata required by spec.
Tools
Parameters: Renamed to camelCase and added
title/descriptionvia PydanticField:task_name→taskName,max_tokens→maxTokenslocation→city,topic→questiondestructiveparameter toconfirm_actionstepsparameter tolong_taskDescriptions: Updated to single-line format without trailing periods per spec.
Resources
Updated URIs and display names:
info://about→about://server(name: "About")file://example.md→doc://example(name: "Example Document")Resource Templates
Updated URIs and display names:
data://items/{item_id}→item://{id}(name: "Item Data")greeting://{name}(name: "Personalized Greeting")Prompts
Added
title/descriptionto all arguments via PydanticField.Note: Python SDK's
PromptArgumentmodel lackstitlefield support (onlyname,description,required). This is a known SDK limitation documented in code.Configuration
Updated
pyproject.tomlto allow camelCase parameter names (ignore = ["N803"]) for cross-language consistency.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
astral.sh/usr/bin/curl curl -LsSf REDACTED(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.