project-manager
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@project-managerCreate a task 'Fix login bug' in project 'MainApp'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
What is this project
This project implements stdio MCP server, so that Claude can search data by sending requests to an API backend running on localhost:8000
This is the entry point for your MCP server. Breaking it down:
@click.command() + @click.option — CLI interface with two flags:
--base-url: override the API URL without changing env vars (e.g.--base-url http://staging:8000)--transport: how Claude communicates with the server —stdio(default, used by Claude Desktop via stdin/stdout pipes),sseorstreamable-httpfor network-based transports
def main(...):
Creates a
ProjectManagerClient— your HTTP client that talks to the FastAPI backendCalls
build_mcp(client)— registers all thepm_*tools with the MCP framework, wrapping the client's methods as Claude-callable toolsmcp.run(transport=transport)— starts the server loop, listening for tool calls from Claudeclient.close()infinally— cleanly shuts down the HTTP client when the process exits
Why stdio is the default: Claude Desktop launches this as a subprocess and communicates via stdin/stdout pipes — no network port needed. The sse/streamable-http options would be for remote deployments where Claude connects over HTTP instead.
In short: this boots the bridge between Claude and your project manager API, using whichever communication channel fits the deployment context.
How to register this local MCP server with Claude Desktop
You add below into mcpServers section of %APPDATA%\Claude\claude_desktop_config.json
What does this achieve in %APPDATA%\Claude\claude_desktop_config.json
"project-manager": {
"command": "uv",
"args": [
"run",
"--directory",
"c:\\Users\\amrusub\\programming\\pet_projects\\project_manager_mcp",
"project-manager-mcp"
],
"env": {
"PROJECT_MANAGER_API_BASE": "http://127.0.0.1:8000"
}
}
},This registers a local MCP server called "project-manager" with Claude Desktop. Here's what each part does:
command: "uv" — uses uv (the fast Python package manager) to run the server
args — tells uv to run the project-manager-mcp entry point from your local project directory at c:\Users\amrusub\programming\pet_projects\project_manager_mcp
env — sets an environment variable so the MCP server knows to talk to your locally running API at http://127.0.0.1:8000
Net effect: When Claude Desktop starts, it spins up your local project-manager-mcp Python process in the background. Claude then gets access to whatever tools that server exposes (in your case, the project-manager:pm_* tools visible in this conversation — create tasks, list projects, manage users, etc.), all backed by your local FastAPI server on port 8000.
So it's essentially a bridge: Claude ↔ MCP server process ↔ your local REST API.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/samrullo/project_manager_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server