Skip to content

added initial scaffolding files with python ref SDK#1

Open
kapil8811 wants to merge 2 commits intomodelcontextprotocol:mainfrom
kapil8811:user/kapil8811/scaffolding_and_usability_changes
Open

added initial scaffolding files with python ref SDK#1
kapil8811 wants to merge 2 commits intomodelcontextprotocol:mainfrom
kapil8811:user/kapil8811/scaffolding_and_usability_changes

Conversation

@kapil8811
Copy link

Initial scaffolding for the SEP-1913 Trust & Safety Tool Annotations Python SDK, including core library, comprehensive test suite, documentation, examples, and CI pipeline.

Motivation and Context

This is the foundational commit for the experimental-ext-tool-annotations repository. It establishes the full Python reference SDK for SEP-1913 trust and safety annotations for MCP tool calls. The SDK enables MCP servers to declare metadata about data sensitivity (HIPAA, PII, financial, credentials), input/output destinations, outcome severity, attribution, and malicious activity hints — allowing hosts and agents to make informed policy decisions before invoking tools or forwarding results.

How Has This Been Tested?

  • Full pytest suite with 6 test modules covering types, annotation serialization, emission, policy enforcement, propagation, and end-to-end usability scenarios (sdk/python/tests/)
  • Healthcare MCP server example tested via stdio transport with the included MCP client (sdk/python/examples/healthcare/)
  • Multi-agent data leak prevention scenario validated (sdk/python/examples/multi-agent/)
  • Dashboard example for visualizing trust annotations (sdk/python/examples/dashboard/)

Breaking Changes

None — this is the initial commit on a blank-slate repository.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

Key components added:

  • Core SDK (sdk/python/src/): trust_types.py (data model), annotate.py (wire-format serialization), emit.py (event emission), policy.py (policy engine), propagate.py (annotation propagation across tool chains)
  • Examples: Healthcare clinic MCP server with 8 annotated tools, standalone MCP client, multi-agent data leak prevention demo, live dashboard
  • Docs: Problem statement, use cases, approaches, related work, open questions, experimental findings
  • CI: GitHub Actions workflow (.github/workflows/ci.yml)
  • Project config: pyproject.toml, pyrightconfig.json, CONTRIBUTING.md, LICENSE (MIT)


| Role | Name | Organization | GitHub |
| :--- | :--- | :--- | :--- |
| TO BE ADDED | TO BE ADDED | TO BE ADDED| TO BE ADDED |
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SamMorrowDrums I will need some help with facilitator names? :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant