ProjectAtlasMcpServer

Struct ProjectAtlasMcpServer 

Source
pub(crate) struct ProjectAtlasMcpServer {
    project_state: Arc<RwLock<McpProjectState>>,
    session: String,
    usage_runtime: Arc<Mutex<McpUsageRuntime>>,
    allow_nearest_project: bool,
    task_registry: Arc<RwLock<McpTaskRegistry>>,
    background_resources: McpBackgroundResourceEnvelope,
    next_task_sequence: Arc<AtomicU64>,
    source_observations: Arc<SourceObservationRegistry>,
    tool_router: ToolRouter<Self>,
}
Expand description

Native ProjectAtlas MCP server backed by the same services as the CLI.

Fields§

§project_state: Arc<RwLock<McpProjectState>>

Active project state for calls that omit project_path.

§session: String

Caller-visible compatibility label applied to this MCP process’s events.

§usage_runtime: Arc<Mutex<McpUsageRuntime>>

Bounded telemetry lifecycle shared by every server clone and routed project.

§allow_nearest_project: bool

Whether absolute path arguments may select the nearest indexed project by default.

§task_registry: Arc<RwLock<McpTaskRegistry>>

Bounded MCP task-progress records for this server session.

§background_resources: McpBackgroundResourceEnvelope

Fixed aggregate worker partition for background indexing tasks.

§next_task_sequence: Arc<AtomicU64>

Monotonic session-local task identifier source.

§source_observations: Arc<SourceObservationRegistry>

Bounded per-project source observers and verified read epochs.

§tool_router: ToolRouter<Self>

Official RMCP tool router.

Implementations§

Source§

impl ProjectAtlasMcpServer

Source

pub(crate) fn new( db_path: PathBuf, config_path: Option<PathBuf>, session: String, allow_nearest_project: bool, ) -> Self

Create a ProjectAtlas MCP server instance.

Source

fn open_read_store(state: &McpProjectState) -> Result<AtlasStore, CliError>

Open the durable index through one root-bound read snapshot.

Source

fn with_fresh_store_for_request<T, F>( &self, state: &McpProjectState, context: Option<RequestContext<RoleServer>>, query: F, ) -> Result<VerifiedReadOutcome<T>, CliError>

Run one verified query with optional RMCP request cancellation bridging.

Source

fn with_fresh_store_controlled_for_request<T, F>( &self, state: &McpProjectState, context: Option<RequestContext<RoleServer>>, query: F, ) -> Result<VerifiedReadOutcome<T>, CliError>

Run one verified query that consumes the request cancellation boundary.

Source

fn with_fresh_string_for_request<F>( &self, state: &McpProjectState, context: Option<RequestContext<RoleServer>>, query: F, ) -> Result<String, CliError>

Run one rendered MCP query with request cancellation bridged into index work.

Source

fn with_fresh_string_and_usage_for_request<F>( &self, state: &McpProjectState, context: Option<RequestContext<RoleServer>>, query: F, ) -> Result<String, CliError>

Record optional usage only after source and SQLite result acceptance succeeds.

Source

fn with_fresh_string_and_usage_controlled_for_request<F>( &self, state: &McpProjectState, context: Option<RequestContext<RoleServer>>, query: F, ) -> Result<String, CliError>

Render one verified MCP query that consumes request cancellation.

Source

fn open_mut_store(state: &McpProjectState) -> Result<AtlasStore, CliError>

Open the durable index for mutation.

Source

fn open_existing_mut_store( state: &McpProjectState, ) -> Result<AtlasStore, CliError>

Open an existing selected-project index for purpose or health mutation.

Source

fn telemetry_enabled() -> bool

Return whether this MCP process can record optional telemetry.

Source

fn record_usage_for_state<F>( &self, state: &McpProjectState, store: &AtlasStore, record: F, )

Record telemetry and rotate only this project’s scope if baselines are full.

Source

fn record_accepted_usage( &self, state: &McpProjectState, stamp: &VerifiedReadStamp, intent: &McpUsageIntent, output: &str, )

Best-effort telemetry for one result whose source epoch has already been accepted.

Source

fn estimated_source_tokens_cached( &self, state: &McpProjectState, store: &AtlasStore, stamp: &VerifiedReadStamp, folder: Option<&str>, file_pattern: Option<&str>, ) -> Result<usize, CliError>

Reuse an optional broad-source telemetry baseline within one complete generation.

Source

fn seal_usage_instances_for_projects(&self)

Best-effort seal each selected project’s current identity at shutdown.

Source

fn load_config_for_state( state: &McpProjectState, ) -> Result<AtlasMapConfig, CliError>

Load effective atlas config for the selected state.

Source

fn admin_project_root( &self, project_path: Option<String>, ) -> Result<McpProjectState, CliError>

Return the selected project root used by admin-style MCP calls.

Source

fn parse_ignore_kind( kind: Option<&str>, required: bool, ) -> Result<Option<IgnoreEntryKind>, CliError>

Parse an MCP ignore kind parameter.

Source

fn parse_purpose_lint_level( value: Option<&str>, ) -> Result<PurposeLintLevel, CliError>

Parse an MCP purpose lint level parameter.

Source

fn parse_harness_config(value: Option<&str>) -> Result<HarnessConfig, CliError>

Parse an MCP harness config parameter.

Source

fn parse_token_chart_theme( value: Option<&str>, ) -> Result<TokenDashboardTheme, CliError>

Parse the optional token chart theme parameter.

Source

fn invalid_parameter_message(prefix: &str, value: &str, suffix: &str) -> String

Build an invalid-parameter diagnostic from centralized fragments.

Source

fn build_map_report( state: &McpProjectState, json: bool, force: bool, ) -> Result<McpMapReport, CliError>

Build a compatibility map report, writing the map unless CI skip policy applies.

Source

fn session_capabilities( &self, state: &McpProjectState, text_index_max_bytes: u64, ) -> McpSessionCapabilities

Build typed MCP session capabilities from active server state.

Source

fn render_settings_with_capabilities( &self, state: &McpProjectState, ) -> Result<String, CliError>

Encode settings plus additive MCP-session capability fields.

Source

fn selected_project_capability( state: &McpProjectState, ) -> McpSelectedProjectCapability

Build the selected-project capability row.

Source

fn path_scope(&self) -> McpPathScope

Return the path scope for this MCP server.

Source

fn policy_state(enabled: bool) -> McpPolicyState

Convert a bool into a serialized policy state.

Source

fn brief_limit(value: Option<usize>) -> usize

Clamp a caller-provided brief limit to the supported range.

Source

fn build_session_brief( &self, params: AtlasSessionBriefParams, context: Option<RequestContext<RoleServer>>, ) -> Result<McpSessionBrief, CliError>

Build a read-only agent startup brief.

Source

fn brief_policy(&self) -> McpBriefPolicy

Build brief policy fields.

Source

fn build_compact_session_brief( &self, params: AtlasSessionBriefParams, context: Option<RequestContext<RoleServer>>, ) -> Result<McpCompactSessionBrief, CliError>

Build the additive compact projection without changing legacy defaults or query behavior.

Source

fn compact_session_brief( brief: &McpSessionBrief, project_path: Option<String>, ) -> McpCompactSessionBrief

Project the compatibility report into the explicit compact response shape.

Source

fn brief_candidate(row: RankedNode) -> McpBriefCandidate

Convert a ranked node into the compatibility-preserving startup candidate.

Source

fn compact_brief_candidate(row: &McpBriefCandidate) -> McpCompactBriefCandidate

Project one compatibility candidate into the bounded compact shape.

Source

fn brief_connection_is_crisp(connection: &RankedConnection) -> bool

Prefer a resolved non-import edge as the single default startup connection sample.

Source

fn compact_brief_purpose_handoff( handoff: &PurposeCuratorHandoff, project_path: Option<String>, ) -> McpCompactBriefPurposeHandoff

Project an actionable handoff into one exact follow-up call instead of duplicating rows.

Source

fn compact_brief_recommendation( recommendation: &McpBriefRecommendation, ) -> McpCompactBriefRecommendation

Add compact opt-ins to one legacy recommendation without changing its source report.

Source

fn brief_blockers( store: &AtlasStore, blocker_limit: usize, ) -> Result<McpBriefBlockers, CliError>

Build bounded health blockers for a session brief.

Source

fn missing_index_recommendations( project_path: Option<String>, ) -> Vec<McpBriefRecommendation>

Recommend next calls for a missing index.

Source

fn indexed_project_recommendations( query: &str, next_navigation_call: Option<NavigationNextCall>, blocker_total: usize, blocker_limit: usize, project_path: Option<String>, ) -> Vec<McpBriefRecommendation>

Recommend next calls for an indexed project.

Source

fn project_path_arguments(project_path: Option<String>) -> Value

Build a JSON object containing project_path when present.

Source

fn brief_call_arguments( project_path: Option<String>, string_args: &[(&'static str, &str)], usize_arg: Option<(&'static str, usize)>, ) -> Value

Build recommendation call arguments with optional project path and one payload argument.

Source

fn string_argument(key: &'static str, value: impl Into<String>) -> Value

Build a one-field string argument object for typed recommendations.

Source

fn task_state_values() -> Vec<McpTaskState>

Return all task model states for contract discovery.

Source

fn task_operation_values() -> Vec<McpTaskOperation>

Return all task operation values for contract discovery.

Source

fn start_index_task<F>( &self, operation: McpTaskOperation, options: SymbolBuildOptions, result_ref: &'static str, work: F, ) -> Result<McpTaskStartResponse, CliError>

Start one bounded session-local indexing task.

Source

fn task_status( &self, task_id: String, ) -> Result<McpTaskStatusResponse, CliError>

Look up one MCP task status.

Source

fn task_cancel( &self, task_id: String, ) -> Result<McpTaskCancelResponse, CliError>

Cancel one MCP task when cancellation is supported.

Source

fn lint_report_for_state( state: &McpProjectState, params: &AtlasLintParams, ) -> Result<McpLintReport, CliError>

Build a CLI-compatible lint report for MCP callers.

Source

fn startup_project_state( db_path: PathBuf, config_path: Option<PathBuf>, ) -> McpProjectState

Build startup state from CLI-supplied DB/config paths.

Source

fn startup_project_root(db_path: &Path, config_path: Option<&Path>) -> PathBuf

Resolve startup root best-effort so server construction stays infallible.

Source

fn project_root_from_default_db_path(db_path: &Path) -> Option<PathBuf>

Infer a root from a conventional root/.projectatlas/projectatlas.db path.

Source

fn active_project_state(&self) -> Result<McpProjectState, CliError>

Read the active MCP project state.

Source

fn set_active_project_state( &self, state: McpProjectState, ) -> Result<(), CliError>

Replace the active MCP project state.

Source

fn state_for_project_path( &self, project_path: Option<String>, ) -> Result<McpProjectState, CliError>

Return active state or a per-call project override.

Source

fn state_for_project_path_with_config_validation( &self, project_path: Option<String>, validation: McpConfigValidation, ) -> Result<McpProjectState, CliError>

Return project state under the requested configuration-validation timing.

Source

fn nearest_project_enabled(&self, override_value: Option<bool>) -> bool

Return the nearest-project policy for one call, honoring explicit overrides.

Source

fn state_and_root_path( &self, project_path: Option<String>, path: Option<String>, nearest_project: bool, ) -> Result<(McpProjectState, PathBuf), CliError>

Return selected state and validate an optional root assertion.

Source

fn background_state_and_root_path( &self, project_path: Option<String>, path: Option<String>, nearest_project: bool, ) -> Result<(McpProjectState, PathBuf), CliError>

Select a background project without reading configuration before task admission.

Source

fn state_and_root_path_with_config_validation( &self, project_path: Option<String>, path: Option<String>, nearest_project: bool, validation: McpConfigValidation, ) -> Result<(McpProjectState, PathBuf), CliError>

Select project state and validate a root assertion under one config timing policy.

Source

fn absolute_path_inside_selected_root( state: &McpProjectState, path: &str, ) -> Result<bool, CliError>

Return whether a root assertion path is inside the selected root but not root-equivalent.

Source

fn nearest_root_state_for_root_argument_with_config_validation( path: &Path, validation: McpConfigValidation, ) -> Result<Option<McpProjectState>, CliError>

Return nearest indexed root under one configuration-validation timing policy.

Source

fn state_and_file_key( &self, project_path: Option<&str>, file: &str, nearest_project: bool, ) -> Result<McpResolvedRepoPath, CliError>

Return state and a repository-relative file key for an MCP file argument.

Source

fn state_and_optional_file_key( &self, project_path: Option<&str>, file: Option<&str>, nearest_project: bool, ) -> Result<(McpProjectState, Option<String>, bool), CliError>

Return state and an optional repository-relative file key for MCP symbol arguments.

Source

fn state_and_optional_folder_filter( &self, project_path: Option<&str>, folder: Option<&str>, nearest_project: bool, ) -> Result<(McpProjectState, Option<String>, bool), CliError>

Return state and an optional folder filter for MCP file-ranking arguments.

Source

fn nearest_state_and_repo_key( active_state: &McpProjectState, path: &str, ) -> Result<Option<McpResolvedRepoPath>, CliError>

Resolve an absolute addressed path to the nearest indexed project and repo key.

Source

fn absolute_path_key_in_selected_project( state: &McpProjectState, path: &Path, ) -> Result<Option<String>, CliError>

Return a selected-project repository key for an absolute path inside the active root.

Source

fn normalized_optional_path(path: Option<String>) -> Option<String>

Normalize optional project/root path text from MCP payloads.

Source

fn project_state_from_root(root: &Path) -> Result<McpProjectState, CliError>

Build ProjectAtlas state for one project root.

Source

fn project_state_from_root_with_config_validation( root: &Path, validation: McpConfigValidation, ) -> Result<McpProjectState, CliError>

Build project state while controlling when configuration content is validated.

Source

fn project_state_from_nearest_indexed_path( path: &Path, ) -> Result<Option<McpProjectState>, CliError>

Build project state from the nearest indexed ancestor of an addressed path.

Source

fn project_state_from_nearest_indexed_path_with_config_validation( path: &Path, validation: McpConfigValidation, ) -> Result<Option<McpProjectState>, CliError>

Build nearest canonical project state under one config-validation policy.

Source

fn project_state_from_nearest_lexical_indexed_path( path: &Path, ) -> Result<Option<McpProjectState>, CliError>

Build project state from the nearest lexical indexed ancestor of an addressed path.

Source

fn project_state_from_nearest_lexical_indexed_path_with_config_validation( path: &Path, validation: McpConfigValidation, ) -> Result<Option<McpProjectState>, CliError>

Build nearest lexical project state under one config-validation policy.

Source

fn indexed_root_from_candidate(candidate: &Path) -> Option<McpIndexedRoot>

Return a role-typed indexed root when a candidate folder has a matching DB.

Source

fn indexed_root_from_lexical_candidate( candidate: &Path, ) -> Option<McpIndexedRoot>

Return an indexed lexical root without treating symlinked descendants as the lexical owner.

Source

fn lexically_normalized_absolute_path(path: &Path) -> PathBuf

Return a normalized absolute path without resolving symlinks or junctions.

Return whether a path contains a symlink component in its lexical ancestry.

Return whether metadata represents a symlink or Windows reparse point.

Source

fn reject_ambiguous_nearest_project_path( path: &Path, lexical_state: Option<&McpProjectState>, canonical_state: Option<&McpProjectState>, canonical_path: &McpAbsolutePath, ) -> Result<(), CliError>

Reject nearest-project routing when lexical and canonical roots disagree.

Source

fn ambiguous_nearest_project_path_error( path: &Path, lexical_state: Option<&McpProjectState>, canonical_state: Option<&McpProjectState>, ) -> CliError

Build a clear MCP error for ambiguous symlink or junction routing.

Source

fn indexed_db_matches_root(db_path: &Path, root: &Path) -> bool

Return whether an existing DB records the same canonical project root.

Source

fn projectatlas_db_path(root: &Path) -> PathBuf

Return the standard ProjectAtlas DB path for one project root.

Source

fn projectatlas_nested_config_path(root: &Path) -> PathBuf

Return the standard nested ProjectAtlas config path for one project root.

Source

fn projectatlas_flat_config_path(root: &Path) -> PathBuf

Return the flat ProjectAtlas config path for one project root.

Source

fn config_path_for_project_root( root: &Path, validation: McpConfigValidation, ) -> Result<Option<PathBuf>, CliError>

Find a project-local config and optionally reject one pointing at another root.

Source

fn validate_project_config_root( root: &Path, config_path: &Path, ) -> Result<(), CliError>

Ensure a selected project’s config cannot redirect the MCP root.

Source

fn config_matches_project_root(root: &Path, config_path: &Path) -> bool

Return whether a startup config belongs to the selected root.

Source

fn render_project_state(state: &McpProjectState) -> Result<String, CliError>

Render active project state for agents.

Source

fn project_state_payload(state: &McpProjectState) -> McpProjectStatePayload

Build selected-project payload fields.

Source

fn with_selected_project_audit( state: &McpProjectState, routed_project: bool, toon: String, ) -> Result<String, CliError>

Prefix routed cross-project read payloads with selected root/DB metadata.

Source

fn with_selected_project_audit_controlled( state: &McpProjectState, routed_project: bool, toon: String, control: &IndexWorkControl, ) -> Result<String, CliError>

Prefix one controlled analysis payload with selected root/DB metadata.

Source

fn path_or_project_root( state: &McpProjectState, path: Option<String>, ) -> Result<PathBuf, CliError>

Return a path parameter or the selected project root.

Source

fn validated_indexed_node_key( store: &AtlasStore, path: &str, ) -> Result<String, CliError>

Validate an MCP purpose path as an indexed folder or file key.

Source

fn selected_project_path_error(message: impl Display) -> CliError

Add selected-project guidance to repository-relative path errors.

Source

fn query_or_empty(query: Option<String>) -> String

Return a query parameter with a stable default.

Source

fn encode_serialized_payload<T>(payload: T) -> Result<String, CliError>
where T: Serialize,

Encode one serializable payload as agent-readable TOON text.

Source

fn encode_named_payload<T>(key: &str, payload: &T) -> Result<String, CliError>
where T: Serialize,

Encode a dynamic top-level payload key without relying on json! key syntax.

Source

fn encode_two_named_payloads<T, U>( first_key: &str, first_payload: &T, second_key: &str, second_payload: &U, ) -> Result<String, CliError>
where T: Serialize, U: Serialize,

Encode two dynamic top-level payload keys without relying on json! key syntax.

Source

fn encode_error_payload(error: &CliError) -> String

Encode an MCP error as a structured agent-readable payload.

Source

fn as_mcp_text(result: Result<String, CliError>) -> String

Convert a command result into an agent-readable TOON MCP text payload.

Source§

impl ProjectAtlasMcpServer

Source

pub fn atlas_set_project_path_tool_attr() -> Tool

Generated tool metadata function for atlas_set_project_path

Source

fn atlas_set_project_path( &self, Parameters: Parameters<AtlasSetProjectPathParams>, ) -> String

Select the active project root for subsequent MCP calls.

Source

pub fn atlas_init_tool_attr() -> Tool

Generated tool metadata function for atlas_init

Source

fn atlas_init(&self, Parameters: Parameters<AtlasInitParams>) -> String

Initialize a ProjectAtlas project-local config surface.

Source

pub fn atlas_map_tool_attr() -> Tool

Generated tool metadata function for atlas_map

Source

fn atlas_map(&self, Parameters: Parameters<AtlasMapParams>) -> String

Write an explicit compatibility map export.

Source

pub fn atlas_root_tool_attr() -> Tool

Generated tool metadata function for atlas_root

Source

fn atlas_root(&self, Parameters: Parameters<AtlasRootParams>) -> String

Return root/DB/config diagnostics.

Source

pub fn atlas_root_set_tool_attr() -> Tool

Generated tool metadata function for atlas_root_set

Source

fn atlas_root_set(&self, Parameters: Parameters<AtlasRootSetParams>) -> String

Bind, move, or detach a project root and then make it active.

Source

pub fn atlas_config_tool_attr() -> Tool

Generated tool metadata function for atlas_config

Source

fn atlas_config(&self, Parameters: Parameters<AtlasProjectParams>) -> String

Return the effective ProjectAtlas config.

Source

pub fn atlas_ignore_list_tool_attr() -> Tool

Generated tool metadata function for atlas_ignore_list

Source

fn atlas_ignore_list( &self, Parameters: Parameters<AtlasProjectParams>, ) -> String

Return the effective ProjectAtlas ignore policy.

Source

pub fn atlas_ignore_init_gitignore_tool_attr() -> Tool

Generated tool metadata function for atlas_ignore_init_gitignore

Source

fn atlas_ignore_init_gitignore( &self, Parameters: Parameters<AtlasProjectParams>, ) -> String

Create a project-root .gitignore when it is absent.

Source

pub fn atlas_ignore_add_tool_attr() -> Tool

Generated tool metadata function for atlas_ignore_add

Source

fn atlas_ignore_add( &self, Parameters: Parameters<AtlasIgnoreMutationParams>, ) -> String

Add a manual ProjectAtlas ignore entry.

Source

pub fn atlas_ignore_remove_tool_attr() -> Tool

Generated tool metadata function for atlas_ignore_remove

Source

fn atlas_ignore_remove( &self, Parameters: Parameters<AtlasIgnoreMutationParams>, ) -> String

Remove a manual ProjectAtlas ignore entry.

Source

pub fn atlas_scan_tool_attr() -> Tool

Generated tool metadata function for atlas_scan

Source

fn atlas_scan(&self, Parameters: Parameters<AtlasScanParams>) -> String

Scan a repository, import purpose metadata, rebuild symbols, and return an overview.

Source

fn atlas_overview_response( &self, params: AtlasProjectParams, context: Option<RequestContext<RoleServer>>, ) -> String

Render one verified overview response with optional request cancellation.

Source

pub fn atlas_overview_tool_attr() -> Tool

Generated tool metadata function for atlas_overview

Source

fn atlas_overview( &self, Parameters: Parameters<AtlasProjectParams>, context: RequestContext<RoleServer>, ) -> String

Return the indexed repository overview.

Source

pub fn atlas_folders_tool_attr() -> Tool

Generated tool metadata function for atlas_folders

Source

fn atlas_folders( &self, Parameters: Parameters<AtlasQueryParams>, context: RequestContext<RoleServer>, ) -> String

Rank folders before an agent chooses a work area.

Source

fn atlas_folders_response( &self, params: AtlasQueryParams, context: Option<RequestContext<RoleServer>>, ) -> String

Build the folders response with optional request telemetry context.

Source

pub fn atlas_files_tool_attr() -> Tool

Generated tool metadata function for atlas_files

Source

fn atlas_files( &self, Parameters: Parameters<AtlasFilesParams>, context: RequestContext<RoleServer>, ) -> String

Rank files after an agent has chosen a folder or query.

Source

fn atlas_files_response( &self, params: AtlasFilesParams, context: Option<RequestContext<RoleServer>>, ) -> String

Build the files response with optional request telemetry context.

Source

pub fn atlas_next_tool_attr() -> Tool

Generated tool metadata function for atlas_next

Source

fn atlas_next( &self, Parameters: Parameters<AtlasQueryParams>, context: RequestContext<RoleServer>, ) -> String

Recommend the next indexed folders, files, and inspection commands.

Source

pub fn atlas_outline_tool_attr() -> Tool

Generated tool metadata function for atlas_outline

Source

fn atlas_outline( &self, Parameters: Parameters<AtlasOutlineParams>, context: RequestContext<RoleServer>, ) -> String

Build a compact file outline.

Source

fn atlas_file_summary_response( &self, params: &AtlasFileSummaryParams, context: Option<RequestContext<RoleServer>>, ) -> String

Render one verified structured file-summary response.

Source

pub fn atlas_file_summary_tool_attr() -> Tool

Generated tool metadata function for atlas_file_summary

Source

fn atlas_file_summary( &self, Parameters: Parameters<AtlasFileSummaryParams>, context: RequestContext<RoleServer>, ) -> String

Return deterministic structured file intelligence from the deep index.

Source

pub fn atlas_search_tool_attr() -> Tool

Generated tool metadata function for atlas_search

Search selected indexed files with optional context lines.

Source

pub fn atlas_slice_tool_attr() -> Tool

Generated tool metadata function for atlas_slice

Source

fn atlas_slice( &self, Parameters: Parameters<AtlasSliceParams>, context: RequestContext<RoleServer>, ) -> String

Return an exact line or symbol slice from a selected file.

Source

pub fn atlas_symbols_build_tool_attr() -> Tool

Generated tool metadata function for atlas_symbols_build

Source

fn atlas_symbols_build(&self, Parameters: Parameters<AtlasScanParams>) -> String

Rebuild symbol graphs for indexed files.

Source

fn atlas_symbols_response( &self, params: &AtlasSymbolsParams, context: Option<RequestContext<RoleServer>>, ) -> String

Render one verified symbol-list response.

Source

pub fn atlas_symbols_tool_attr() -> Tool

Generated tool metadata function for atlas_symbols

Source

fn atlas_symbols( &self, Parameters: Parameters<AtlasSymbolsParams>, context: RequestContext<RoleServer>, ) -> String

List indexed symbols.

Source

fn detailed_symbol_relations_response( state: &McpProjectState, routed_project: bool, file: &str, params: &AtlasSymbolRelationsParams, analysis: bool, stores: SymbolRelationStores<'_>, control: &IndexWorkControl, ) -> Result<(String, Option<McpUsageIntent>), CliError>

Render the shared detailed/analysis contract through one selected store set.

Source

fn atlas_symbol_relations_response( &self, params: &AtlasSymbolRelationsParams, context: Option<RequestContext<RoleServer>>, ) -> String

Render one verified legacy or detailed symbol-relation response.

Source

pub fn atlas_symbol_relations_tool_attr() -> Tool

Generated tool metadata function for atlas_symbol_relations

Source

fn atlas_symbol_relations( &self, Parameters: Parameters<AtlasSymbolRelationsParams>, context: RequestContext<RoleServer>, ) -> String

List indexed symbol relations.

Source

pub fn atlas_health_tool_attr() -> Tool

Generated tool metadata function for atlas_health

Source

fn atlas_health( &self, Parameters: Parameters<AtlasHealthParams>, context: RequestContext<RoleServer>, ) -> String

Return structural health findings.

Source

pub fn atlas_health_resolve_tool_attr() -> Tool

Generated tool metadata function for atlas_health_resolve

Source

fn atlas_health_resolve( &self, Parameters: Parameters<AtlasHealthResolveParams>, ) -> String

Mark an intentional deterministic health finding as resolved.

Source

pub fn atlas_lint_tool_attr() -> Tool

Generated tool metadata function for atlas_lint

Source

fn atlas_lint(&self, Parameters: Parameters<AtlasLintParams>) -> String

Run ProjectAtlas lint checks without terminating the MCP transport.

Source

pub fn atlas_token_report_tool_attr() -> Tool

Generated tool metadata function for atlas_token_report

Source

fn atlas_token_report(&self, Parameters: Parameters<AtlasTokenParams>) -> String

Return token savings telemetry.

Source

pub fn atlas_parity_report_tool_attr() -> Tool

Generated tool metadata function for atlas_parity_report

Source

fn atlas_parity_report( &self, Parameters: Parameters<AtlasParityParams>, context: RequestContext<RoleServer>, ) -> String

Return repository-intelligence parity readiness.

Source

pub fn atlas_settings_tool_attr() -> Tool

Generated tool metadata function for atlas_settings

Source

fn atlas_settings(&self, Parameters: Parameters<AtlasProjectParams>) -> String

Return local settings and cache/index locations.

Source

pub fn atlas_watch_status_tool_attr() -> Tool

Generated tool metadata function for atlas_watch_status

Source

fn atlas_watch_status( &self, Parameters: Parameters<AtlasProjectParams>, ) -> String

Return watcher availability and operating mode.

Source

pub fn atlas_watch_once_tool_attr() -> Tool

Generated tool metadata function for atlas_watch_once

Source

fn atlas_watch_once( &self, Parameters: Parameters<AtlasWatchOnceParams>, ) -> String

Run one incremental refresh pass.

Source

pub fn atlas_strip_legacy_purpose_tool_attr() -> Tool

Generated tool metadata function for atlas_strip_legacy_purpose

Source

fn atlas_strip_legacy_purpose( &self, Parameters: Parameters<AtlasStripLegacyParams>, ) -> String

Preview or remove legacy .purpose files.

Source

pub fn atlas_reset_index_tool_attr() -> Tool

Generated tool metadata function for atlas_reset_index

Source

fn atlas_reset_index( &self, Parameters: Parameters<AtlasResetIndexParams>, ) -> String

Preview or remove local runtime index/cache files.

Source

pub fn atlas_mcp_config_tool_attr() -> Tool

Generated tool metadata function for atlas_mcp_config

Source

fn atlas_mcp_config( &self, Parameters: Parameters<AtlasMcpConfigParams>, ) -> String

Generate a project-local MCP config document.

Source

pub fn atlas_runtime_info_tool_attr() -> Tool

Generated tool metadata function for atlas_runtime_info

Source

fn atlas_runtime_info( &self, Parameters: Parameters<AtlasProjectParams>, ) -> String

Return runtime identity and compiled MCP tool surface.

Source

pub fn atlas_session_brief_tool_attr() -> Tool

Generated tool metadata function for atlas_session_brief

Source

fn atlas_session_brief( &self, Parameters: Parameters<AtlasSessionBriefParams>, context: RequestContext<RoleServer>, ) -> String

Return a compact startup brief for agents.

Source

pub fn atlas_task_status_tool_attr() -> Tool

Generated tool metadata function for atlas_task_status

Source

fn atlas_task_status(&self, Parameters: Parameters<AtlasTaskParams>) -> String

Return typed status for one MCP task-progress record.

Source

pub fn atlas_task_cancel_tool_attr() -> Tool

Generated tool metadata function for atlas_task_cancel

Source

fn atlas_task_cancel(&self, Parameters: Parameters<AtlasTaskParams>) -> String

Request cancellation for one MCP task-progress record.

Source

pub fn atlas_purpose_queue_tool_attr() -> Tool

Generated tool metadata function for atlas_purpose_queue

Source

fn atlas_purpose_queue( &self, Parameters: Parameters<AtlasPurposeQueueParams>, context: RequestContext<RoleServer>, ) -> String

Return a bounded purpose curation queue.

Source

pub fn atlas_purpose_set_tool_attr() -> Tool

Generated tool metadata function for atlas_purpose_set

Source

fn atlas_purpose_set( &self, Parameters: Parameters<AtlasPurposeSetParams>, ) -> String

Set an agent-approved purpose in the durable index.

Source

pub fn atlas_purpose_review_tool_attr() -> Tool

Generated tool metadata function for atlas_purpose_review

Source

fn atlas_purpose_review( &self, Parameters: Parameters<AtlasPurposeReviewParams>, context: RequestContext<RoleServer>, ) -> String

Batch-review existing purpose records through the MCP surface.

Source

fn tool_router() -> ToolRouter<Self>

Trait Implementations§

Source§

impl Clone for ProjectAtlasMcpServer

Source§

fn clone(&self) -> ProjectAtlasMcpServer

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ProjectAtlasMcpServer

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl ServerHandler for ProjectAtlasMcpServer

Source§

fn get_info(&self) -> ServerInfo

Source§

async fn call_tool( &self, request: CallToolRequestParams, context: RequestContext<RoleServer>, ) -> Result<CallToolResult, ErrorData>

Handle a tools/call request from a client. Read more
Source§

async fn list_tools( &self, _request: Option<PaginatedRequestParams>, _context: RequestContext<RoleServer>, ) -> Result<ListToolsResult, ErrorData>

Source§

fn get_tool(&self, name: &str) -> Option<Tool>

Get a tool definition by name. Read more
§

fn enqueue_task( &self, _request: CallToolRequestParams, _context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<CreateTaskResult, ErrorData>> + MaybeSendFuture

§

fn ping( &self, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + MaybeSendFuture

§

fn initialize( &self, request: InitializeRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<InitializeResult, ErrorData>> + MaybeSendFuture

§

fn complete( &self, request: CompleteRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<CompleteResult, ErrorData>> + MaybeSendFuture

§

fn set_level( &self, request: SetLevelRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + MaybeSendFuture

§

fn get_prompt( &self, request: GetPromptRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<GetPromptResult, ErrorData>> + MaybeSendFuture

§

fn list_prompts( &self, request: Option<PaginatedRequestParams>, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<ListPromptsResult, ErrorData>> + MaybeSendFuture

§

fn list_resources( &self, request: Option<PaginatedRequestParams>, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<ListResourcesResult, ErrorData>> + MaybeSendFuture

§

fn list_resource_templates( &self, request: Option<PaginatedRequestParams>, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<ListResourceTemplatesResult, ErrorData>> + MaybeSendFuture

§

fn read_resource( &self, request: ReadResourceRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<ReadResourceResult, ErrorData>> + MaybeSendFuture

§

fn subscribe( &self, request: SubscribeRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + MaybeSendFuture

§

fn unsubscribe( &self, request: UnsubscribeRequestParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<(), ErrorData>> + MaybeSendFuture

§

fn on_custom_request( &self, request: CustomRequest, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<CustomResult, ErrorData>> + MaybeSendFuture

§

fn on_cancelled( &self, notification: CancelledNotificationParam, context: NotificationContext<RoleServer>, ) -> impl Future<Output = ()> + MaybeSendFuture

§

fn on_progress( &self, notification: ProgressNotificationParam, context: NotificationContext<RoleServer>, ) -> impl Future<Output = ()> + MaybeSendFuture

§

fn on_initialized( &self, context: NotificationContext<RoleServer>, ) -> impl Future<Output = ()> + MaybeSendFuture

§

fn on_roots_list_changed( &self, context: NotificationContext<RoleServer>, ) -> impl Future<Output = ()> + MaybeSendFuture

§

fn on_custom_notification( &self, notification: CustomNotification, context: NotificationContext<RoleServer>, ) -> impl Future<Output = ()> + MaybeSendFuture

§

fn list_tasks( &self, request: Option<PaginatedRequestParams>, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<ListTasksResult, ErrorData>> + MaybeSendFuture

§

fn get_task_info( &self, request: GetTaskInfoParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<GetTaskResult, ErrorData>> + MaybeSendFuture

§

fn get_task_result( &self, request: GetTaskResultParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<GetTaskPayloadResult, ErrorData>> + MaybeSendFuture

§

fn cancel_task( &self, request: CancelTaskParams, context: RequestContext<RoleServer>, ) -> impl Future<Output = Result<CancelTaskResult, ErrorData>> + MaybeSendFuture

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

§

impl<R, S> DynService<R> for S
where R: ServiceRole, S: Service<R>,

§

fn handle_request( &self, request: <R as ServiceRole>::PeerReq, context: RequestContext<R>, ) -> Pin<Box<dyn Future<Output = Result<<R as ServiceRole>::Resp, ErrorData>> + Send + '_>>

§

fn handle_notification( &self, notification: <R as ServiceRole>::PeerNot, context: NotificationContext<R>, ) -> Pin<Box<dyn Future<Output = Result<(), ErrorData>> + Send + '_>>

§

fn get_info(&self) -> <R as ServiceRole>::Info

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<H> Service<RoleServer> for H
where H: ServerHandler,

§

async fn handle_request( &self, request: <RoleServer as ServiceRole>::PeerReq, context: RequestContext<RoleServer>, ) -> Result<<RoleServer as ServiceRole>::Resp, ErrorData>

§

async fn handle_notification( &self, notification: <RoleServer as ServiceRole>::PeerNot, context: NotificationContext<RoleServer>, ) -> Result<(), ErrorData>

§

fn get_info(&self) -> <RoleServer as ServiceRole>::Info

§

impl<S> ServiceExt<RoleServer> for S
where S: Service<RoleServer>,

§

fn serve_with_ct<T, E, A>( self, transport: T, ct: CancellationToken, ) -> impl Future<Output = Result<RunningService<RoleServer, S>, ServerInitializeError>> + MaybeSendFuture
where T: IntoTransport<RoleServer, E, A>, E: Error + Send + Sync + 'static,

§

fn into_dyn(self) -> Box<dyn DynService<R>>

Convert this service to a dynamic boxed service Read more
§

fn serve<T, E, A>( self, transport: T, ) -> impl Future<Output = Result<RunningService<R, Self>, <R as ServiceRole>::InitializeError>> + MaybeSendFuture
where T: IntoTransport<R, E, A>, E: Error + Send + Sync + 'static, Self: Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,