← Registry

Data Collection

noticed.so

An MCP server for searching, resolving, and retrieving detailed professional profiles and relationship context about people in a developer network.

2 endpoints64 known toolsFirst detected May 29, 2026Last detected October 6, 2026

ENDPOINT 1

https://mcp.noticed.so/api/mcp

No auth detected

MCP server metadata

Name
so.noticed/mcp
Version
2.0.0
Capabilities
extensions.io.modelcontextprotocol/skills.directoryReadresources.listChangedtools.listChanged
Server instructions

noticed gives you a professional social memory, scoped to your bearer token. it remembers everyone in your network — who they are, and your history with each one. (call `get_instructions` anytime to re-read this) what you can do: search your network and open anyone's full record, add new people and keep their notes and tags current, log interactions as they happen, and save and recall long-term memory. tips: • for questions about what noticed is, product terminology, company facts, or how the noticed agent should speak, read the matching canonical noticed resource exposed by `resources/list` and `resources/read`; do not infer those facts from tool names. • "who is X?" (a name from a voice note, capture, or mention) → `resolve_person` — deterministic, handles misspellings, says when it's ambiguous. start `search_people` for everything else: free text for names/companies/keywords; for roles/functions (founder, engineer, investor, …) use the `role` filter — combine with `location` for "X in <place>". free text misses title variants ('Founding Partner') and over-matches bios and notes. • a `resolve_person` 'none'/'ambiguous' (or a wrong match) is NOT proof the person is absent — names get misheard. Before you conclude "they're not in your network" or `add_to_network` a new contact, run a plain `search_people` on the name (and any company). `add_to_network` also guards: if a new `free_form` contact strongly matches someone you already have, it returns `potential_duplicates` + a `confirmation_token` instead of creating — track the existing person, or pass the token back only if it's genuinely someone new. • free-text terms are OR-matched (broadens); to narrow, put `AND` between terms to require all (`health AND medtech`) or prefix a term with `+` to require just it (`+rust berlin`). • counting: `network_summary` for overall size and per-source breakdowns; for "how many <role/type>…" use `search_people` with structured filters (role/company/location/tags) and report its `total` — do not manually reclassify or subtract returned people; if free text was used anyway, present `strong_total` (rows matching ALL terms), never the broad `total`. • "who did I add recently / since <date>?" → `added_after`/`added_before` (when they entered the network). adding ≠ interacting: `recent`/`stale` are coarse buckets. For "who did I interact with on/since <date>" or "everyone with a touchpoint this week" → `last_interaction_after`/`last_interaction_before` (exact interaction-date bounds; people with no interaction are excluded). • on a TEAM? `account_status` lists your teams (with their ids). Pass `scope:'team'` (and a team id when you're in more than one) to `search_people`, `get_person`, `network_summary`, and `list_actions` to reach the POOLED team network — people ANY teammate knows. Team results carry `team_members` (who on the team knows them + their strength); `list_actions scope:'team'` attributes consent-gated open actions to their owner; a full-consent teammate's notes/actions surface via `get_person scope:'team'`. Notes and other writes stay private to you; `create_action` is the deliberate exception and can assign Team work against a Team-visible relationship. • `enrich_person` defaults to a conservative, bounded LinkedIn lookup for an own or fully shared Team person; a confirmed profile can attach automatically, while ambiguous or blocked candidates do not. `mode:'research'` opens an agent-led session instead: call `get_person` for context, make up to six focused `search_enrichment_web` calls with the returned attempt_id, then `submit_enrichment_research` with one retrieved LinkedIn URL or no URL to abstain. The server checks stored retrieval and the same deterministic attachment safeguards; weaker evidence is only a proposal, not an accepted identity. For a new contact pass new_person; name-only research also needs a stable client_request_id to prevent duplicate people. Duplicate candidates require the returned confirmation_token. For a 25- or 35-person opportunity batch, pass the List id as batch_id and call `enrichment_batch_status` before resuming. Do not repeat completed paid work. • a structured-filter zero usually means thin data, not "you know no one" — fall back to free text. • dossiers from `get_person` are present-tense snapshots; an empty field means not recorded, not "no". for career history / past roles / education, call `get_person` with `include:'extras'`. • check `account_status` if results look empty — sources may not be imported yet. • `log_interaction` appends every call; everything else is safe to repeat. • actions are follow-ups tied to a person. when using `create_action`, it is recommended to include both `assigned_to` and `remind_at` whenever ownership and timing are known; in Team context pass `team_id` so the action can be created for any teammate. neither recommendation is required. for ONE person's actions read get_person → relationship.actions; for EVERYONE's open actions in one shot ("what are all my to-dos?") use `list_actions` instead of paging get_person per person. pass `goal_id` to keep only actions for confirmed people in a Goal (a Team sweep needs that Team's Goal), or undated:true for just the open-ended ones. close one with `complete_action` when the follow-up actually happened; `delete_action` PERMANENTLY removes one that shouldn't exist (a mistake or duplicate) — it does not fake a completion, so never use it for something you actually did. • scheduled tasks run the same prompt repeatedly, opening a fresh noticed chat for each occurrence. use `create_scheduled_task`, then list, pause/resume, update, or delete it with the matching direct tools. in-chat reminders belong to the originating noticed chat and are created by the noticed agent there, not by this headless connector. • someone offers an intro ("I can connect you to…")? `track_intro` it — connector, who, and what's still missing — so the offer doesn't evaporate. `list_intros` answers "what intros am I waiting on?"; when one lands, add the person and mark the intro done (resolved_person_id). • lists are named, described sets of people ("my seed investors", "design candidates"). `list_lists` to see them (and get a list_id), `get_list` to open one — members plus the people noticed is SUGGESTING to add or remove, with reasoning. `create_list` needs a SPECIFIC description: it's the goal noticed matches people against, so vague in, vague out. Update or delete lists, add/remove members, and accept/reject pending suggestions with the corresponding list tools. • Views are saved, live searches over a personal or Team network. `list_views` discovers them; `get_view` executes one against current data. Create, update, or delete a View by its id or unambiguous name. Lists and Views can expose general access (`set_general_access`) or a stable public page (`set_published`); these tools do not manage invitations, collaborator grants, or comments. • keep replies at the user's altitude: their people, numbers, and history — never tool names, parameters, scopes, data plumbing, or database language such as "canonical record", "identity match flag", "thin/fresh record", or "override token". Say "the combined person", "a possible duplicate", or simply that noticed can or cannot confirm the change in chat. • drafting anything outbound on the user's behalf (a follow-up, an intro request, a post)? call `get_voice_rules` first and apply it strictly — it is the single source for the user's writing voice. • new user, or "set me up" / "onboard me"? run a short interview (the `onboard` skill if installed) and persist everything with ONE `save_onboarding` call — identity, goals, value ranking, current tools. calling it again appends a new dated identity note while deduplicating long-term memories.

Known tools 64

get_instructions

Returns this connector's instructions — what noticed is and how to use it.

Inferred read-only
search_people

Search people by free text — name, company, keywords.

Inferred read-only
resolve_person

Deterministically resolve a (possibly misheard) name — optionally with a company hint — to ONE person in the network.

Inferred read-only
get_person

One person's full record: profile (including github_login and github_url when known; team records use githubHandle and githubUrl), current role, and your relationship context (notes, tags, last interaction, added_at = when they entered your network) by default; pass include:'extras' or 'all' for work history, education, and repos.

Inferred read-only
my_profile

Your own developer profile as noticed sees it — GitHub + LinkedIn + derived tags.

Inferred read-only
network_summary

Lightweight overview of your network — total people, breakdowns by source/company, recent vs stale — without paging through search.

Inferred read-only
add_to_network

Add someone to your network.

Inferred read-only
update_person

Update your notes, tags, custom_name, relationship_type, or the person's companies / role / emails / phones.

Potential side effects
remove_from_network

Remove a person from your active network.

Potential side effects
log_interaction

Record a touchpoint — say WHAT it was with `type`: 'in_person', 'call', or 'message'.

Potential side effects
create_action

Create a follow-up tied to a person — a to-do for the relationship (e.g.

Potential side effects
complete_action

Mark a follow-up / action done.

Inferred read-only
update_action

Edit an existing action — change its text, its remind-me date, or mark it done/undone.

Potential side effects
list_actions

Every OPEN follow-up / action across your WHOLE network in one call, each attached to the person it belongs to — ordered like /home (soonest remind_at first, undated last).

Inferred read-only
delete_action

PERMANENTLY delete an action that should NOT exist — created by mistake, a duplicate, or no longer relevant.

Potential side effects
track_intro

Track a promised introduction — someone offered to connect the user with a person they haven't met yet.

Inferred read-only
list_intros

The user's pending introductions — who offered, who they'll be connected to, and where each stands (waiting/ready/requested/done/dropped).

Inferred read-only
suggest_identity_match

Merge two records in your network that are the SAME person — e.g.

Inferred read-only
accept_identity_match

Accept a PENDING identity match — merge the two records into one.

Inferred read-only
dismiss_identity_match

Dismiss a PENDING identity match so it stops surfacing — a SOFT reject.

Inferred read-only
mark_different_people

Mark two records as DIFFERENT people — a durable disconnect.

Inferred read-only
list_profile_gaps

List the contacts in your network that are MISSING a profile — email-only people with no LinkedIn or GitHub attached (and no pending merge).

Potential side effects
add_profile_to_person

Give noticed a LinkedIn or GitHub URL for a contact missing a profile (an email-only person from list_profile_gaps).

Potential side effects
enrich_person

Enrich a person in your noticed network with missing or updated professional details.

Inferred read-only
enrichment_batch_status

Read resumable, per-person enrichment outcomes for a 1–35-person opportunity batch before repeating any paid work.

Inferred read-only
search_enrichment_web

Run one bounded public search inside an active enrich_person research session.

Inferred read-only
submit_enrichment_research

Submit one retrieved LinkedIn candidate, or abstain, with up to six cited role/company/location/website/bio observations.

Inferred read-only
move_profile_to_person

Move one identifier (an email, LinkedIn, GitHub, X, or phone) off the record it's wrongly attached to and onto the person it really belongs to.

Potential side effects
list_identity_matches

List the cross-source identity matches in your network, newest first — when each happened, the two identities that were linked (with their sources), the confidence, the reason, and the status (merged, pending review, or marked as different people).

Inferred read-only
create_list

Create a list — a described set of people (e.g.

Potential side effects
list_lists

The user's lists (personal + team), each with its description, how many people are on it, and how many suggestions are waiting for a decision.

Inferred read-only
configure_list_review

Configure a list's review question/context before human answers begin.

Inferred read-only
get_list_reviews

Read only the authenticated user's latest Yes/No/Not sure answers and optional reasons, question/context, and accurate counts for current members.

Inferred read-only
get_list

Open one list: relevance-ranked members, pending suggestions and rejected_person_ids.

Inferred read-only
add_to_list

Put a person on a list.

Inferred read-only
remove_from_list

Take a person off a list.

Inferred read-only
update_list

Rename a list, change the specific goal noticed matches suggestions against, or enable/disable AI suggestions.

Inferred read-only
delete_list

Permanently delete a list and its membership/suggestion ledger.

Potential side effects
accept_list_suggestion

Accept one pending add/remove suggestion for a list.

Potential side effects
reject_list_suggestion

Reject one pending add/remove suggestion for a list.

Potential side effects
create_view

Create a saved live View over a personal or Team network.

Potential side effects
list_views

List visible personal and Team Views, including each saved definition and effective access role.

Inferred read-only
get_view

Open a saved View and execute it against the live personal or Team network.

Potential side effects
update_view

Rename a View or replace its saved definition.

Inferred read-only
delete_view

Permanently delete a saved View.

Potential side effects
get_sharing

Inspect general-access and publication state for a List or View.

Inferred read-only
set_general_access

After user confirmation, set a List or View to restricted, Team-visible, or anyone-with-link access.

Inferred read-only
set_published

Publish or unpublish a List or View at its stable public link.

Potential side effects
memory_search

Search your long-term memory (facts, decisions, preferences, commitments).

Inferred read-only
memory_save

Save a durable fact/preference/decision/commitment to long-term memory.

Inferred read-only
add_note

Write a NOTE on a person's record — content the USER gave you.

Potential side effects
add_memory

Save a MEMORY about a SPECIFIC person — something YOU worked out on your own, unprompted, that the user never told you (a pattern you spotted, a fact you inferred from their calendar or email).

Potential side effects
memory_get

Fetch a specific memory entry by id (from memory_search).

Inferred read-only
get_voice_rules

The canonical writing-voice rules for any text drafted on the user's behalf (outbound messages, intros, follow-ups, posts).

Inferred read-only
update_team_description

Update or clear a noticed Team description.

Potential side effects
account_status

Check connected accounts across the noticed browser extension and native iOS embedded-browser sessions.

Inferred read-only
get_connected_source_status

Inspect noticed integration sources, their safe account labels, GitHub handle and profile URL, connection state, effective sync cadence, and latest attempt or completion.

Inferred read-only
get_connection_link

Get the exact noticed connection or management experience for an integration or MCP server.

Inferred read-only
sync_connected_source

After explicit user confirmation, request a fresh import for one connected noticed source.

Inferred read-only
create_scheduled_task

Create recurring noticed agent work.

Potential side effects
list_scheduled_tasks

List the user's noticed agent tasks, including timing, enabled state, next and last run, and run count.

Inferred read-only
update_scheduled_task

Update, pause, or resume one noticed agent task.

Potential side effects
delete_scheduled_task

Permanently delete one noticed agent task and its run history.

Potential side effects
save_onboarding

Save the user's onboarding interview answers into noticed in ONE call (use after the `onboard` skill's questionnaire, or whenever the user shares who they are and what they want).

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.so-noticed-mcp]
url = "https://mcp.noticed.so/api/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "so-noticed-mcp": {
      "type": "http",
      "url": "https://mcp.noticed.so/api/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: so-noticed-mcp
Remote MCP URL: https://mcp.noticed.so/api/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "so-noticed-mcp": {
      "url": "https://mcp.noticed.so/api/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "so-noticed-mcp": {
      "type": "http",
      "url": "https://mcp.noticed.so/api/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "so-noticed-mcp",
  "transport": "streamable-http",
  "url": "https://mcp.noticed.so/api/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

ENDPOINT 2

https://mcp.noticed.so/api/sandbox/mcp

Auth required

Known tools 0

No tool metadata was available in the registry cache.

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.noticed-so]
url = "https://mcp.noticed.so/api/sandbox/mcp"
enabled = true
bearer_token_env_var = "MCP_BEARER_TOKEN"

Authentication is required. Replace the placeholder locally and never commit a secret.

Claude Code

.mcp.json

{
  "mcpServers": {
    "noticed-so": {
      "type": "http",
      "url": "https://mcp.noticed.so/api/sandbox/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_BEARER_TOKEN"
      }
    }
  }
}

Authentication is required. Replace the placeholder locally and never commit a secret.

Claude Desktop

Settings → Connectors → Add custom connector

Name: noticed-so
Remote MCP URL: https://mcp.noticed.so/api/sandbox/mcp

Add the URL as a custom connector, then complete its supported authorization flow. Claude Desktop remote connectors are configured in the UI.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "noticed-so": {
      "url": "https://mcp.noticed.so/api/sandbox/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_BEARER_TOKEN"
      }
    }
  }
}

Authentication is required. Replace the placeholder locally and never commit a secret.

Visual Studio Code

.vscode/mcp.json

{
  "servers": {
    "noticed-so": {
      "type": "http",
      "url": "https://mcp.noticed.so/api/sandbox/mcp",
      "headers": {
        "Authorization": "Bearer ${input:mcp-token}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "mcp-token",
      "description": "noticed-so bearer token",
      "password": true
    }
  ]
}

Authentication is required. Replace the placeholder locally and never commit a secret.

Generic MCP

Client-specific MCP configuration

{
  "name": "noticed-so",
  "transport": "streamable-http",
  "url": "https://mcp.noticed.so/api/sandbox/mcp",
  "headers": {
    "Authorization": "Bearer YOUR_BEARER_TOKEN"
  }
}

Authentication is required. Replace the placeholder locally and never commit a secret.

MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Loading Trust v2 evidence…

Checking the associated registrable domain. The BuiltWith key remains server-side.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.