-
Notifications
You must be signed in to change notification settings - Fork 0
docs: fix UTCP/MCP protocol clarity and markdown syntax #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,23 +1,33 @@ | ||||||
| # Thulp | ||||||
| # thulp | ||||||
|
|
||||||
| [](https://github.com/dirmacs/thulp/actions/workflows/ci.yml) | ||||||
| [](https://crates.io/crates/thulp-core) | ||||||
| [](https://docs.rs/thulp-core) | ||||||
| [](LICENSE-MIT) | ||||||
|
|
||||||
| **Execution Context Engineering Platform for AI Agents** | ||||||
| ## Execution Context Engineering Platform for AI Agents | ||||||
|
|
||||||
| Thulp is a Rust-based toolkit for building AI agents with rich execution contexts. It provides abstractions for tool discovery, execution, workspace management, and integration with the Model Context Protocol (MCP). | ||||||
| Thulp is a Rust-based toolkit for building AI agents with rich execution | ||||||
| contexts. It provides abstractions for tool discovery, execution, workspace | ||||||
| management, and integration with the Model Context Protocol (MCP) via the | ||||||
| [UTCP](https://github.com/universal-tool-calling-protocol/rs-utcp) | ||||||
| (Universal Tool Calling Protocol) implementation. | ||||||
|
|
||||||
| ## Overview | ||||||
|
|
||||||
| Thulp enables AI agents to interact with external tools and services through a unified interface. It handles the complexity of tool discovery, validation, execution, and result handling while providing extensibility through adapters and custom integrations. | ||||||
| Thulp enables AI agents to interact with external tools and services through a | ||||||
| unified interface. It handles the complexity of tool discovery, validation, | ||||||
| execution, and result handling while providing extensibility through adapters | ||||||
| and custom integrations. | ||||||
|
|
||||||
| ### Key Features | ||||||
|
|
||||||
| - **Unified Tool Abstraction**: Consistent interface for defining, validating, and executing tools | ||||||
| - **MCP Integration**: Full Model Context Protocol support via `rs-utcp` (tools, resources, prompts) | ||||||
| - **Type-Safe Parameters**: Strongly-typed parameter validation with JSON Schema support | ||||||
| - **Unified Tool Abstraction**: Consistent interface for defining, validating, | ||||||
| and executing tools | ||||||
| - **MCP Integration**: Full Model Context Protocol support via `rs-utcp` UTCP | ||||||
| implementation (tools, resources, prompts) | ||||||
| - **Type-Safe Parameters**: Strongly-typed parameter validation with JSON | ||||||
| Schema support | ||||||
| - **Query DSL**: Powerful query language for filtering and searching tools | ||||||
| - **Skill Workflows**: Compose multi-step tool workflows with variable interpolation | ||||||
| - **Async by Design**: Built on `tokio` for efficient async execution | ||||||
|
|
@@ -31,28 +41,28 @@ Thulp is organized as a Cargo workspace with 10 crates: | |||||
|
|
||||||
| ### Core Crates | ||||||
|
|
||||||
| | Crate | Description | | ||||||
| |-------|-------------| | ||||||
| | **thulp-core** | Core types and traits (`ToolDefinition`, `Parameter`, `ToolCall`, `Transport`) | | ||||||
| | **thulp-mcp** | MCP transport implementation (STDIO/HTTP, tools, resources, prompts) | | ||||||
| | **thulp-adapter** | OpenAPI v2/v3 to tool definition conversion | | ||||||
| | **thulp-registry** | Async thread-safe tool registry with tagging | | ||||||
| | Crate | Description | | ||||||
| | ------------------ | ------------------------------------------------- | | ||||||
| | **thulp-core** | Core types and traits (`ToolDefinition`, etc.) | | ||||||
| | **thulp-mcp** | MCP transport (STDIO/HTTP, tools, resources) | | ||||||
| | **thulp-adapter** | OpenAPI v2/v3 to tool definition conversion | | ||||||
| | **thulp-registry** | Async thread-safe tool registry with tagging | | ||||||
|
|
||||||
| ### Feature Crates | ||||||
|
|
||||||
| | Crate | Description | | ||||||
| |-------|-------------| | ||||||
| | **thulp-query** | Query DSL for searching and filtering tools | | ||||||
| | **thulp-skills** | Multi-step tool workflow composition and execution | | ||||||
| | **thulp-workspace** | Workspace and execution context management | | ||||||
| | **thulp-browser** | Web fetching, HTML parsing, optional CDP support | | ||||||
| | **thulp-guidance** | Template rendering and LLM guidance primitives | | ||||||
| | Crate | Description | | ||||||
| | ------------------ | ------------------------------------------------- | | ||||||
| | **thulp-query** | Query DSL for searching and filtering tools | | ||||||
| | **thulp-skills** | Multi-step workflow composition and execution | | ||||||
| | **thulp-workspace**| Workspace and execution context management | | ||||||
|
||||||
| | **thulp-workspace**| Workspace and execution context management | | |
| | **thulp-workspace** | Workspace and execution context management | |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The acknowledgment entry for "UTCP: Universal Tool Calling Protocol" is unusual. Acknowledgments typically credit people, organizations, or specific projects/implementations, not protocols themselves. Consider removing this line since UTCP is already acknowledged through the rs-utcp entry above.
| - **UTCP**: Universal Tool Calling Protocol |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Redundant wording: using both "rs-utcp" (the Rust implementation) and "UTCP" (the protocol) creates awkward phrasing. Consider simplifying to either "via the rs-utcp implementation" or "via UTCP (Universal Tool Calling Protocol)" to avoid the repetition.