u/ChiGamerr

I gave Claude access to my M365 account using Power Automate + a small MCP server

"Chaos engineering" as someone described it. If this helps anybody, go for it.

reddit.com
u/ChiGamerr — 2 days ago

I LOVE Wispr Flow

I'm a fast typer but it comes at a cost. Sometimes I end up in pain. Wispr Flow is one of the best products I've ever used. I love it so much. Thank you to everyone involved and I hope you guys continue to use it so this stunt company can stick around for a long time.

Please feel free to post your insights as well.

https://preview.redd.it/eo7cucei742h1.png?width=1331&format=png&auto=webp&s=abf2eef49d88befa61fc1899dfa272cb1f3e9fcd

reddit.com
u/ChiGamerr — 2 days ago

Built a tiny MCP bridge so ChatGPT/Codex can use my M365 account through Power Automate

I have been playing with custom MCPs and finally built one that feels useful in day-to-day life instead of just being a demo.

The annoying part was Microsoft 365 access. I wanted ChatGPT/Codex to do boring useful stuff - read inbox, send a follow-up, check calendar, save notes to OneDrive - but I do not have tenant admin rights or an approved Graph app registration.

The workaround was Power Automate HTTP triggers. Each operation is a tiny PA flow that runs as me, then a small FastMCP server wraps the webhook URLs as tools.

So the rough flow is:

ChatGPT/Codex -> MCP tool -> FastMCP server -> Power Automate webhook -> M365 connector

It is defintely glue code, but useful glue code. Biggest lesson so far: treat the PA webhook URLs like passwords, and check for duplicate URLs. I had two tools pointed at the same flow for a while and thought I was losing my mind.

reddit.com
u/ChiGamerr — 3 days ago

No Graph app registration? Power Automate HTTP triggers are a surprisingly useful personal automation layer

I'm not pitching a product, just sharing a pattern that helped me get around a very normal M365 automation problem.

Situation:

Constraint Reality
Tenant admin Not me
App registration Not getting approved quickly
Graph permissions Ticket-shaped black hole
Need Automate my own mailbox/calendar/files
Available Power Automate under my user license

The useful bit: Power Automate flows with HTTP triggers.

For each operation, I made a flow:

HTTP POST -> Power Automate -> M365 connector action -> Response

Because the flow runs as my user, it can do things I can already do manually:

Operation PA action
Send mail Office 365 Outlook Send Email V2
Reply to mail Outlook reply action
Read/search mail Outlook message actions / filters
Calendar read/create/update/delete Outlook calendar actions
OneDrive read/list/write OneDrive for Business actions
Excel rows Excel Online table actions
Word template fill Word Online template action
Planner task create Planner connector

I put a small wrapper service in front of the webhook URLs so I can call them consistently from scripts/tools, but that part is optional. The core trick is just using PA as the delegated-permission layer.

Caveats:

  • Treat every HTTP trigger URL like a secret. It is basically a bearer token.
  • Don't hardcode them in scripts you might commit.
  • PA run limits are real, but fine for personal/internal automation.
  • Re-saving/copying flows can change URLs.
  • Duplicate endpoints in your config will make you question your sanity.

That last one is not hypothetical. I had two operations mapped to the same webhook for a while because I copied a flow and forgot to change the URL. Very professional.

This obviously is not a replacement for a properly governed Graph integration. But for "I need to automate my own stuff and I'm not the tenant admin," it has been way more practical than I expected.

reddit.com
u/ChiGamerr — 3 days ago

Self-hosted MCP wrapper around Power Automate webhooks for personal M365 automation

I built a small self-hosted bridge for my Microsoft 365 account and figured it might be useful to people here who like practical glue code.

The short version:

HTTP client / MCP client -> my VPS -> Power Automate webhook -> M365 connector

I wanted a way to automate mail, calendar, OneDrive, Excel, Word templates, and Planner without tenant admin access or a Graph app registration. Power Automate turned out to be the easiest middle layer because the flows run as my user and use my existing permissions.

Each operation is just a PA flow:

  • HTTP trigger
  • M365 connector action
  • Response action returning JSON

Then I have a small Python FastMCP server on a VPS that exposes those as tools and forwards the call to the right PA webhook.

Current tools:

Thing What it does
Inbox Read unread mail / search by sender
Mail Send, schedule, reply by message ID
Calendar Read date range, create/update/delete events
OneDrive List folder, read file, create file, overwrite file
Excel Read/write table rows
Google Sheets Read/write via the PA connector
Word Fill a template with token values
Planner Create tasks

I built it for Claude/Codex via MCP, but the MCP part is optional. You could just call the same PA webhooks from curl or a Python script.

The security model is simple but important:

  • webhook URLs are bearer tokens, so keep them secret
  • config file is not committed anywhere
  • the MCP server only exposes the flows I explicitly map
  • I’m not giving a model raw Graph access
  • Power Automate run history gives me an audit trail

It’s not elegant, exactly, but it works. And honestly “works” beat elegant pretty hard here.

Main mistake I made: duplicated a flow, forgot to update the URL in my config, and had two tools silently pointing at the same PA endpoint. If you build something like this, add a startup check that warns on duplicate webhook URLs. Ask me how I know.

reddit.com
u/ChiGamerr — 3 days ago
▲ 88 r/Anthropic+1 crossposts

I gave Claude access to my M365 account using Power Automate + a small MCP server

I’ve been messing with MCP servers lately and finally got one working that feels genuinely useful instead of “cool demo, never use again.”

The problem: I wanted Claude to be able to do basic Microsoft 365 stuff for me:

  • read my inbox
  • send a draft/follow-up
  • check my calendar
  • save notes into OneDrive
  • make Planner tasks
  • write rows into Excel
  • fill a Word template

But I don’t have tenant admin access, and I wasn’t going to get Graph permissions approved just for personal automation.

The workaround was Power Automate.

Every operation is a PA flow with an HTTP trigger. PA gives you a signed webhook URL. The flow runs as my account, using permissions I already have. Then I put a small FastMCP server in front of those webhook URLs and connected that to Claude.

So now in a Claude chat I can say things like:

  • “Email me a summary of this.”
  • “What’s on my calendar tomorrow?”
  • “Save this note to OneDrive under /Projects.”
  • “Create a Planner task for this follow-up.”
  • “Append this row to the tracking spreadsheet.”

Under the hood Claude is just calling MCP tools like m365_send_email, m365_calendar_read, onedrive_create_file, etc. The MCP server posts JSON to Power Automate, and PA does the actual M365 action.

The architecture is not fancy, defintely not:

Claude -> MCP tool -> FastMCP server -> PA webhook -> M365 connector

I’m running the MCP server on a cheap VPS. It’s about 200 lines of Python plus a JSON config file of flow names and URLs.

This was also a nice reminder that “agent tool access” doesn’t always need a perfect official API integration. Sometimes the janky enterprise tool you already have is enough.

The funniest bug: I had two tools pointing at the same Power Automate webhook because I duplicated a flow and forgot to update the URL in my config. The result was Claude confidently calling the “right” tool and Power Automate doing the wrong damn thing. Very educational, not very dignified.

Edit. A [you will probably need Power Automate Pro, which i needed for a couple other things)

Here's an example of it. I built 22 Power Automate flows covering all the different tools that I would want called and then I added them to the mcp.

  1. In Power Automate, make one flow per action. Example: send email, read inbox, create calendar event, write OneDrive file, etc.

  2. Start each flow with “When an HTTP request is received.”

  3. Define the JSON body you want that flow to accept. For send email, maybe { "to": "...", "subject": "...", "body": "..." }.

  4. Add the normal M365 connector action. Example: Outlook Send Email V2, OneDrive Create File, Excel Add Row, Planner Create Task.

  5. End the flow with a Response action that returns JSON.

  6. Copy the HTTP trigger URL into a private config file. Do not commit it. Do not paste it anywhere public. Treat it like a password.

  7. Put a small FastMCP server in front of those URLs. Each MCP tool just validates the inputs, finds the right PA webhook URL, POSTs JSON to it, and returns the PA response.

The wrapper is not fancy. It’s basically:

AI tool call -> FastMCP function -> httpx.post(PA webhook URL, json=args) -> return response

The main things I’d recommend are:

  • keep webhook URLs private
  • add a duplicate URL check at startup
  • log tool name + status, but not secrets
  • start with read-only tools before giving it send/write powers
  • make every flow narrow instead of one giant “do anything” endpoint.

Will post more info in the am if needed. Thanks for reading!

[If you are not familiar or not comfortable with Power Automate, what I would recommend (and I mean this sincerely) is to use either co-work or use Claude Code Terminal with the Chrome extension and plug in the prompt for it to do it. It's a little slow and it'll take a bit but it will make them. Just don't sit there and watch it if you want it to be quick.)

reddit.com
u/ChiGamerr — 2 days ago

I accidentally built my own M365 “API” with Power Automate HTTP triggers

I’ve been trying to let Claude/Codex do useful stuff against my M365 account for a while, mostly boring-but-useful things like read mail, send a follow-up, put something on my calendar, save notes to OneDrive, etc.

The normal path was a wall for me:

  • no tenant admin
  • no service principal
  • no Graph app registration
  • no admin consent
  • no appetite from IT for “can you approve this random automation experiment?”

Then I realized I was overthinking it. Power Automate already runs as me.

So the pattern became:

  1. Make one PA flow per operation.
  2. Put an HTTP trigger on the front.
  3. Let the flow do the boring M365 connector action.
  4. Return JSON.
  5. Wrap the flow URLs in a tiny FastMCP server so Claude/Codex can call them like normal tools.

That’s it. It’s kind of dumb, but in the best way.

What I have working now:

  • read inbox / unread mail
  • send email
  • schedule email
  • reply by message ID
  • search inbox by sender
  • read calendar by date range
  • create / update / delete calendar events
  • OneDrive list/read/create/overwrite file
  • Excel table read/write
  • Google Sheets read/write through the PA connector
  • fill a Word template
  • create Planner tasks

The nice part is that none of this needs elevated tenant access. Each flow uses my existing delegated permissions. If I can send an email manually, the flow can send it. If I can write to a OneDrive folder, the flow can write there.

The MCP piece is just a wrapper. The actual useful pattern is:

AI/tool/script -> HTTP POST -> Power Automate -> M365 action -> JSON response

The server is roughly 200 lines of Python: FastMCP, httpx, and a config file mapping tool names to PA webhook URLs. The PA flows are usually just HTTP trigger -> action -> response.

One very real gotcha: I copy-pasted too fast and had flow_2 and flow_7 pointing to the same webhook URL for a while. Spent a very confusing hour wondering why the “calendar” tool was behaving like an email tool. So yeah, audit your config file before trusting it.

If people are interested I can clean up the server and post the skeleton. Curious if anyone else is using PA this way, because it feels like a weirdly practical loophole.

reddit.com
u/ChiGamerr — 3 days ago

Claude Chrome extension using extra usage even though I have usage left?

Anyone else seeing Claude / Claude Code's Chrome extension bill as extra usage even when regular usage still shows available? Trying to figure out if it's a hidden quota, session/cache bug, spend-limit setting, or something else. Any fixes?

reddit.com
u/ChiGamerr — 8 days ago

Cant Get Search To Work Anymore (LOL)

I regret telling my boss upgrading the 10 of us on enterprise to enterprise pro was a "good" idea. Ever since I did that the product has gotten exponentially worse.

At this point I use other AIs to research ways to loop perplexity into the workflow because its just so worthless on a day to day.

I honestly hope they crash and burn as a company because they've been ripping us off for months.

And I refuse to turn this into a computer action. REFUSE. Research should not be an "additional" charge

u/ChiGamerr — 10 days ago
▲ 9 r/codex

Codex vs Claude Code: my current take after watching both mature

I don't think the Codex vs Claude Code debate is as simple as "which model is smarter?" anymore. A few months ago that might have been the right question. Now it feels more like a question of workflow, trust, permissions, context, and how much you want the agent to actually operate inside your environment.

My current take: Claude Code still feels like the cleaner "developer brain" in a lot of situations, but Codex is starting to feel like the broader work agent. That distinction matters.

Claude Code is very good when the job is mostly inside the repo. It has a strong feel for code structure, refactors, debugging, and walking through a problem without immediately overcomplicating it. When it is on, it feels like pairing with a sharp engineer who can hold the shape of the project in its head. I still think Claude often has better taste in code. It tends to be a little more restrained, a little more readable, and less eager to bulldoze through the repo.

But Claude Code also has some real friction. The limits are annoying. The performance can feel inconsistent. Sometimes it feels like you are paying for a premium tool and then getting nudged into babysitting it because the system is rationing effort behind the scenes. That is hard to trust. The best version of Claude Code is excellent, but the gap between its best days and its weird days is noticeable.

Codex, on the other hand, has gotten much more interesting because it seems to be moving beyond "coding assistant" and toward "agent that can work where the work actually happens." The Chrome integration is a big deal for that reason. A lot of real work is not just editing files. It is checking docs, using dashboards, testing flows, moving between tabs, comparing live behavior against the code, grabbing context from tools, and then coming back to the repo with a plan.

That is where Codex feels like it may have the bigger ceiling.

I don't think Codex always writes prettier code than Claude. Sometimes it is more verbose than I want. Sometimes the explanations feel a little too polished. Sometimes it wants to turn a small change into a whole production. But it has become much better at staying on task, using tools, checking its own work, and handling longer multi-step jobs without losing the plot.

The parallelism is also underrated. Being able to split work across tabs, branches, or tasks changes the feel of the workflow. Claude Code often feels like one very capable pair programmer. Codex is starting to feel more like a small bench of agents you can point at different parts of the job. That is not always better, but for messy real-world work it can be powerful.

Where I still prefer Claude:

- Writing clean, idiomatic code from a clear prompt

- Refactoring without making the diff feel bloated

- Reasoning through architecture tradeoffs

- Explaining why a certain approach is risky

- Working inside a focused repo without needing browser/app context

Where I'm starting to prefer Codex:

- Tasks that require tool use across the browser and local environment

- Longer implementation loops with testing and iteration

- Comparing live app behavior against code

- Running several related investigations at once

- Workflows that involve docs, dashboards, web apps, and code together

- More general "go make progress on this" style tasks

The uncomfortable truth is that both tools still need supervision. Neither one is a senior engineer you can fully walk away from. They are closer to very fast junior-to-mid engineers with occasional senior-level flashes and occasional "why did you touch that file?" moments. The value comes from knowing when to let them run and when to interrupt.

My practical ranking right now would be:

For pure coding taste: Claude Code still has an edge.

For agentic workflow: Codex is catching up fast and may already be ahead depending on the task.

For trust: mixed. Claude feels more elegant when it works, Codex feels more operationally useful when the task spans more than the repo.

For the future: I'd bet on the tool that can move fluidly between code, browser, apps, docs, tests, and deployment. That currently looks more like the direction Codex is heading.

So I don't see this as "Claude is dead" or "Codex won." That kind of framing gets old fast. My read is that Claude Code is still one of the best coding tools, but Codex is becoming something slightly different: a general work agent with coding as one of its strongest modes.

If OpenAI keeps improving the browser/app side without making Codex too bloated, it could become the default agent environment. If Anthropic fixes the limits and consistency issues, Claude Code remains extremely hard to beat for serious dev work.

For now, I'd rather have both. Claude for taste and tight code. Codex for reach, tool use, and messy end-to-end tasks.

reddit.com
u/ChiGamerr — 12 days ago
▲ 4 r/Notion

Anyone Else using notion? Started it Saturday and ended up getting up to 95% of weekly limits while on 20x...

Was it notion that did it? Glad we reset today. Cool to use 295,000,000 tokens but ya...why/how is important to me.

reddit.com
u/ChiGamerr — 18 days ago

Title pretty much says it all. What is the best way that you get your files to your assistant? I don't know what the best way actually is. I would assume it's Google Drive. Every time I ask it for a link, it sends me a broken link so I stopped trying that. There's no way to just drag and drop it into the chat unfortunately unless it's a picture.

reddit.com
u/ChiGamerr — 19 days ago