Talk-To-My-Org-Chart: CLI MCP server for org chart queries.
Project description
Talk to My Org Chart - MCP Server
This is the MCP (Model Context Protocol) server for the "Talk to My Org Chart" service. It allows AI assistants to query organizational data through a set of standardized tools.
Overview
The MCP server provides a set of tools for querying organizational data, including:
- Looking up employees by name or alias
- Finding direct and indirect reports
- Searching for employees by various criteria
- Getting organizational metrics
Setup
Prerequisites
- Python 3.9+
- Azure AD tenant (for authentication)
- Access to an organizational data source
Installation
pip install ttmoc
With environment variables:
WHO_NEXT_API_URL: The URL of your API server (e.g., http://localhost:8000)AAD_TENANT_ID: Your Azure Active Directory tenant ID
Available Tools (API Functions)
Once the server is running, it exposes several tools for querying org chart data:
- lookup_employee_by_name_or_alias: Look up employees by display name or alias.
- lookup_direct_reports: Get direct reports for a manager.
- find_all_reports_by_alias: Get all reports (direct and indirect) for a manager, with optional filtering. Note this will usually return a lot of results, so it's recommended to use limit to limit the number of results.
- find_employees: Find employees across the entire organization by criteria (name, title, cost center, etc.). Note this will usually return a lot of results, so it's recommended to use limit to limit the number of results.
- get_span_of_control_by_alias: Get span of control metrics for a manager. Span of control describes on average how many employees a manager has in the organization.
- get_org_depth_by_alias: Get organizational depth metrics for an employee.
- count_all_reports_by_alias: Count all reports (direct and indirect) for a manager, with optional filtering.
- count_employees: Count employees by criteria across the entire organization.
Usage Examples
Looking up an Employee
result = await lookup_employee_by_name_or_alias(name_or_alias="John Doe")
Finding Direct Reports
reports = await lookup_direct_reports(alias="johndoe", limit=20)
Finding All Reports with Filtering
all_reports = await find_all_reports_by_alias(
alias="johndoe",
title="Software Engineer",
limit=100
)
Counting Employees by Criteria
count = await count_employees(
title="Product Manager",
is_manager=True
)
Getting Organizational Metrics
span = await get_span_of_control_by_alias(alias="johndoe")
depth = await get_org_depth_by_alias(alias="johndoe")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ttmoc-0.1.3.tar.gz.
File metadata
- Download URL: ttmoc-0.1.3.tar.gz
- Upload date:
- Size: 11.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfb4b3aa3c51779a7b7c66edf25acf63c4ed06071915843aa61797e2b196ada2
|
|
| MD5 |
000bf4dfaaf1c960e46ca7dc1b19a389
|
|
| BLAKE2b-256 |
2ddc66685333e7150e2f04d6b00f5bdf83f929676e0438e661d0a155042c2cc3
|
File details
Details for the file ttmoc-0.1.3-py3-none-any.whl.
File metadata
- Download URL: ttmoc-0.1.3-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51e121310bfb0fe8fc5fc26fb411a201b15ee0b2304d93f62f51906128113e26
|
|
| MD5 |
3806a6b33ea437ed3b26d024c49e9f88
|
|
| BLAKE2b-256 |
cc4999b4b86fa890d6ae77a8f35d8e9eead85cd40b81898c13902bf9671ceea3
|