Project Tools

Create and manage trame projects with natural language commands

Projects are the top-level organizational unit in trame. Each project serves as a container for features, implementation plans, and team collaboration. All projects are private by default, with role-based access control ensuring secure team workflows.

Natural Language First
All project tools work seamlessly with natural language commands. Simply ask your AI assistant what you want to do, and it will invoke the appropriate MCP tools automatically.

Getting Started

The typical workflow starts with creating a project, then using it as a home for your features and plans. Here's how to get started:

1

Create Your Project

Start by creating a new project with a descriptive name and clear description.
2

List Your Projects

View all projects you have access to, including owned projects and team projects.
3

Study Project Details

Get comprehensive information about a project, including all features and recent activity.

Tool Reference

create_project
Create a new private project. The authenticated user automatically becomes the project owner with full administrative access.

Parameters

name
string
required

The name of your project (e.g., "My Web App", "Analytics Dashboard")

description
string
required

A clear description of what this project does or aims to accomplish

Returns

The created project object with ID, name, description, owner info, privacy status, and timestamps

Example

Natural Language Examples:

"Create a project called Task Manager for building a collaborative task management app"

"I need a new project named E-commerce Platform to build an online store with React"

"Create a project called API Gateway for microservices routing and authentication"

Expected Response:
✓ Project created successfully!

Project: Task Manager
Description: Building a collaborative task management app
Project ID: proj_abc123
Status: active
Private: Yes
Owner: you@example.com
Created: 2025-02-13T10:00:00Z
Project Ownership
When you create a project, you automatically become the owner with full permissions. You can invite team members later with different role levels (Admin, Worker, Viewer).
list_projects
List all projects where you are a member. This includes projects you own and projects where you've been invited as a team member. The list is automatically filtered based on your access permissions.

Returns

Human-readable list of projects with names, descriptions, IDs, status, privacy settings, and creation dates. Returns a helpful message if you have no projects yet.

Example

Natural Language Examples:

"Show me all my projects"

"List my projects"

"What projects do I have access to?"

Expected Response (with projects):
✓ Your Projects (2):

1. Task Manager
   Description: A collaborative task management application
   Project ID: proj_123
   Status: active
   Private: Yes
   Created: 2025-02-10T10:00:00Z

2. Personal Blog
   Description: My personal blog site
   Project ID: proj_456
   Status: active
   Private: Yes
   Created: 2025-02-10T11:30:00Z

Expected Response (no projects):
You have no projects yet. Use create_project to create your first project.
study_project
Get comprehensive information about a specific project, including all features, their versions, and project metadata. This is your main entry point for understanding project structure before working on features or plans.

Parameters

project_id
string
required

The UUID of the project to study (from list_projects or create_project)

Returns

Detailed project information including name, description, status, owner, and a complete list of features with their metadata (title, description, current version, timestamps). Features are listed with summary info only - use get_feature to see full specifications.

Example

Natural Language Examples:

"Tell me about project proj_abc123"

"Study the Task Manager project"

"What features does project proj_abc123 have?"

"Show me the details of my E-commerce Platform project"

Expected Response:
✓ Project: Task Manager

Description: A collaborative task management application for teams
Project ID: proj_123
Status: active
Created: 2025-02-10T10:00:00Z

Features (2):

1. User Authentication
   ID: feat_abc
   Description: OAuth 2.0 authentication with Google and email
   Current Version: v2
   Created: 2025-02-10T10:15:00Z

2. Task CRUD Operations
   ID: feat_def
   Description: Create, read, update, and delete tasks
   Current Version: v1
   Created: 2025-02-10T11:00:00Z
Access Control
You can only study projects where you are a member. Attempting to access a project you don't have permissions for will return a permission error.

Common Use Cases

Starting a New Project

When beginning a new software project, create a trame project to organize all features and implementation work:

You: "Create a project called Social Network API for building a REST API for social networking features"

Your AI assistant (internally calls create_project):
✓ Project created! Your project ID is proj_xyz789

You: "Now show me my projects"

Your AI assistant (internally calls list_projects):
✓ Your Projects (1):
1. Social Network API
   Project ID: proj_xyz789

Understanding Project Structure

Before adding new features or working on plans, study the project to understand what already exists:

You: "Study the Social Network API project"

Your AI assistant (internally calls study_project):
✓ Project: Social Network API
Features (3):
1. User Management (feat_001) - v2
2. Post Creation (feat_002) - v1
3. Friend Connections (feat_003) - v1

Now you can see what's already been specified!

Working with Multiple Projects

When you're collaborating on multiple projects, list them to find the one you need:

You: "List all my projects"

Your AI assistant (internally calls list_projects):
✓ Your Projects (3):
1. Social Network API - proj_xyz789
2. Task Manager - proj_123
3. E-commerce Platform - proj_456

You: "Tell me about the Task Manager project"

Your AI assistant (internally calls study_project with proj_123)

Organizing Feature Development

Projects provide structure for managing features and implementation plans throughout the development lifecycle:

  • Create once: Establish your project container with a clear name and purpose
  • Add features: Define what needs to be built using the feature tools
  • Create plans: Break features down into implementable work units
  • Track progress: Use study_project to see the current state at any time
  • Collaborate: Invite team members to contribute (Admin/Worker/Viewer roles)

Best Practices

Naming Your Projects

  • Use clear, descriptive names that indicate the project's purpose
  • Keep names concise but meaningful (2-5 words is ideal)
  • Avoid generic names like "Project 1" or "Test"
  • Examples: "Customer Portal", "Analytics Dashboard", "Payment Service"

Writing Project Descriptions

  • Clearly state what the project does or aims to accomplish
  • Include key technologies or frameworks if relevant
  • Keep it brief but informative (1-2 sentences)
  • Make it understandable for new team members

Project Organization Tips

  • Create one project per repository or major application
  • Use study_project regularly to review current state
  • Keep project status active while work is ongoing
  • Archive projects when they're no longer actively developed

Next Steps

Once you've created and understand your project structure, you're ready to start adding features. Features define what needs to be built, and are the foundation for creating implementation plans.

Learn more about managing features in the Feature Tools documentation.