foundry_mcp/types/
project.rs1use serde::{Deserialize, Serialize};
4use std::path::PathBuf;
5
6use crate::core::backends::ResourceLocator;
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
10pub struct Project {
11 pub name: String,
12 pub created_at: String,
13 pub path: PathBuf, #[serde(skip_serializing_if = "Option::is_none")]
17 pub location_hint: Option<String>,
18 #[serde(skip_serializing_if = "Option::is_none")]
19 pub locator: Option<ResourceLocator>,
20
21 pub vision: Option<String>,
23 pub tech_stack: Option<String>,
24 pub summary: Option<String>,
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize)]
29pub struct ProjectConfig {
30 pub name: String,
31 pub vision: String,
32 pub tech_stack: String,
33 pub summary: String,
34}
35
36#[derive(Debug, Clone, Serialize, Deserialize)]
38pub struct ProjectMetadata {
39 pub name: String,
40 pub created_at: String,
41 pub spec_count: usize,
42 pub last_modified: String,
43}