Songlinks

io.songlinksPublished by songlinks.ioOfficial publisherv0.10.0Updated Oct 25, 2026

Find the songwriter behind a name or IPI name number, under every spelling and number.

VerifiedStreamable HTTPWeb executableKnowledge & MemoryMedia & Design

Overview

AI-generated overview

Songlinks is a remote MCP server that lets an assistant identify songwriters and composers by name or IPI name number and look up their registrations and works.

What you can do
Find songwriters by name, returning the possible persons, their person IDs, registered names and IPI numbers, and work counts. Retrieve one writer's details from a Songlinks person ID, including registrations grouped into the person and records flagged as possibly the same person. Look up the holder of a single IPI name number. Check up to 50 IPI numbers at once, for example the writers on a song or catalogue, and see who each one is.
When to use it
Useful when you need to resolve which real person a songwriter or composer name refers to, confirm who holds an IPI name number, or check a batch of writer numbers from a song, catalogue or registration file.
Requirements
A remote MCP endpoint at songlinks.io using streamable HTTP; no package, environment variables or headers are declared.
Before you install
The service returns third-party songwriter identity and registration data; treat results as reference information and verify ambiguous matches, since a name may map to several persons or records flagged as possibly the same person.

Installation

In SourceWeft

  1. Open Songlinks in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.songlinks%2Fsonglinks/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "songlinks": {
      "type": "http",
      "url": "https://songlinks.io/mcp"
    }
  }
}

Tools

4

find_songwriter

Find a songwriter by name

Use when the user names a songwriter or composer and wants to know who they are, which person a name belongs to, or every registration of that writer. Returns the persons the name could be: each with a person ID, the names and IPI name numbers they are registered under, how many works, and a person_url to cite. Pairs listed under possibly_the_same_person were held apart and are not merged; `why` says why. Candidates are this lookup's own grouping, made afresh for the name, and can differ from the stored person that get_songwriter and the person page describe: a candidate can include records with no IPI name number that the stored person lists apart, and two candidates can carry the same person_id when this lookup keeps apart records the stored person joined. Each record's person_id is the stored person it belongs to, or null; person_records is how many records that person holds, and records_not_in_this_answer how many of them this candidate does not, because they sit in another candidate or outside this lookup. For a person's registrations as they stand, call get_songwriter. A candidate's works counts every record in it, records held apart from the person included; the person's own count is get_songwriter's works.total. Registrations are under legal names. When the user gives a professional or stage name and you know the writer's legal name, search the legal name first: a stage name usually returns other people whose names contain those words, not the writer. If the writer you expect is not among the candidates, or song_match.match is none, try their legal name. truncated means more registrations matched than one answer groups: a fuller name narrows it. Give a song title they wrote, when known, to say which of several namesakes wrote it. A one-word name is not searched: ask for the full name.

Parametersnamerequiredsong

get_songwriter

Get a songwriter by person ID

Use when you have a Songlinks person ID (SLP-XXXX-XXXX-X), from find_songwriter or a person page, and the user wants that writer's details: the registrations grouped into the person, records listed apart as possibly the same person, and their first works. Each record says how it was joined: `main` marks the record the ID was issued on, and `rule` is the evidence: same_ipi (another of the person's records carries the same IPI name number), ipi (it carries the person's own number), model (judged the same writer from works, co-writers and publishers in common; `score` is how sure), corroborated (confirmed by an independent source) or verdict (decided by a person). At most 25 works are listed; works.total is the full count and the person page lists the rest. works.ordered_by is `recordings` when the list starts with the most-recorded works, and `coded` when it is in catalogue-code order: then it is a sample, not the writer's best-known songs.

Parametersperson_idrequired

songwriter_by_ipi

Find a songwriter by IPI name number

Use when the user has an IPI name number (up to 11 digits, often written without its leading zeros) and wants to know which songwriter holds it. Returns the person or persons holding the number, each with a person ID and person_url; use get_songwriter for one person's details. `none` means no person here holds it: it may be a publisher's number, or one whose registrations have not been grouped.

Parametersipi_name_numberrequired

check_writers

Check a list of songwriters by IPI name number

Use when the user has several IPI name numbers, such as the writers on a song, a catalogue or a registration file, and wants to know who each one is, or whether some of a writer's works sit under another spelling or number. Up to 50 numbers per call. For each: the person holding it, their registered names, works in total and on their main number, works_elsewhere (registered only under another spelling or number), and a person_url.

Parametersipi_name_numbersrequired

Version history

1
  1. v0.10.0LatestOct 15, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.