read_content
Extract specific sections or individual blocks from RBT documents to access targeted content without reading entire files, reducing token usage and improving efficiency.
Instructions
Read section or block by ID.
**KEY FEATURE: Read ONLY what you need!**
- Read a single block (blk-*) → saves tokens, don't read the whole section
- Read a section (sec-*) → gets section + all its blocks
**TIP: Use get_outline() first to find available IDs**
Automatically determines content type based on ID prefix:
- sec-* → reads section with blocks and nested sections
- blk-* → reads single block data
Args:
project_id: Project identifier
content_id: Content ID (section or block ID starting with 'sec-' or 'blk-')
feature_id: Feature identifier (for RBT documents)
doc_type: Document type - REQ/BP/TASK (for RBT documents)
file_path: File path relative to docs/ (for general documents)
Returns:
Content data (section or block)
Example:
# Read section
read_content(
project_id="knowledge-smith",
feature_id="rbt-mcp-tool",
doc_type="BP",
content_id="sec-components"
)
# Read block
read_content(
project_id="knowledge-smith",
feature_id="rbt-mcp-tool",
doc_type="BP",
content_id="blk-component-table"
)
@REQ: REQ-rbt-mcp-tool
@BP: BP-rbt-mcp-tool
@TASK: TASK-006-ReadSectionTool
Input Schema
Name | Required | Description | Default |
---|---|---|---|
content_id | Yes | ||
doc_type | No | ||
feature_id | No | ||
file_path | No | ||
project_id | Yes |
Input Schema (JSON Schema)
{
"properties": {
"content_id": {
"title": "Content Id",
"type": "string"
},
"doc_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Doc Type"
},
"feature_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Feature Id"
},
"file_path": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "File Path"
},
"project_id": {
"title": "Project Id",
"type": "string"
}
},
"required": [
"project_id",
"content_id"
],
"type": "object"
}