Skill supplies reusable instructions; MCP exposes server resources or callable tools. Choose based on whether the task needs guidance, read-only facts, or an action.
Skill supplies reusable instructions; MCP exposes server resources or callable tools. Choose based on whether the task needs guidance, read-only facts, or an action. Contract: inventory_lookup(sku) returns integer quantity and UTC as_of. A-17=8; B-04=0. A count does not justify write access.
Decision
Skill supplies reusable instructions; MCP exposes server resources or callable tools. Choose based on whether the task needs guidance, read-only facts, or an action.
Worked example
Contract: inventory_lookup(sku) returns integer quantity and UTC as_of. A-17=8; B-04=0. A count does not justify write access.
Failure checks
Inspect server identity, authorization scope, schema, and error behavior. Reject unknown parameters and stale results; never translate an error into zero stock.
Offline example and Agent acceptance workflow
Compare the example input with the result and acceptance checks.
Input text
Review the two read-only inventory examples against the fictional contract below. Preserve a quantity of zero and the sample time on each result.
Review the read-only contract. Return JSON fields tool_name, read_only, required_params, sample_results, and rejection_rule; preserve an as_of timestamp in every sample_results item. Do not call a server or claim live inventory.
Why it is included: Expose documents as stable URI resources so clients can discover and read them without write access.
When it does not fit: This SOP covers stable document resources. The example uses a query tool because stock counts change and need a fresh as_of value; that choice is about this task, not a protocol ban on dynamic resources.